PacketLab
BGP · Advanced BGP Features

Multiprotocol BGP

Separate the TCP transport address from the address family whose prefixes BGP carries.

Identify AFI, SAFI and multiprotocol reachability

IPv4 unicast, IPv6 unicast and VPN routes use distinct address-family semantics. AFI identifies the address family and SAFI identifies the subsequent type. MP_REACH_NLRI carries reachable prefixes and the appropriate next hop; MP_UNREACH_NLRI withdraws them. Capability negotiation tells peers which families they can exchange. The four-byte router ID remains required even on an IPv6-only router.

IPv6 transport and IPv6 routes

Lab topologyPhysical links
.1 / .2R1IPv6 ::1 · AS 65001R2IPv6 ::2 · AS 65002
Solid lines are physical links. Endpoint labels are the last octets of 192.0.2.x/30, first router then second router in the address table. Loopback0 is 10.255.0.N/32 on RN. Logical BGP peers are listed in the configurations.

For the first stage, the physical link is 2001:db8:0:12::/64; the IPv4 endpoint suffixes in the generic diagram apply only when added in the second stage.

Complete baseline configurations

R1

hostname R1
ipv6 unicast-routing
interface Loopback0
 ipv6 address 2001:db8::1/128
exit
interface GigabitEthernet1
 ipv6 address 2001:db8:0:12::1/64
 ipv6 address FE80::1 link-local
 no shutdown
exit
router bgp 65001
 bgp router-id 10.255.0.1
 no bgp default ipv4-unicast
 neighbor 2001:db8:0:12::2 remote-as 65002
 address-family ipv6 unicast
  neighbor 2001:db8:0:12::2 activate
  network 2001:db8::1/128
 exit-address-family
end

R2

hostname R2
ipv6 unicast-routing
interface Loopback0
 ipv6 address 2001:db8::2/128
exit
interface GigabitEthernet1
 ipv6 address 2001:db8:0:12::2/64
 ipv6 address FE80::2 link-local
 no shutdown
exit
router bgp 65002
 bgp router-id 10.255.0.2
 no bgp default ipv4-unicast
 neighbor 2001:db8:0:12::1 remote-as 65001
 address-family ipv6 unicast
  neighbor 2001:db8:0:12::1 activate
  network 2001:db8::2/128
 exit-address-family
end

Open plain-text configurations

Outputs are illustrative, not recorded router results. Each lab starts from its own baseline. Configuration and feature support vary by image and release; platform-specific examples identify their prerequisites.
R1# show bgp ipv6 unicast summary
BGP router identifier 10.255.0.1, local AS number 65001
Neighbor                 V     AS       State/PfxRcd
2001:db8:0:12::2          4     65002    1
R1# show ipv6 route 2001:db8::2/128
B   2001:DB8::2/128 [20/0]
     via FE80::2, GigabitEthernet1

One established TCP session carries IPv6 reachability; no IPv4 NLRI is activated. A numeric prefix count in the family summary means the session is established.

Move only the transport to IPv4

On both routers add IPv4 addressing to the same link, remove the old IPv6 neighbor, then activate the IPv4-addressed neighbor inside IPv6 unicast. The IPv6 interface addresses remain for data-plane reachability.

R1

interface GigabitEthernet1
 ip address 192.0.2.1 255.255.255.252
exit
router bgp 65001
 no neighbor 2001:db8:0:12::2
 neighbor 192.0.2.2 remote-as 65002
 address-family ipv6 unicast
  neighbor 192.0.2.2 activate
 exit-address-family

R2

interface GigabitEthernet1
 ip address 192.0.2.2 255.255.255.252
exit
router bgp 65002
 no neighbor 2001:db8:0:12::1
 neighbor 192.0.2.1 remote-as 65001
 address-family ipv6 unicast
  neighbor 192.0.2.1 activate
 exit-address-family

Some implementations initially advertise an IPv4-mapped IPv6 next hop for this combination. Merely receiving the prefix does not establish a usable IPv6 forwarding path.

Set a reachable IPv6 next hop

Apply an outbound route map on each router so the IPv6 advertisements use its real IPv6 link address. This command family supports the shown cross-family transport; other images need their documented equivalent.

R1

route-map V6-NEXT-HOP permit 10
 set ipv6 next-hop 2001:db8:0:12::1
exit
router bgp 65001
 address-family ipv6 unicast
  neighbor 192.0.2.2 route-map V6-NEXT-HOP out
 exit-address-family

R2

route-map V6-NEXT-HOP permit 10
 set ipv6 next-hop 2001:db8:0:12::2
exit
router bgp 65002
 address-family ipv6 unicast
  neighbor 192.0.2.1 route-map V6-NEXT-HOP out
 exit-address-family
R1# show bgp ipv6 unicast 2001:db8::2/128
BGP routing table entry for 2001:db8::2/128
  65002
    2001:db8:0:12::2 from 192.0.2.2
      Origin IGP, valid, external, best

Verify and restore

R1# ping ipv6 2001:db8::2 source 2001:db8::1
Success rate is 100 percent (5/5)

The peer address is IPv4, while the route and usable next hop are IPv6. MP-BGP supplies reachability, not a data-plane encapsulation service by itself. Restore the initial full configuration to return to IPv6 transport.

Key Takeaways

  • BGP transport and NLRI address families are separate.
  • Activate the intended family explicitly.
  • MP_REACH and MP_UNREACH carry multiprotocol announcements and withdrawals.
  • A router ID is still a four-byte identifier.
  • A received IPv6 prefix needs a usable IPv6 next hop.

Multiprotocol BGP Quiz

Six questions · four options each · select one answer per question. Submit all answers to see your score and explanations.

1. Can an IPv4 TCP session carry IPv6 NLRI on supporting software?
2. Which attribute withdraws multiprotocol NLRI?
3. Does IPv6-only BGP remove the router ID requirement?
4. What is wrong with an unusable IPv4-mapped next hop?
5. What does family activation control?
6. Does MP-BGP itself provide an IPv6 data-plane tunnel?
Protocol and command references

Multiprotocol extensions · BGP specification · Router-symbol attribution.