Course contents

Module 2: Configuring BGPLesson 2.4 (4 of 6 in this module)7 of 43 in the BGP course

Address families: BGP for IPv4 and IPv6

Your IPv4 provider session works, but an IPv6 destination is still unreachable. The word Established is not enough: which route family did the peers agree to exchange, and did they advertise the IPv6 prefix?

Advanced · 15 min read

You'll learn to separate session transport from route family, configure a filtered IPv6 peer, and verify activation, origination, next-hop reachability and recovery.

Technical definition

BGP address family A route-information category identified by an Address Family Identifier (AFI) and Subsequent Address Family Identifier (SAFI), with its own activation and routing policy.

The conversation and its subject are separate choices

TCP transport describes the IP connection carrying BGP messages. The address family describes the routes inside those messages. An IPv4 TCP connection does not automatically exchange IPv6 routes, and an IPv6 peer address alone does not prove IPv6 route activation. Multiprotocol BGP, or MP-BGP, extends BGP to carry different kinds of routing information.

Session and family are separate
Session and family are separateOne TCP session can carry several address families. Each family is activated on its own.The sessionTCP 179, OPEN, KEEPALIVESame for every familyThe address familyIPv4 or IPv6 unicastActivated under the familycarries

On small screens, swipe sideways or focus the diagram and use the arrow keys.

Established means the conversation works. Routes appear only for the families you activate.

The peers advertise supported families as capabilities during session establishment. For a particular family to exchange routes bidirectionally, both peers need the corresponding capability. The AFI/SAFI pair identifies the subject: IPv4 unicast is 1/1; IPv6 unicast is 2/1. Unicast here means routes towards individual destinations, rather than multicast routing information.

The conversation and its subject are separate choices
The conversation and its subject are separate choicesQuestion; Example; What it does not prove. Where is the TCP peer?: 2001:db8:12::2 That an IPv6 destination route was advertised Which family is activated?: IPv6 unicast, AFI 2 / SAFI 1 That an eligible local prefix exists or passes the filter Where does traffic go?: 2001:db8:200::/64 via an IPv6 next hop That the return route or application worksQuestionExampleWhat it does not proveWhere is the TCP peer?2001:db8:12::2That an IPv6 destination route wasadvertisedWhich family isactivated?IPv6 unicast, AFI 2 / SAFI 1That an eligible local prefix existsor passes the filterWhere does traffic go?2001:db8:200::/64 via an IPv6 nexthopThat the return route or applicationworks

On small screens, swipe sideways or focus the diagram and use the arrow keys.

Read each row across: the left box names the item, the others describe it.

One suitable BGP session can support multiple families. For clarity, this lab adds a separate IPv6-addressed peer beside the existing IPv4 eBGP peer. Cross-family transport designs need explicit next-hop handling and platform support; they are not configured by this exercise.

Add IPv6 to the existing lab cable

Keep company R1 in AS 64500 and ISP A in AS 64501, using their existing Gi0/0 cable. Add IPv6 addresses 2001:db8:12::1/64 and 2001:db8:12::2/64 to those ports. R1’s Loopback20 represents company prefix 2001:db8:100::/64; ISP A’s represents provider prefix 2001:db8:200::/64. The IPv4 settings and filters from the first lab remain in place.

One physical link, separate IPv4 and IPv6 peer addresses
One physical link, separate IPv4 and IPv6 peer addressesCompany router R1 in AS 64500 connects Gi0/0 to ISP A Gi0/0 in AS 64501. R1 uses 192.0.2.2/30 and 2001:db8:12::1/64; ISP A uses 192.0.2.1/30 and 2001:db8:12::2/64. Existing IPv4 BGP remains. A new IPv6 TCP connection exchanges IPv6 unicast routes. R1 Loopback20 is 2001:db8:100::1/64 and ISP A Loopback20 is 2001:db8:200::1/64.R1 · AS 64500Loopback202001:db8:100::1/64ISP A · AS 64501Loopback202001:db8:200::1/64Gi0/0 · 192.0.2.2/302001:db8:12::1/64Gi0/0 · 192.0.2.1/302001:db8:12::2/64

On small screens, swipe sideways or focus the diagram and use the arrow keys.

