Пример настройки динамической маршрутизации на роутерах iRZ
Инструментом для работы с динамической маршрутизацией на роутерах iRZ является пакет Quagga.
| Настройка динамической маршрутизации - сложная задача, которая требует высокой квалификации сетевых инженеров. В данной статье приведен лишь один из примеров возможной конфигурации. |
Установка (версии прошивки 20.1 - 20.5)
| На прошивках с версией ниже 20.1 этой функциональности нет. |
Для работы с динамической маршрутизацией на роутерах iRZ серии R0 и R2 вначале надо установить необходимые пакеты.
Пакеты и инструкция по установке находятся здесь
Дальше вся работа происходит в командной строке, веб-интерфейс для динамической маршрутизации в R0 и R2 не предусмотрен.
Установка (версии прошивки 20.6 и выше)
Для установки Quagga нужно:
-
Зайти в веб-интерфейс роутера на вкладку Network → Dynamic Routes
-
Скачать пакеты по ссылке
-
Установить пакеты при помощи Tools → Management → Install Package
Принцип работы
Каждый протокол маршрутизации в Quagga обслуживается отдельным демоном:
-
ripd – протокол RIP
-
ospfd – протокол OSPF v 2
-
bgpd – протокол BGP-4
Базовое управление осуществляет демон zebra (core daemon), который представляет необходимые API остальным демонам и перестраивает таблицу маршрутизации. Статические маршруты устанавливаются также при помощи демона zebra.
Каждый демон имеет свой собственный файл конфигурации и терминальный интерфейс. Такая схема позволяет легко добавить поддержку другого протокола, но наличие нескольких процессов и конфигурационных файлов делает ее не очень удобной для управления.
Эту проблему решают при помощи терминала vtysh, который, подключаясь к сокету каждого запущенного процесса Quagga, выступает в качестве прокси для пользовательских команд.
Пример конфигурации Quagga
В данном примере маршрутизация настраивалась на тестовом стенде:
-
Router1 - RL01. Interface (Loopback) : 10.255.1.1/32, 172.16.1.1/24. Eth0: 10.10.78.1/24
-
Router2 - RL01. Interface (Loopback) : 10.255.2.2/32, 172.16.2.1/24. Eth0: 10.10.78.1/24
В файле /etc/quagga/daemons указывается, какие демоны будут загружаться, то есть какие именно протоколы будет поддерживать Quagga. По умолчанию все параметры установлены в no, и после установки ничего работать не будет.
-
Конфигурация Zebra
Конфиг Zebra демона: cat /etc/quagga/zebra.conf
password zebra
!
access-list vty permit 127.0.0.0/8
access-list vty deny any
!
hostname router-r1
interface br-lan
ip address 10.10.78.1/24
interface lo
line vty
Для логов Zebra можно создать лог файл
touch /var/run/quagga/zebra.log
chmod 666 /var/run/quagga/zebra.log
vi /etc/quagga/zebra.conf
log file /var/run/quagga/zebra.log
-
Конфиг BGP демона
vi /etc/quagga/bgpd.conf
-
Команда для перехода к управлению демоном Quagga
vtysh
-
Router1 - рабочая конфигурация bgpd.conf
password zebra
!
access-list vty permit 127.0.0.0/8
access-list vty deny any
!
#AS Number
router bgp 64515
!
# Router ID
bgp router-id 10.255.1.1
!
#Known networks
network 172.16.1.0/24
network 10.10.78.0/24
!
redistribute connected
!
#Neighbours
neighbor 10.10.78.2 remote-as 64515
!
#IPv4 source address to use for the BGP session
neighbor 10.10.78.2 update-source 10.10.78.1
!
line vty
access-class vty
-
Router2
password zebra
!
access-list vty permit 127.0.0.0/8
access-list vty deny any
!
#AS Number
router bgp 64515
!
# Router ID
bgp router-id 10.255.2.2
!
#Known networks
network 172.16.2.0/24
network 10.10.78.0/24
!
redistribute connected
!
#Neighbours
neighbor 10.10.78.1 remote-as 64515
!
#IPv4 source address to use for the BGP session
neighbor 10.10.78.1 update-source 10.10.78.2
!
line vty
access-class vty
-
После сохранения всех конфигов необходима перезагрузка демона quagga
/etc/init.d/quagga restart