Table of Contents
Настройка BGP
Включение протокола BGP
Для включения дистанционно-векторного протокола динамической маршрутизации BGP необходимо внести изменения в конфигурационный файл «daemons». Для редактирования конфигурационного файла необходимо перейти в папку назначения с помощью команды «cd /media/storage/overlay/frr/» и выполнить команду «nano daemons». В конфигурационном файле необходимо для протокола BGP задать значение параметра «yes» (изобр. 7.f.1). После внесения изменений в конфигурационный файл «daemons» необходимо перезапустить процесс динамической маршрутизации с помощью команды «/etc/init.d/S50frr restart».
Базовая настройка протокола BGP
Для настройки протокола динамической маршрутизации BGP (англ. Border Gateway Protocol) необходимо подключиться к устройству по протоколу ssh и выполнить команду «vtysh» для перехода в режим интерпретатора. Далее необходимо необходимо перейти в режим конфигурирования с помощью команду «configure terminal» и выполнить команду для входа в режим конфигурирования протокола динамической маршрутизации BGP «router bgp [AS]», где* AS - номер автономной системы(1-65535, номера автономных систем должны быть разными на всех маршрутизаторах, которые должны обмениваться информацией).
Для задания идентификатора маршрутизатора BGP выполняется команда «bgp router-id A.B.C.D». Для подключения интерфейсов с адресами, совпадающими с необходимой сетью, выполняется команда «network [NETWORK]» (адрес необходимой сети).
Для анонсирования локальных сетей необходимо добавить команду «no bgp ebgp-requires-policy».
Для получения справки по командам для заданного меню интерпретатора необходимо выполнить команду «shift+?». Во всех разделах работает режим дополнения команды с помощью клавиши «tab». Для отмены команды необходимо поставить ключевую частицу «no» перед командой. Для выхода в предыдущее меню необходимо выполнить команду «exit». После задания конфигурации в терминальном режиме необходимо сохранить настройки. Для сохранения настроек необходимо выполнить команду «write» в основном меню конфигурации. При выполнении команду «write» вся конфигурация записывается в конфигурационный файл «/media/storage/overlay/frr/frr.conf». После внесения изменений необходимо перезапустить процесс с помощью команды «/etc/init.d/S50frr restart».
BGP 1# con t BGP 1(config)# router bgp 1 BGP 1(config-router)# bgp router-id 10.0.0.1 BGP 1(config-router)# neighbor 10.0.0.2 remote-as 2 BGP 1(config-router)# network 10.0.1.0/24 BGP 1(config-router)# no bgp ebgp-requires-policy BGP 1(config-router)# ex BGP 1(config)# ex BGP 1# write Note: this version of vtysh never writes vtysh.conf Building Configuration... Integrated configuration saved to /etc/frr/frr.conf [OK] BGP 1# ex # /etc/init.d/S50frr restart Stopping frr: Stopped watchfrr Stopped bgpd Stopped staticd Stopped zebra OK Starting frr: Starting watchfrr with command: ' /usr/sbin/watchfrr -d -F traditional zebra eigrpd staticd' Started watchfrr OK #
Просмотр информации о BGP
Для просмотра текущего статуса bgp необходимо ввести команду «show ip bgp».
BGP 1# sh ip bgp BGP table version is 4, local router ID is 10.0.0.1, vrf id 0 Default local pref 100, local AS 1 Status codes: s suppressed, d damped, h history, * valid, > best, = multipath, i internal, r RIB-failure, S Stale, R Removed Nexthop codes: @NNN nexthop's vrf id, < announce-nh-self Origin codes: i - IGP, e - EGP, ? - incomplete RPKI validation codes: V valid, I invalid, N Not found Network Next Hop Metric LocPrf Weight Path *> 10.0.1.0/24 0.0.0.0 0 32768 i *> 10.0.2.0/24 10.0.0.2 0 0 2 i Displayed 2 routes and 2 total paths
Для просмотра списка соседей, которые были установлены в bgp, необходимо ввести команду «show ip bgp neighbors».
BGP 1# sh ip bgp neighbors BGP neighbor is 10.0.0.2, remote AS 2, local AS 1, external link Local Role: undefined Remote Role: undefined Hostname: BGP 2 BGP version 4, remote router ID 10.0.0.2, local router ID 10.0.0.1 BGP state = Established, up for 01:01:21 Last read 00:00:21, Last write 00:00:21 Hold time is 180 seconds, keepalive interval is 60 seconds Configured hold time is 180 seconds, keepalive interval is 60 seconds Configured conditional advertisements interval is 60 seconds Neighbor capabilities: 4 Byte AS: advertised and received Extended Message: advertised and received AddPath: IPv4 Unicast: RX advertised and received Long-lived Graceful Restart: advertised and received Address families by peer: Route refresh: advertised and received(old & new) Enhanced Route Refresh: advertised and received Address Family IPv4 Unicast: advertised and received Hostname Capability: advertised (name: BGP 1,domain name: n/a) received (name: BGP 2,domain name: n/a) Graceful Restart Capability: advertised and received Remote Restart timer is 120 seconds Address families by peer: none Graceful restart information: End-of-RIB send: IPv4 Unicast End-of-RIB received: IPv4 Unicast Local GR Mode: Helper* Remote GR Mode: Helper R bit: True N bit: True Timers: Configured Restart Time(sec): 120 Received Restart Time(sec): 120 IPv4 Unicast: F bit: False End-of-RIB sent: Yes End-of-RIB sent after update: Yes End-of-RIB received: Yes Timers: Configured Stale Path Time(sec): 360 Message statistics: Inq depth is 0 Outq depth is 0 Sent Rcvd Opens: 2 2 Notifications: 0 0 Updates: 6 6 Keepalives: 63 63 Route Refresh: 0 0 Capability: 0 0 Total: 71 71 Minimum time between advertisement runs is 0 seconds For address family: IPv4 Unicast Update group 2, subgroup 2 Packet Queue length 0 Community attribute sent to this neighbor(all) 1 accepted prefixes Connections established 2; dropped 1 Last reset 01:01:24, No AFI/SAFI activated for peer External BGP neighbor may be up to 1 hops away. Local host: 10.0.0.1, Local port: 179 Foreign host: 10.0.0.2, Foreign port: 54544 Nexthop: 10.0.0.1 Nexthop global: fe80::a00:27ff:fe4a:d97f Nexthop local: fe80::a00:27ff:fe4a:d97f BGP connection: shared network BGP Connect Retry Timer in Seconds: 120 Estimated round trip time: 0 ms Read thread: on Write thread: on FD used: 22
Для просмотра списка маршрутов, которые были получены через bgp, необходимо ввести команду «show ip route bgp».
BGP 1# sh ip route bgp Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, I - IS-IS, B - BGP, E - EIGRP, T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR, f - OpenFabric, > - selected route, * - FIB route, q - queued, r - rejected, b - backup t - trapped, o - offload failure B>* 10.0.2.0/24 [20/0] via 10.0.0.2, eth2, weight 1, 01:04:30