# Динамическая маршрутизация **RIP** RIP транслирует обновления маршрутизации каждые 30 секунд, независимо от того, изменилось что-то в сети или нет. По истечении 30 секунд маршрутизаторы, работающие по протоколу RIP, будут транслировать информацию о своей маршрутизации на любые устройства, подключенные к их интерфейсам Настройка RIP Роутер RIP5: Router>en Router#conf t Router(config)#router rip Router(config-router)#version 2 Router(config-router)#network 192.168.16.0 Router(config-router)#network 192.168.10.0 Router(config-router)#network 192.168.17.0 router rip - переход в режим конфигурации протокола. version 2 - включение 2 версию протокола RIP. network ip - анонсирование сети. Следует указать все сети, с которыми у роутера есть соседство. Аналогично для остальных роутеров в зоне RIP. Мы можем вывести все маршруты на роутере командой show ip route. Для вывода маршрутов, которые пришли с помощью протокола RIP воспользуемся командой show ip route rip. **OSPF** https://ru.wikipedia.org/wiki/OSPF Принцип работы заключается в следующем: После включения маршрутизаторов протокол ищет непосредственно подключенных соседей и устанавливает с ними «дружеские» отношения. Затем они обмениваются друг с другом информацией о подключенных и доступных им сетях. То есть они строят карту сети (топологию сети). Настройка OSPF Роутер OSPF34 Router>en Router#conf t Router(config)#router ospf 1 Router(config-router)#network 172.16.0.0 0.0.255.255 area 0 router ospf id - запуск и переход в режим конфигурации OSPF. Последнее число — это PID процесса, может отличаться на разных роутерах, но исключительно для удобства лучше задавать одно и то же число. network ip wildcard-mask area area-id - анонсирование непосредственно присоединенной сети к маршрутизатору. wildcard mask — маска, которая указывает с помощью 0 какая часть из указанной сети должна совпадать, а с помощью 1 какая часть сети может быть произвольной. area-id — идентификатор зоны, в которой будет работать интерфейс маршрутизатора. Примечание! В отличие от протокола RIP с помощью wildcard маски можно указать, какая часть сети может быть произвольной. Одной командой network 172.16.0.0 0.0.255.255 можно сразу добавить сети 172.16.3.0, 172.16.9.0, 172.16.10.0, 172.16.17.0 в анонс. Аналогично для остальных роутеров в зоне RIP. Для вывода маршрутов, которые пришли с помощью протокола OSPF воспользуемся командой show ip route ospf. **IBGP** https://habr.com/ru/post/450814/ https://www.opennet.ru/docs/RUS/bgp_rus/ Для установления соседства необходимо выполнения следующих условий: Номер версии. Нынешняя версия 4. Номер AS должен совпадать с тем, что вы настроили neighbor 192.168.13.3 remote-as 10. Router ID должен быть отличным от соседа. Правила 1. Если маршрутизатор передает маршрут своему внутреннему соседу, то он не меняет параметр Next-hop. 2. Если маршрутизатор передает маршрут своему внешнему соседу, то меняет Next-hop на ip интерфейса, с которого передает данный маршрутизатор. команда: neighbor 192.168.56.5 next-hop-self 3. Маршруты, полученные от внутренних соседей не передаются другим внутренним соседям. Команда: neighbor 192.168.57.7 route-reflector-client 4. Правило next-hop работает только для External маршрутов. Для внутренних маршрутов замена атрибута next-hop не происходит. 5. Маршрутизатор передает только те маршруты, которые использует сам. 6. Присваивание веса соседу neighbor 192.168.107.7 weight 200 # **Занятие 11 – Статическая и Динамическая маршрутизация: RIP, OSPF, BGP.** RIP Команда Описание C-R1(config)#router rip конфигурируем RIP C-R1(config-router)#version 2 C-R1(config-router)#no auto-summary отключить автосуммирование маршрутов (суммаризация сетей). не обязательный параметр C-R1(config-router)#network 10.0.0.0 C-R1(config-router)#redistribute ospf 1 metric 1 перераспределение маршрутов из ospf в RIP. Без указания метрики не будет работать. Команда Описание [admin@MikroTik] > system identity set name=M-R11 [admin@M-R11] > routing rip set redistribute-connected=yes Делимся в протоколе рип информацией о connected сетях [admin@M-R11] > routing rip network add network=10.0.0.0/8 По умолчанию в mkrt версия RIP – v2 OSPF Cisco Команда Описание C-R4(config)#interface loopback 0 создание виртуального интерфейса C-R4(config-if)#ip address 127.0.0.4 255.255.255.255 C-R4(config)#router ospf 1 настройка OSPF C-R4(config-router)#network 11.0.5.0 0.0.0.255 area 0 C-R4(config-router)#network 11.0.6.0 0.0.0.255 area 0 C-R4(config-router)#network 11.0.8.0 0.0.0.255 area 0 C-R4(config-router)#redistribute connected – отдавать информацию о непосредственно подключенных сетях через протокол маршрутизации C-R4(config-router)#redistribute rip – аналогично, но отдавать маршруты RIP OSPF Cisco Команда Описание Настройка интерфейсов [admin@MikroTik] > system identity set name=M-R16 [admin@M-R16] > ip address add address=11.0.6.16/24 interface=ether3 [admin@M-R16] > ip address add address=11.0.7.16/24 interface=ether4 [admin@M-R16] > ip address add address=11.0.3.16/24 interface=ether2 [admin@M-R16] > ip address add address=11.0.4.16/24 interface=ether1 Настройка OSPF [admin@M-R13] > interface bridge add name=loopback [admin@M-R13] > ip address add address=127.0.0.13/32 interface=loopback [admin@M-R13] > routing ospf instance set 0 router-id=127.0.0.13 [admin@M-R13] > routing ospf instance add name=default [admin@M-R13] > routing ospf network add network=13.3.0.0/24 area=backbone – укажем сеть, через которую роутеры “дружат” [admin@M-R13] > routing ospf neighbor print [admin@M-R13] > routing ospf instance print [admin@M-R13] > routing ospf instance set redistribute-connected=as-type-1 numbers: default какой инстанс изменяем BGP Cisco eBGP C-R8(config)#router bgp 100 C-R8(config-router)#neighbor 14.3.0.9 remote-as 400 C-R8(config-router)#neighbor 14.2.0.13 remote-as 300 C-R8(config-router)#neighbor 14.1.0.12 remote-as 200 C-R8(config-router)#neighbor 14.3.0.9 default-originate распространяем шлюз последней надежды клиентам C-R8(config-router)#neighbor 14.2.0.13 default-originate C-R8(config-router)#neighbor 14.1.0.12 default-originate C-R8(config-router)#network 14.1.0.0 mask 255.255.255.0 C-R8(config-router)#network 14.2.0.0 mask 255.255.255.0 C-R8(config-router)#network 14.3.0.0 mask 255.255.255.0 Mikrotik BGP [admin@M-R15] > interface bridge add name=loopback [admin@M-R15] > ip address add address=10.255.255.15/32 interface=loopback [admin@M-R15] > routing bgp instance set default as=400 redistribute-static=yes redistribute-connected=yes router-id=10.255.255.15 [admin@M-R15] > routing bgp instance print [admin@M-R15] > routing bgp peer add remote-address=12.0.3.6 remote-as=400 [admin@M-R15] > routing bgp peer print Команда Описание Cisco iBGP C-R9(config)#int loopback0 Создаём интерфейсы loopback C-R9(config-if)#ip address 10.255.255.9 255.255.255.255 Для обмена собственными маршрутами конфигурируем OSPF C-R9(config)#router ospf 1 C-R9(config-router)#network 10.255.255.9 0.0.0.0 area 0 C-R9(config-router)#network 12.0.0.0 0.0.255.255 area 0 C-R9(config-router)#network 14.3.0.0 0.0.0.255 area 0 C-R9(config-router)#network 13.2.0.0 0.0.0.255 area 0 C-R9#show ip route ospf Настроим iBGP C-R9(config)#router bgp 400 C-R9(config-router)#network 12.0.0.0 mask 255.255.0.0 C-R9(config-router)#neighbor 10.255.255.6 remote-as 400 C-R9(config-router)#neighbor 10.255.255.6 update-source loopback0 C-R9(config-router)#neighbor 10.255.255.7 remote-as 400 C-R9(config-router)#neighbor 10.255.255.7 update-source loopback0 C-R9(config-router)#neighbor 10.255.255.14 remote-as 400 C-R9(config-router)#neighbor 10.255.255.14 update-source loopback0 C-R9(config-router)#neighbor 10.255.255.15 remote-as 400 C-R9(config-router)#neighbor 10.255.255.15 update-source loopback0 C-R9#show ip bgp summary Доп команды C-R(config-router)# neighbor <ip-address | peer-group-name> password < string> – аутентификация # **Лабораторная работа** # RIP *Настроим роутер С-R-3* en conf t hostname C-R3 int range e0/0-3 no shutdown int e0/0 ip addr 10.0.1.3 255.255.255.0 int e0/1 ip addr 13.3.0.3 255.255.255.0 int e0/2 ip addr 10.0.4.3 255.255.255.0 int e0/3 ip addr 10.0.5.3 255.255.255.0 exit router rip version 2 network 10.0.5.0 network 10.0.4.0 network 10.0.1.0 no auto-summary redistribute connected do wr ![](https://i.imgur.com/SbpvHxj.png) Настраиваем связь между RIP и OSPF на C-R3. C-R3>en C-R3#conf t C-R3(config)#router ospf 1 С-R3(config-router)#network 13.3.0.0 255.255.255.0 area 0 С-R3(config-router)#redistribute rip metric 1 C-R3(config-router)#router rip C-R3(config-router)#redistribute ospf 1 metric 1 C-R3(config-router)#no auto-summary C-R3(config-router)#do wr C-R3(config-router)#do show ip route *С-R-2* en conf t hostname C-R-2 int range e0/0-2 no shutdown int e0/0 ip addr 10.0.6.2 255.255.255.0 int e0/1 ip addr 10.0.5.2 255.255.255.0 int e0/2 ip addr 10.0.8.2 255.255.255.0 exit router rip version 2 network 10.0.8.0 network 10.0.6.0 network 10.0.5.0 no auto-summary redistribute connected do wr *C-R-1* en conf t hostname C-R-1 int range e0/0-2 no shutdown int e0/0 ip addr 10.0.7.1 255.255.255.0 int e0/1 ip addr 10.0.2.1 255.255.255.0 int e0/2 ip addr 10.0.8.1 255.255.255.0 exit router rip version 2 network 10.0.8.0 network 10.0.7.0 network 10.0.2.0 no auto-summary redistribute connected do wr *M-R11* [admin@M-R11] > system identity set name=M-R11 [admin@M-R11] >> ip address add interface=ether1 address=10.0.3.11/24 [admin@M-R11] >> ip address add interface=ether2 address=10.0.4.11/24 [admin@M-R11] >> ip address add interface=ether3 address=10.0.7.11/24 [admin@M-R11] >> ip address add interface=ether4 address=10.0.6.11/24 [admin@M-R11] >> routing rip [admin@M-R11] /routing rip>> network add network=10.0.3.0/24 [admin@M-R11] /routing rip>> network add network=10.0.4.0/24 [admin@M-R11] /routing rip>> network add network=10.0.6.0/24 [admin@M-R11] /routing rip>> network add network=10.0.7.0/24 [admin@M-R11] /routing rip>> set redistribute-connected=yes [admin@M-R11] /routing rip>> *M-R12* system identity set name=M-R12 ip address add interface=ether1 address=13.1.0.12/24 ip address add interface=ether2 address=10.0.1.12/24 ip address add interface=ether3 address=10.0.3.12/24 ip address add interface=ether4 address=14.1.0.12/24 ip address add interface=ether5 address=10.0.2.12/24 routing rip network add network=10.0.1.0/24 network add network=10.0.2.0/24 network add network=10.0.3.0/24 set redistribute-connected=yes routing bgp peer add name=c-r6 remote-address=13.1.0.6 remote-as=400 route-reflect=yes add name=loopback0 ip address add interface=loopback0 address=10.255.255.12/32 disabled=no routing bgp instance set default as=200 router-id=10.255.255.12 routing bgp network add network=13.1.0.0/24 print # OSPF *C-R-4* en conf t hostname C-R-4 int range e0/0-2 no shutdown int e0/0 ip addr 11.0.6.4 255.255.255.0 int e0/1 ip addr 11.0.5.4 255.255.255.0 int e0/2 ip addr 11.0.8.4 255.255.255.0 router ospf 1 network 11.0.5.0 255.255.255.0 area 0 network 11.0.6.0 255.255.255.0 area 0 network 11.0.8.0 255.255.255.0 area 0 redistribute connected do wr *C-R-5* en conf t hostname C-R-5 int range e0/0-2 no shutdown int e0/0 ip addr 11.0.7.5 255.255.255.0 int e0/1 ip addr 11.0.2.5 255.255.255.0 int e0/2 ip addr 11.0.8.5 255.255.255.0 router ospf 1 network 11.0.7.0 255.255.255.0 area 0 network 11.0.2.0 255.255.255.0 area 0 network 11.0.8.0 255.255.255.0 area 0 redistribute connected do wr *C-R-10* en conf t hostname C-R-10 int range e0/0-3 no shutdown int e0/0 ip addr 13.2.0.10 255.255.255.0 int e0/1 ip addr 11.0.1.10 255.255.255.0 int e0/2 ip addr 11.0.3.10 255.255.255.0 int e0/3 ip addr 11.0.2.10 255.255.255.0 router ospf 1 network 11.0.1.0 255.255.255.0 area 0 network 11.0.2.0 255.255.255.0 area 0 network 11.0.3.0 255.255.255.0 area 0 network 13.2.0.0 0.0.0.255 area 0 redistribute connected router bgp 300 redistribute connected network 13.2.0.0 neighbor 13.2.0.9 remote-as 400 do wr *M-R13* system identity set name=M-R13 ip address add interface=ether1 address=13.3.0.13/24 add interface=ether2 address=11.0.1.13/24 add interface=ether3 address=11.0.4.13/24 add interface=ether4 address=14.2.0.13/24 add interface=ether5 address=11.0.5.13/24 print / interface bridge add name=loopback ip address add address=127.0.0.13/32 255.255.255.255 ip address add address=127.0.0.13/32 interface=loopback routing ospf instance set 0 router-id=127.0.0.13 routing ospf instance set 0 redistribute-connected=as-type-1 routing ospf network add network=13.3.0.0/24 area=backbone routing ospf network add network=11.0.5.0/24 area=backbone add network=11.0.4.0/24 area=backbone add network=11.0.1.0/24 area=backbone routing ospf neighbor print routing bgp peer add name=main-router remote-address=14.2.0.8 remote-as=100 *M-R16* system identity set name=M-R16 ip address add interface=ether1 address=11.0.4.16/24 add interface=ether2 address=11.0.3.16/24 add interface=ether3 address=11.0.6.16/24 add interface=ether4 address=11.0.7.16/24 print / routing ospf instance set 0 redistribute-connected=as-type-1 routing ospf network add network=11.0.3.0/24 area=backbone add network=11.0.4.0/24 area=backbone add network=11.0.6.0/24 area=backbone add network=11.0.7.0/24 area=backbone routing ospf neighbor print # **BGP** **iBGP** * команда Traceroute Mikrotik tool traceroute address= *M-R14* system identity set name=M-R14 ip address add interface=ether1 address=12.0.4.14/24 disabled=no add interface=ether2 address=12.0.5.14/24 disabled=no print / routing bgp network add network=12.0.4.0/24 add network=12.0.5.0/24 / routing bgp instance add as=400 name=BGP400 redistribute-connected=yes router-id=12.0.4.14 / routing bgp peer set name=peer1 remote-address=12.0.4.7 remote-as=400 instance=BGP400 route-reflect=yes set name=peer2 remote-address=12.0.5.15 remote-as=400 instance=BGP400 route-reflect=yes / ip dhcp-client remove numbers=0 export - Лишнее - routing bgp peer add name=peer1 remote-address=12.0.4.7 remote-as=400 route-reflect=yes add name=peer2 remote-address=12.0.5.15 remote-as=400 route-reflect=yes - interface bridge add name=loopback0 / ip address add interface=loopback0 address=10.255.255.14/32 disabled=no / routing bgp instance set default as=400 router-id=10.255.255.14 *M-R15* system identity set name=M-R15 ip address add interface=ether1 address=12.0.3.15/24 disabled=no add interface=ether2 address=12.0.5.15/24 disabled=no add interface=ether3 address=12.0.6.15/24 disabled=no / routing bgp instance add as=400 name=BGP400 redistribute-connected=yes router-id=12.0.3.15 / routing bgp network add network=12.0.3.0/24 add network=12.0.5.0/24 add network=12.0.6.0/24 / routing bgp peer add name=peer1 remote-address=12.0.3.9 remote-as=400 add name=peer2 remote-address=12.0.5.14 remote-as=400 add name=peer3 remote-address=12.0.6.7 remote-as=400 set name=peer1 remote-address=12.0.3.9 remote-as=400 instance=BGP400 route-reflect=yes set name=peer2 remote-address=12.0.5.14 remote-as=400 instance=BGP400 route-reflect=yes set name=peer3 remote-address=12.0.6.7 remote-as=400 instance=BGP400 route-reflect=yes / export ip dhcp-client remove numbers=0 - Это лишнее - print interface bridge add name=loopback0 / ip address add interface=loopback0 address=10.255.255.15/32 disabled=no - set default as=400 router-id=10.255.255.15 ![](https://i.imgur.com/l83tyb6.png) *C-R6* en conf t hostname C-R6 interface e0/0 ip address 13.1.0.6 255.255.255.0 interface e0/1 ip address 12.0.1.6 255.255.255.0 interface e0/2 ip address 12.0.2.6 255.255.255.0 int range e0/0-2 no shutdown do wr router bgp 400 network 12.0.1.0 mask 255.255.255.0 network 12.0.2.0 mask 255.255.255.0 network 13.1.0.0 mask 255.255.255.0 neighbor 13.1.0.12 remote-as 200 redistribute connected neighbor 12.0.1.9 remote-as 400 neighbor 12.0.2.7 remote-as 400 neighbor 12.0.2.7 route-reflector-client neighbor 12.0.1.9 route-reflector-client do wr exit router rip redistribute connected network 13.1.0.0 do wr do sh bgp summary - лишнее - int loopback0 - ip address 10.255.255.6 255.255.255.255 do wr - router bgp 400 neighbor 10.255.255.7 remote-as 400 neighbor 10.255.255.7 update-source loopback0 neighbor 10.255.255.9 remote-as 400 neighbor 10.255.255.9 update-source loopback0 neighbor 10.255.255.7 route-reflector-client neighbor 10.255.255.9 route-reflector-client -do wr *C-R7* en conf t hostname C-R7 interface e0/0 ip address 12.0.2.7 255.255.255.0 interface e0/1 ip address 12.0.4.7 255.255.255.0 interface e0/2 ip address 12.0.6.7 255.255.255.0 int range e0/0-2 no shutdown do wr router bgp 400 network 12.0.2.0 mask 255.255.255.0 network 12.0.4.0 mask 255.255.255.0 network 12.0.6.0 mask 255.255.255.0 neighbor 12.0.2.6 remote-as 400 neighbor 12.0.4.14 remote-as 400 neighbor 12.0.6.15 remote-as 400 neighbor 12.0.2.6 route-reflector-client neighbor 12.0.4.14 route-reflector-client neighbor 12.0.6.15 route-reflector-client redistribute connected do wr do sh bgp summary ![](https://i.imgur.com/ciMogwB.png) - лишнее int loopback0 ip address 10.255.255.7 255.255.255.255 router bgp 400 neighbor 10.255.255.6 update-source loopback0 neighbor 10.255.255.14 update-source loopback0 neighbor 10.255.255.15 update-source loopback0 do wr router bgp 400 neighbor 10.255.255.6 remote-as 400 neighbor 10.255.255.6 update-source loopback0 neighbor 10.255.255.14 remote-as 400 neighbor 10.255.255.14 update-source loopback0 neighbor 10.255.255.6 route-reflector-client neighbor 10.255.255.14 route-reflector-client neighbor 10.255.255.15 remote-as 400 neighbor 10.255.255.15 update-source loopback0 neighbor 10.255.255.15 route-reflector-client do wr *C-R9* en conf t hostname C-R9 interface e0/0 ip address 12.0.1.9 255.255.255.0 interface e0/1 ip address 13.2.0.9 255.255.255.0 interface e0/2 ip address 12.0.3.9 255.255.255.0 interface e0/3 ip address 14.3.0.9 255.255.255.0 int range e0/0-3 no shutdown do wr router bgp 400 network 12.0.1.0 mask 255.255.255.0 network 12.0.3.0 mask 255.255.255.0 network 13.2.0.0 mask 255.255.255.0 neighbor 12.0.1.6 remote-as 400 neighbor 12.0.3.15 remote-as 400 network 14.3.0.0 mask 255.255.255.0 neighbor 12.0.3.15 route-reflector-client neighbor 12.0.1.6 route-reflector-client neighbor 14.3.0.8 remote-as 100 default-metric 1 neighbor 13.2.0.10 remote-as 300 redistribute connected do wr do sh bgp summary router ospf 1 network 10.255.255.9 0.0.0.0 area 0 network 12.0.0.0 0.0.255.255 area 0 network 14.3.0.0 0.0.0.255 area 0 network 13.2.0.0 0.0.0.255 area 0 do wr ![](https://i.imgur.com/EQNznsJ.png) - лишнее - redistribute connected router bgp 400 neighbor 10.255.255.6 remote-as 400 neighbor 10.255.255.6 update-source loopback0 neighbor 10.255.255.6 route-reflector-client neighbor 10.255.255.15 remote-as 400 neighbor 10.255.255.15 update-source loopback0 neighbor 10.255.255.15 route-reflector-client do wr int loopback0 ip address 10.255.255.9 255.255.255.255 **eBGP** *C-R8* en conf t hostname C-R8 interface e0/0 ip address 14.3.0.8 255.255.255.0 interface e0/1 ip address 14.2.0.8 255.255.255.0 interface e0/2 ip address 14.1.0.8 255.255.255.0 int range e0/0-2 no shutdown do wr exit router bgp 100 neighbor 14.3.0.9 remote-as 400 neighbor 14.2.0.13 remote-as 300 neighbor 14.1.0.12 remote-as 200 neighbor 14.3.0.9 default-originate neighbor 14.2.0.13 default-originate neighbor 14.1.0.12 default-originate network 14.1.0.0 mask 255.255.255.0 network 14.2.0.0 mask 255.255.255.0 network 14.3.0.0 mask 255.255.255.0 do wr # Вопросы по лабораторке Внутри as400 все маршруты видны. С пограничных роутеров маршруты as400 тоже видны, но с роутеров as200 и as300 маршруты видны только 12.0.1.0 и 12.0.3.0. Провозился с BGP не одну ночь, но так и не понял почему они не видят остальные подсети as400. Я думаю что где то команды не дописал, либо это баг какой-то. Что именно я не так сделал?