Конфигурация MP-BGP

Обычная версия протокола BGP (Border Gateway Protocol) поддерживает только IPv4 адресацию. В настоящее время используется MP-BGP (Multiprotocol BGP), который поддерживает различные адреса:

  • IPv4 Unicast
  • IPv4 Multicast
  • IPv6 Unicast
  • IPv6 Multicast

MP-BGP также используется для MPLS VPN, где MP-BGP используется для обмена метками VPN. Для каждого типа адреса MP-BGP использует своё семейство адресов.

Чтобы стало возможным использовать новую IPv6 адресацию в MP-BGP реализованы некоторые новые функции, которые отсутствуют в BGP:

  • Идентификатор семейства адресов (AFI): определяет семейство адресов.
  • Идентификатор последующего семейства адресов (SAFI): содержит дополнительную информацию для некоторых семейств адресов.
  • Информация о доступности сетевого уровня для недоступной многопротокольной сети (MP_UNREACH_NLRI): этот атрибут используется для передачи данных по недоступным сетям.
  • Объявление возможностей BGP: используется маршрутизатором BGP для объявления другому маршрутизатору BGP о поддерживаемых им возможностях. MP-BGP и BGP-4 совместимы, поэтому маршрутизатор BGP-4 может игнорировать непонятные ему сообщения.

Поскольку MP-BGP поддерживает IPv4 и IPv6, у нас есть несколько вариантов. Маршрутизаторы MP-BGP могут стать соседями, используя адреса IPv4 и обмениваться префиксами IPv6, или наоборот. Ниже мы рассмотрим несколько примеров конфигурации…

MP-BGP c IPv6 соседством и IPv6 префиксами

Постройте следующую схему:

На обоих маршрутизаторах запустите маршрутизацию IPv6 и перезагрузитесь:

end
enable
configure
 
ipv6 forwarding enable
end
write
reload

Настройте R1:

enable
configure
hostname R1
 
#Настройка интерфейса
interface 2ge0
ipv6 address 2001:DB8:0:12::1/64
port ge0 
service-instance 4ge0
encapsulation untagged
connect ip interface 2ge0
 
#Настройка loopback интерфейса
interface loopback.0
ipv6 address 2001:DB8::1/128
exit

Настройте R2:

enable
configure
hostname R2
 
#Настройка интерфейса
interface 2ge0
ipv6 address 2001:DB8:0:12::2/64
port ge0 
service-instance 4ge0
encapsulation untagged
connect ip interface 2ge0
 
#Настройка loopback интерфейса
interface loopback.0
ipv6 address 2001:DB8::2/128
exit

Теперь настройте протокол BGP.

На R1:

router bgp 1
bgp router-id 1.1.1.1
neighbor 2001:db8:0:12::2 remote-as 2
address-family ipv4
no neighbor 2001:db8:0:12::2 activate
exit
address-family ipv6
neighbor 2001:db8:0:12::2 activate
network 2001:db8::1/128
end

В приведённой выше конфигурации сначала, в обязательном порядке, указывается идентификатор маршрутизатора в формате адреса IPv4. Затем указывается адрес удалённого соседа. Команда address-family используется для изменения настроек IPv4 или IPv6. Далее происходит отключение address-family IPv4 и включение IPv6. В конце — объявляется префикс на интерфейсе обратной связи.

Конфигурация маршрутизатора R2 выглядит аналогично:

router bgp 2
bgp router-id 2.2.2.2
neighbor 2001:db8:0:12::1 remote-as 1
address-family ipv4
no neighbor 2001:db8:0:12::1 activate
exit
address-family ipv6
neighbor 2001:db8:0:12::1 activate
network 2001:db8::2/128
end

Если всё сделано верно, вы получите на обоих маршрутизаторах сообщения об установлении соседства:

2025-07-09 14:40:30      INFO   BGP Neighbor 2001:db8:0:12::2 state UP
2025-07-09 14:40:30      INFO   BGP Neighbor 2001:db8:0:12::1 state UP

Тем не менее, проверьте наличие установленных соседств командами:

R1#show ipv6 route bgp
IP Route Table for VRF "default"
B      2001:db8::2/128 [20/0] via fe80::1e87:76ff:fe40:201, 2ge0, 00:01:49
R2#show ipv6 route bgp
IP Route Table for VRF "default"
B      2001:db8::1/128 [20/0] via fe80::1e87:76ff:fe40:101, 2ge0, 00:03:03

Вы также можете дать команду ping до противоположного loopback-адреса чтобы окончательно убедиться в правильной работе построенной схемы.

MP-BGP c IPv4 соседством и IPv6 префиксами

Рассмотрим более сложный пример. Маршрутизаторы станут соседями по IPv4, но будут обмениваться префиксами IPv6.

Немного измените топологию. Теперь маршрутизаторы организуют соседство через IPv4 но при этом обмениваются IPv6 префиксами.

Перенастройте R1:

end
enable
configure
 
route-map IPV6_NEXT_HOP permit 10
set ipv6 next-hop 2001:DB8:0:12::2
 
interface 2ge0
ip address 192.168.12.1/24
 
router bgp 1
no neighbor 2001:db8:0:12::2 remote-as 2
neighbor 192.168.12.2 remote-as 2
address-family ipv6
neighbor 192.168.12.2 activate
neighbor 192.168.12.2 route-map IPV6_NEXT_HOP in

Аналогично перенастройте R2:

end
enable
configure
 
route-map IPV6_NEXT_HOP permit 10
set ipv6 next-hop 2001:DB8:0:12::1
 
interface 2ge0
ip address 192.168.12.2/24
 
router bgp 2
no neighbor 2001:db8:0:12::1 remote-as 1
neighbor 192.168.12.1 remote-as 1
address-family ipv6
neighbor 192.168.12.1 activate
neighbor 192.168.12.1 route-map IPV6_NEXT_HOP in

Чтобы заново установить соседства может потребоваться дать команду clear ip bgp *.

Были произведены следующие изменения:

  • Добавлена маршрутная карта без условий (match) и в ней задан IPv6 адрес следующего перехода. После чего появится возможность использовать IPv4 для пиринга с соседями, чтобы следующий переход не менялся автоматически.
  • К интерфейсу 2ge0 добавлены адреса 192.168.12.1(2)/24. Теперь на интерфейсе присутствуют как IPv6 так и IPv4 адреса.
  • В настройках маршрутизатора BGP удалены предыдущие настройки соседства IPv6 и вместе с ним настройки address-family ipv4.
  • Заданы новые соседства IPv4.
  • В настройках address-family ipv6 настроен адрес IPv4 и привязана карта маршрутов задающая IPv6 адрес.

Проверьте результаты:

R1#show bgp ipv6 | include 2001
*>  2001:db8::1/128  ::                   0        100          32768    i
*>  2001:db8::2/128  2001:db8:0:12::2(fe80::1e87:76ff:fe40:201)
R2#show bgp ipv6 | include 2001
*>  2001:db8::1/128  2001:db8:0:12::1(fe80::1e87:76ff:fe40:101)
*>  2001:db8::2/128  ::                   0        100          32768    i

IPv6-адреса следующего перехода теперь доступны, и их стало возможно добавить в таблицу маршрутизации.

Недостатком этого решения является то, что приходится самостоятельно определять следующий переход. Преимущество же заключается в том, что присутствует единое соседство BGP, которое можно использовать для обмена префиксами IPv4 и IPv6.