Cisco. DMVPN + BGP: различия между версиями
Cless (обсуждение | вклад) |
Cless (обсуждение | вклад) |
||
| Строка 158: | Строка 158: | ||
<code>network 192.168.250.0 mask 255.255.255.0</code> | <code>network 192.168.250.0 mask 255.255.255.0</code> | ||
=== Настройка Филиала === | === Настройка Филиала A === | ||
Настроим loopback интерфейс | Настроим loopback интерфейс | ||
Текущая версия на 11:56, 17 апреля 2022
Входные данные
Предположим, что имеется Центральный офис, Филиал А.
Настроим динамическую маршрутизацию BGP через тоннели DMVPN.
ХАБ DMVPN будем поднимать в ЦО.
ЦО
Внутренняя сеть: 192.168.250.0/24
Адрес внутреннего интерфейса (направленного в локальную сеть): 192.168.250.8
Внешний интерфейс: 172.16.250.1/24 - FastEthernet 6/0
Шлюз провайдера: 172.16.250.8
IP-адрес интерфейса VPN-туннеля: 10.10.254.1/24
Филиал А
Внутренняя сеть: 192.168.17.0/24
Адрес внутреннего интерфейса (направленного в локальную сеть): 192.168.17.8
Внешний интерфейс: 172.16.17.1/24 - FastEthernet 6/0
Шлюз провайдера: 172.16.17.8
IP-адрес интерфейса VPN-туннеля: 10.10.254.17/24
Настройка тоннелей
Настройка ЦО
interface Tunnel0
Внутренний IP-адрес VPN-сервера из нужного диапазона нашей будущей VPN
ip address 10.10.254.1 255.255.255.0
Динамическое изучение данных NHRP от клиентов. Поскольку клиентов у нас множество и они могут быть с динамическими адресами, на хабе нельзя задать явное соответствие внутренних и внешних адресов.
ip nhrp map multicast dynamic
Определяем Network ID – просто идентификатор, который необязательно должен быть одинаковым на всех узлах DMVPN
ip nhrp network-id 1
Привязка к физическому внешнему интерфейсу
tunnel source FastEthernet 6/0
Туннель на центральном узле будет терминировать все туннели от удалённых точек.
То есть он будет точка-многоточка (Point-to-MultiPoint)
tunnel mode gre multipoint
По умолчанию включен split horizon. Необходимо его отключить на хабе, чтобы роутеры (spoke) могли общаться напрямую между собой и видеть подсети за соседними маршрутизаторами
no ip split-horizon
Без этих настроек после перезагрузки хаба тоннели в филиалах поднимутся, но будут недоступны для пингов
ip nhrp registration timeout 30
ip nhrp holdtime 300
ip nhrp nhs 10.10.254.1
Настройка Филиала А
interface Tunnel0
Внутренний IP-адрес VPN-клиента из нужного диапазона нашей будущей VPN
ip address 10.10.254.17 255.255.255.0
Статическое соотношение внутреннего и внешнего адресов центрального хаба (ЦО)
ip nhrp map 10.10.254.1 172.16.250.1
Мультикастовый трафик должен получать хаб по внешнему IP-адресу ЦО
ip nhrp map multicast 172.16.250.1
Network ID. Не обязательно должен совпадать с таким же на хабе
ip nhrp network-id 1
Статически настроенный внутренний VPN адрес NHRP сервера – хаба
Именно поэтому в центре нам нужен статический публичный адрес
Клиенты отправляют запрос на регистрацию на хаб 10.10.254.1, этот запрос содержит настроенный локальный адрес туннельного интерфейса, а также свой публичный адрес
ip nhrp nhs 10.10.254.1
Если адрес в филиалах выдаётся динамически, эта команда обязательна
ip nhrp registration no-unique
Привязка к физическому внешнему интерфейсу
tunnel source FastEthernet 6/0
Указываем, что тип туннеля mGRE – это позволит создавать динамически туннели не только до хаба, но и до других филиалов
tunnel mode gre multipoint
Без этих настроек после перезагрузки хаба тоннели в филиалах поднимутся, но будут недоступны для пингов
ip nhrp registration timeout 30
ip nhrp holdtime 300
Проверка
tmb# ping 10.10.254.1
Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 172.16.254.1, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 176/213/284 ms
sh int tun 0
sh ip nhrp brief
Тоннели подняты!
Настройка BGP
Настройка ЦО
Настроим loopback интерфейс
interface loopback 0
Настроим адрес на loopback интерфейсе
BGP автоматически будет использовать этот адрес как router-id устройства
ip address 10.0.0.250 255.255.255.255
Запускаем bgp процесс и указываем номер AS на этом маршрутизаторе в ЦО
router bgp 64750
Командой neighbor мы указываем, с кем устанавливать сессию.
Именно на адрес 10.10.254.17 (vpn-адрес филиала) маршрутизатор будет отсылать сначала TCP-SYN, а потом OPEN.
Также мы обязаны указать номер удалённой Автономной Системы филиала
neighbor 10.10.254.17 remote-as 64517
Определяем сеть, которая будет анонсироваться филиалу
В данном случае это подсеть ЦО за маршрутизатором
network 192.168.250.0 mask 255.255.255.0
Настройка Филиала A
Настроим loopback интерфейс
interface loopback 0
Настроим адрес на loopback интерфейсе
BGP автоматически будет использовать этот адрес как router-id устройства
ip address 10.0.0.17 255.255.255.255
Запускаем bgp процесс и указываем номер AS на этом маршрутизаторе в филиале
router bgp 64517
Командой neighbor мы указываем, с кем устанавливать сессию.
Именно на адрес 10.10.254.1 (vpn-адрес ЦО) маршрутизатор будет отсылать сначала TCP-SYN, а потом OPEN.
Также мы обязаны указать номер удалённой Автономной Системы ЦО
neighbor 10.10.254.1 remote-as 64750
Определяем сеть, которая будет анонсироваться филиалу
В данном случае это подсеть филиала за маршрутизатором
network 192.168.17.0 mask 255.255.255.0
Проверка
sh ip bgp neighbors
sh ip bgp