diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-06-11 09:19:12 -0700 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-06-11 09:19:12 -0700 |
| commit | 8a92a8a00ca49ad801dbcfcd02bfb65ea1f4b83e (patch) | |
| tree | a33248e6de30e1c443af56b792d4a26b258e742f /lib/zclient.h | |
| parent | 2d627ff50c181a26839aef7c0fc48ea4621b3e64 (diff) | |
bgpd, zebra: rfc-5549-generic.patch
This adds support for BGP RFC 5549 (Extended Next Hop Encoding capability)
* send and receive of the capability
* processing of IPv4->IPv6 next-hops
* for resolving these IPv6 next-hops, itsworks with the current
next-hop-tracking support
* added a new message type between BGP and Zebra for such route
install/uninstall
* zserv side of changes to process IPv4 prefix ->IPv6 next-hops
* required show command changes for IPv4 prefix having IPv6 next-hops
Few points to note about the implementation:
* It does an implicit next-hop-self when a [IPv4 prefix -> IPv6 LL next-hop]
is to be considered for advertisement to IPv4 peering (or IPv6 peering
without Extended next-hop capability negotiated)
* Currently feature is off by default, enable it by configuring
'neighbor <> capability extended-nexthop'
* Current support is for IPv4 Unicast prefixes only.
IMPORTANT NOTE:
This patch alone isn't enough to have IPv4->IPv6 routes installed into
the kernel. A separate patch is needed for that to work for the netlink
interface.
Signed-off-by: Vipin Kumar <vipin@cumulusnetworks.com>
Reviewed-by: Daniel Walton <dwalton@cumulusnetworks.com>
Vivek Venkatraman <vivek@cumulusnetworks.com>
Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'lib/zclient.h')
| -rw-r--r-- | lib/zclient.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/zclient.h b/lib/zclient.h index bb8a87b145..bd4d06647d 100644 --- a/lib/zclient.h +++ b/lib/zclient.h @@ -212,6 +212,8 @@ struct zapi_ipv6 extern int zapi_ipv6_route (u_char cmd, struct zclient *zclient, struct prefix_ipv6 *p, struct zapi_ipv6 *api); +extern int zapi_ipv4_route_ipv6_nexthop (u_char, struct zclient *, + struct prefix_ipv4 *, struct zapi_ipv6 *); #endif /* HAVE_IPV6 */ #endif /* _ZEBRA_ZCLIENT_H */ |