The two IP versions share a cable but have separate reachability and peer configuration. The new IPv6 session does not translate the existing IPv4 routes into IPv6.

These Cisco IOS XE 17.x router examples start in global configuration mode in an isolated lab. Confirm IPv6/BGP support and interface names on the exact image. The 2001:db8:: addresses are documentation examples, not public Internet allocations. The existing dotted-decimal BGP router IDs remain identifiers; they do not become IPv6 peer addresses.

ipv6 unicast-routing interface GigabitEthernet0/0 ipv6 address 2001:db8:12::1/64 no shutdown exit interface Loopback20 ipv6 address 2001:db8:100::1/64 exit

R1: enable IPv6 forwarding and add the link and local destination addresses. These commands do not remove its IPv4 addresses.

ipv6 unicast-routing interface GigabitEthernet0/0 ipv6 address 2001:db8:12::2/64 no shutdown exit interface Loopback20 ipv6 address 2001:db8:200::1/64 exit

ISP A: add the other link endpoint and a separate provider destination prefix.

In privileged EXEC, check show ipv6 interface brief and show ipv6 route. R1 should reach 2001:db8:12::2, and ISP A should reach 2001:db8:12::1. Verify the local loopback /64 is installed before requesting BGP origination. A successful peer ping does not test whether TCP 179 or BGP capabilities are correct.

Activate only the intended family and prefixes

Use ipv6 prefix-list for IPv6 routes. Each entry below permits one exact /64; without ge/le modifiers it does not permit every more-specific subnet. The neighbour’s remote-as defines its AS relationship. The activate command under IPv6 unicast enables that family for this peer.

Activate the family
Activate the familyA neighbour must be activated before routes flow.neighbor remote-assessionaddress-family ipv6enter the familyneighbor activateroutes can flownetworkadvertise a prefix

On small screens, swipe sideways or focus the diagram and use the arrow keys.

An Established session with no routes often means the family was never activated.
ipv6 prefix-list COMPANY-V6 seq 10 permit 2001:db8:100::/64 ipv6 prefix-list ISPA-V6 seq 10 permit 2001:db8:200::/64 router bgp 64500 no bgp default ipv4-unicast neighbor 2001:db8:12::2 remote-as 64501 address-family ipv6 unicast neighbor 2001:db8:12::2 activate neighbor 2001:db8:12::2 prefix-list ISPA-V6 in neighbor 2001:db8:12::2 prefix-list COMPANY-V6 out network 2001:db8:100::/64 exit-address-family

R1: retain the existing IPv4 peer and address family, add the IPv6 peer, accept only the provider /64 and export only the company /64.

ipv6 prefix-list COMPANY-V6 seq 10 permit 2001:db8:100::/64 ipv6 prefix-list ISPA-V6 seq 10 permit 2001:db8:200::/64 router bgp 64501 no bgp default ipv4-unicast neighbor 2001:db8:12::1 remote-as 64500 address-family ipv6 unicast neighbor 2001:db8:12::1 activate neighbor 2001:db8:12::1 prefix-list COMPANY-V6 in neighbor 2001:db8:12::1 prefix-list ISPA-V6 out network 2001:db8:200::/64 exit-address-family

ISP A: activate IPv6 for R1 and apply the matching opposite-direction prefix policy.

The existing course configuration already uses no bgp default ipv4-unicast. Keeping it here makes new-neighbour activation explicit; it is not an instruction to remove the established IPv4 neighbour’s explicit activation. The IPv6 network line requests origination of a prefix with an exact matching route in the IPv6 routing table. It does not discover that route or configure an interface.

Address-family activation, local route origination and prefix filtering are separate checks. A missing advertisement can result from any one of them while basic IP reachability still works.

The TCP endpoints and advertised destination are different fields
The TCP endpoints and advertised destination are different fieldsAn illustrative UPDATE from ISP A to R1 travels in the IPv6 TCP connection from 2001:db8:12::2 to 2001:db8:12::1. MP_REACH_NLRI identifies IPv6 unicast with AFI 2 and SAFI 1, a global next hop 2001:db8:12::2 and destination prefix 2001:db8:200::/64. The next-hop field can also include a link-local address on a shared link.TCP over IPv6 · ISP A → R1 · BGP messages2001:db8:12::2 → 2001:db8:12::1UPDATE · MP_REACH_NLRIAFI 2 + SAFI 1 = IPv6 unicastGlobal next hop: 2001:db8:12::2Destination prefix: 2001:db8:200::/64

