[quagga-dev 3894] BGP 'next-hop' attribute with IPv6 - ignored ?

Hajnalka Köntös hkontos at gmail.com
Fri Dec 9 10:30:12 GMT 2005

The 'next-hop' attribute of quagga BGP using IPv6 seems to be ignored
in bgp updates and not to be synchronized with the linux routing
table. I use quagga 0.98.3. Is it a bug? Is this problem resolved in
newer versions?

If I define a route map for a bgp neighbor containing a next-hop
statement with a custom global IPv6 address (not the default,
interface address), then bgp database shows the next-hop as the
interface global IPv6 address, and the neighbor quagga bgp router's
routing table shows the next-hop as the interface link-local IPv6

Thank you for any advice or opinion.

-- details:-----


routerA: interface global IPv6 address or routerA : 2001:6:6:6::172
routerA: BGP neighbor router: 2001:6:6:6::1 (=routerB)
routerA: I would like to set the 'next-hop' attribute for this
neighbor to 2001:6:6:6::173.

routerA: /etc/quagga/bgpd.conf:

hostname routerA
router bgp 64160
 no bgp default ipv4-unicast
 neighbor 2001:6:6:6::1 remote-as 64160
 neighbor 2001:6:6:6::1 interface eth1
 address-family ipv6
 network 2001:6:6:6::/64
 redistribute connected
 redistribute kernel
 redistribute static
 neighbor 2001:6:6:6::1 activate
 neighbor 2001:6:6:6::1 timers 10 30
 neighbor 2001:6:6:6::1 update-source 2001:6:6:6::172
 neighbor 2001:6:6:6::1 route-map set-nexthop out
! exit-address-family
ipv6 access-list all permit any
route-map set-nexthop permit 10
 match ipv6 address all
 set ipv6 next-hop global 2001:6:6:6::173     <--- ignored in the bgp updates
 set ipv6 next-hop local fe80::ccc:ccc    <--- ignored in the bgp updates
 set ip next-hop

routerA-bgpd6> show ver
Quagga 0.98.3 (routerA-bgpd6).

routerA-bgpd6> show bgp ipv6 neighbors
BGP neighbor is 2001:6:6:6::1, remote AS 64160, local AS 64160, internal link
  BGP version 4, remote router ID
  BGP state = Established, up for 00:11:06
  Last read 00:00:08, hold time is 30, keepalive interval is 10 seconds
  Configured hold time is 30, keepalive interval is 10 seconds
  Neighbor capabilities:
    Route refresh: advertised and received(old & new)
    Address family IPv6 Unicast: advertised and received
  Received 71 messages, 1 notifications, 0 in queue
  Sent 112 messages, 0 notifications, 0 in queue
  Route refresh request: received 0, sent 0
  Minimum time between advertisement runs is 5 seconds
  Update source is 2001:6:6:6::172

 For address family: IPv6 Unicast
  Community attribute sent to this neighbor(both)
  3 accepted prefixes

  Connections established 2; dropped 1
  Last reset 00:12:09, due to BGP Notification received
Local host: 2001:6:6:6::172, Local port: 179
Foreign host: 2001:6:6:6::1, Foreign port: 4227
Nexthop global: 2001:6:6:6::172        <----- interface address, not
the configured value
Nexthop local: fe80::20c:29ff:fe68:27ec <----- interface address, not
the configured value
BGP connection: shared network
Read thread: on  Write thread: off


routerB-bgp6> show bgp ipv6
   Network          Next Hop            Metric LocPrf Weight Path
*>i2001:66:66:66::/64   2001:6:6:6::172          0    100      0 ?
...  <----- The next hop here is the neighbor's inteface global IPv6
address, not the configured value

routerB# ip -6 route show
2001:66:66:66::/64 via fe80::20c:29ff:fe68:27ec dev es3p0  proto zebra
 metric 1024  mtu 1500 advmss 1440 metric10 4294967295
... <----- The next hop here is the neighbor's interface link local
IPv6 address, not the configured value

routerB-bgp6> show ver
Quagga 0.98.3 (routerB-bgp6).

More information about the Quagga-dev mailing list