Автор: Сгибнев Михаил
В данной статье мы рассмотрим пример создания GRE туннеля в случае, когда один из маршрутизаторов
получает внешний IP-адрес по DHCP. В этом случае поднять обычный IPsec VPN не представляется возможным,
так как для этого необходимо точно знать адреса обоих концов туннеля.
В этом случае нам на помощь приходит протокол
NHRP.
NHRP - клиент/серверный протокол, где
hub выступает в роли сервера, а
spokes - в роли
клиента.
Hub обслуживает базу данных NHRP, в которой содержатся публичные адреса
каждого
spoke. Каждый
spoke регистрирует свой реальный адрес после начальной загрузки,
после чего этот адрес используется для создания туннеля.
В качестве примера из жизни мы рассмотрим файлы конфигурации Cisco 871, подключенной к провайдеру "Стрим", при этом ADSL-модем
выставлен в режим моста.
Хотел бы отметить одну странность - хотя Cisco 871 поддерживает OSPF, настрока его в данной конфигурации вызывала перерезагрузку
маршрутизатора и создание файла crashinfo.
!
version 12.4
no service pad
service timestamps debug uptime
service timestamps log uptime
service password-encryption
!
hostname stream-gw
!
boot-start-marker
boot-end-marker
!
enable secret cisco
!
no aaa new-model
!
resource policy
!
clock timezone MSK 3
clock summer-time MSD recurring last Sun Mar 2:00 last Sun Oct 3:00
ip cef
!
!
no ip dhcp use vrf connected
!
!
no ip domain lookup
ip domain name dreamcatcher.ru
ip host vpngate.dreamcatcher.ru 213.85.152.244
vpdn enable
!
!
!
!
username cisco secret cisco
!
!
!
crypto isakmp policy 50
encr 3des
hash md5
authentication pre-share
group 2
crypto isakmp key my_secret_key address 213.85.152.244
crypto isakmp identity hostname
crypto isakmp invalid-spi-recovery
crypto isakmp keepalive 120 20
crypto isakmp nat keepalive 20
!
!
crypto ipsec transform-set dmvpnset esp-3des esp-sha-hmac
!
crypto ipsec profile dmvpnprof
set transform-set dmvpnset
!
!
!
!
!
interface Tunnel0
description --- To VpnGate ---
bandwidth 246
ip address 192.168.246.210 255.255.255.252
no ip redirects
ip mtu 1380
ip nhrp authentication dmvpn
ip nhrp map multicast dynamic
ip nhrp map 192.168.246.209 213.85.152.244
ip nhrp map multicast 213.85.152.244
ip nhrp network-id 99
ip nhrp holdtime 300
ip nhrp nhs 192.168.246.209
delay 1000
tunnel source Dialer1
tunnel mode gre multipoint
tunnel key 100000
tunnel protection ipsec profile dmvpnprof
!
interface FastEthernet0
!
interface FastEthernet1
!
interface FastEthernet2
!
interface FastEthernet3
!
interface FastEthernet4
description --- To INET ---
ip address dhcp
duplex auto
speed auto
pppoe enable
pppoe-client dial-pool-number 1
!
interface Vlan1
description --- To LAN ---
ip address 10.2.255.1 255.255.255.0
ip nat inside
ip virtual-reassembly
!
interface Dialer1
mtu 1492
ip address negotiated
ip nat outside
ip virtual-reassembly
encapsulation ppp
ip tcp adjust-mss 1452
dialer pool 1
dialer-group 1
no cdp enable
ppp chap hostname user@mtu
ppp chap password password
!
ip route 0.0.0.0 0.0.0.0 Dialer1
ip route 10.1.2.88 255.255.255.255 Tunnel0 permanent
!
!
no ip http server
no ip http secure-server
ip nat inside source list 101 interface Dialer1 overload
!
access-list 101 permit ip 10.2.255.0 0.0.0.255 any
dialer-list 1 protocol ip list 101
!
!
!
!
control-plane
!
!
line con 0
no modem enable
line aux 0
line vty 0 4
password cisco
login local
!
scheduler max-task-time 5000
!
webvpn context Default_context
ssl authenticate verify all
!
no inservice
!
end
Конфигурация
hub выглядит следующим образом:
!
crypto isakmp policy 50
encr 3des
hash md5
authentication pre-share
group 2
crypto isakmp key my_secret_key address 0.0.0.0 0.0.0.0
crypto isakmp identity hostname
crypto isakmp invalid-spi-recovery
crypto isakmp keepalive 120 20
crypto isakmp nat keepalive 20
!
!
crypto ipsec profile dmvpnprof
set transform-set dmvpnset
!
!
!
interface Tunnel55
description --- To Cisco-strim ---
bandwidth 256
ip address 192.168.246.209 255.255.255.252
no ip redirects
ip mtu 1380
ip nhrp authentication dmvpn
ip nhrp map multicast dynamic
ip nhrp network-id 99
ip nhrp holdtime 300
delay 1000
tunnel source FastEthernet0
tunnel mode gre multipoint
tunnel key 100000
tunnel protection ipsec profile dmvpnprof
!
!
interface FastEthernet0
description --- OUTER_INET ---
ip address 213.85.152.244 255.255.255.248
no ip redirects
no ip proxy-arp
duplex auto
speed auto
!
Список литературы, для желающих узнать побольше:
Dynamic Multipoint IPsec VPNs (Using Multipoint GRE/NHRP to Scale IPsec VPNs)
Configuring NHRP