On small screens, swipe sideways or focus the diagram and use the arrow keys.

A teaching view of the information, not a byte-accurate capture. MP_REACH_NLRI carries reachability and next-hop information; MP_UNREACH_NLRI withdraws destinations for the identified family.

NLRI means Network Layer Reachability Information: the destination prefixes being announced. MP_REACH_NLRI includes the family and next-hop information for reachable destinations; MP_UNREACH_NLRI carries withdrawals. The advertised destination /64 is different from the TCP peer address. On a directly connected IPv6 link, advertised next-hop information can also include a link-local address; inspect the actual next hop and outgoing interface.

Verify the family, the route and the return path

show bgp ipv6 unicast summary show bgp ipv6 unicast neighbors 2001:db8:12::2 show bgp ipv6 unicast 2001:db8:200::/64 show ipv6 route 2001:db8:200::/64

Privileged EXEC on R1. Check the IPv6 family and negotiated neighbour capability, then the received path and installed route. Output layout varies by image.

Example output
R1#show bgp ipv6 unicast neighbors 2001:db8:12::2
BGP neighbor is 2001:DB8:12::2, remote AS 64501, external link
  BGP state = Established
  Neighbor capabilities:
    Address family IPv6 Unicast: advertised and received

This excerpt proves the peer state and mutual IPv6 capability in the example; it does not prove that a prefix arrived. In the IPv6 summary, a numeric prefix count is different from a state such as Active. Zero received prefixes can coexist with an established session: check the exact local route, network statement and both peers’ filters.

Verify in four steps
Verify in four stepsFamily, advertisement, route and return path.FamilyIPv6 summaryRouteshow bgp ipv6 unicastInstalledshow ipv6 route bgpReturn pathfar side replies

On small screens, swipe sideways or focus the diagram and use the arrow keys.

A one-way check passes in the lab and fails in production.

On R1, confirm the provider /64 is eligible in BGP and installed in the IPv6 routing table, with a reachable next hop. Then test ping ipv6 2001:db8:200::1 source Loopback20. On ISP A, verify a route back to 2001:db8:100::/64 and test the reverse source-loopback ping. Check the existing IPv4 summary separately so the new work does not hide a regression.

Break an advertisement without breaking its cable

  1. Record the IPv6 peer state, received prefix and installed route on both routers. Keep the original IPv4 checks as a separate baseline.
  2. On ISP A, remove only network 2001:db8:200::/64 under address-family ipv6 unicast. In this lab no other origination method supplies it. After withdrawal, R1 should lose that destination while the IPv6 peer can remain Established.
  3. Restore the same network line, verify ISP A’s local /64 still exists, then confirm R1 learns and installs it again. Repeat the source-loopback ping and return-route check.
  4. If a route is absent despite a working peer, inspect activation, origination and policy before clearing the entire BGP process. Do not remove prefix filters to make a test pass.

The trade-off is additional routing policy and verification. IPv4 success is useful evidence for that family; it does not replace IPv6 neighbour discovery, routes, filters or return-path checks.

Three ways to lose a route
Three ways to lose a routeThe cable and session can be fine while a route is missing.Session up, route missingFamily not activatedno routes at allPrefix not originatednetwork statement orroute missingPolicy drops itinbound or outboundfilter

On small screens, swipe sideways or focus the diagram and use the arrow keys.

Check the family, the origination and the policy in that order.

Check your address-family reasoning

Predict · scenario 1

The IPv4 peer is Established. Does that prove it exchanges IPv6 unicast routes?

Predict · scenario 2

ISP A removes its only network 2001:db8:200::/64 line. The IPv6 peer remains Established. Is that contradictory?

Predict · scenario 3

A policy permits exactly 2001:db8:200::/64, without ge or le. Does it also permit 2001:db8:200:1::/64?

Protocol and platform references

See RFC 4760 for multiprotocol attributes and capability exchange, RFC 2545 for IPv6 next-hop/transport distinctions and Cisco’s IOS XE 17.x IPv6 BGP guide for the configuration model. Commands and output are authored learning examples, not router captures. Verify exact software support before running a lab.