Hi Lou, Sorry for wrong alarm related to error message "UPDATE with unsupported AFI/SAFI 0/0" error message".
Following the EVPN trial regarding remotes/labnc/patches/R1.0.20160315+vnc/v2, I managed to compile, launch, and exchange BGP messages through a mesh configuration. I will continue the review the patch code, and get back to you quickly, Best Regards, Philippe On Mon, Jun 6, 2016 at 6:00 PM, Philippe Guibert <philippe.guib...@6wind.com> wrote: > Hi Lou, > > I am looking deeper at EVPN implementation, with patch "VNC; L3 & L2 > VPN application support". > To get more familiar with this, I tried to mount a setup based on Mesh > NVA configuration example that can be found on doc/vnc.texi file, and > make a BGP exchange between the two BGP speakers. > At establishment, I got this error message : unsupported AFI/SAFI 0/0. > > So , I am wondering if there is a setup issue, or a side effect due to > some mis-configurations ? > I only took 2 BGP Speakers instead of 3 ( I don't think it should > affect the behaviour). > I am based on (HEAD, origin/patches/LabN/R1.0.20160315+vnc/v2) bgpd: > add L3/L2VPN > I compiled with vnc support, and tested on ubuntu14.04 release. > You can find attached the log message obtained on my console, as well > as the bgp configuration used, and the wireshark capture file during > the BGP exchange. > > Do you have an idea how I could overcome this issue ? > Thanks in advance, > > Best Regards, > > Philippe > ================================================================================ > > *error messages i had* > 2016/06/06 17:08:33 BGP: %ADJCHANGE: neighbor 10.125.0.1 Up > 2016/06/06 17:08:34 BGP: unknown afi/safi (0/0) > 2016/06/06 17:08:34 BGP: 10.125.0.1 [Info] UPDATE with unsupported AFI/SAFI > 0/0 > 2016/06/06 17:08:34 BGP: unknown afi/safi (0/0) > 2016/06/06 17:08:34 BGP: 10.125.0.1 [Info] UPDATE with unsupported AFI/SAFI > 0/0 > 2016/06/06 17:08:34 BGP: unknown afi/safi (0/0) > 2016/06/06 17:08:34 BGP: 10.125.0.1 [Info] UPDATE with unsupported AFI/SAFI > 0/0 > 2016/06/06 17:08:34 BGP: unknown afi/safi (0/0) > 2016/06/06 17:08:34 BGP: 10.125.0.1 [Info] UPDATE with unsupported AFI/SAFI > 0/0 > 2016/06/06 17:08:39 BGP: Import timer expired. > > > *configuration used * > > hostname nva1 > password zebra > log stdout > service advanced-vty > ! > router bgp 64512 > bgp router-id 10.125.0.2 > neighbor 10.125.0.1 remote-as 64512 > ! > address-family vpnv4 > neighbor 10.125.0.1 activate > exit-address-family > vnc defaults > rd 64512:1 > response-lifetime 200 > rt both 1000:1 1000:2 > exit-vnc > ! > > hostname nva2 > password zebra > log stdout > service advanced-vty > ! > router bgp 64512 > bgp router-id 10.125.0.1 > neighbor 10.125.0.2 remote-as 64512 > ! > address-family vpnv4 > neighbor 10.125.0.2 activate > exit-address-family > vnc defaults > rd 64512:1 > response-lifetime 200 > rt both 1000:1 1000:2 > exit-vnc > ! > vnc nve-group group1 > prefix vn 172.16.128.0/17 > rd 64512:1 > rt both 1000:1 1000:2 > exit-vnc > ! > > On Tue, May 17, 2016 at 1:10 PM, Lou Berger <lber...@labn.net> wrote: >> This patch set adds an L3 & L2 VPN application that makes use of the VPN >> and Encap SAFIs. This code is currently used to support IETF NVO3 style >> operation. In NVO3 terminology it provides the Network Virtualization >> Authority (NVA) and the ability to import/export IP prefixes and MAC >> addresses from Network Virtualization Edges (NVEs). The code supports >> per-NVE tables (VRFs/VSIs). >> >> The NVE-NVA protocol used to communicate routing and Ethernet / Layer 2 >> (L2) forwarding information between NVAs and NVEs is referred to as the >> Remote Forwarder Protocol (RFP). OpenFlow is an example RFP. RFPs are >> integrated with BGP via the RF API contained in the new "rfapi" BGP >> sub-directory. Currently, only a simple example RFP is included in >> Quagga. Developers may use this example as a starting point to integrate >> Quagga with an RFP of their choosing, e.g., OpenFlow. The RFAPI code >> also supports the ability to import/export of routing information >> between VNC and customer edge routers (CEs) operating within a virtual >> network. Import/export may take place between BGP views or to the >> default zebra VRF. >> >> BGP, with IP VPNs and Tunnel Encapsulation, is used to distribute VPN >> information between NVAs. BGP based IP VPN support is defined in >> RFC4364, BGP/MPLS IP Virtual Private Networks (VPNs), and RFC4659, >> BGP-MPLS IP Virtual Private Network (VPN) Extension for IPv6 VPN . Use >> of both the Encapsulation Subsequent Address Family Identifier (SAFI) >> and the Tunnel Encapsulation Attribute, RFC5512, The BGP Encapsulation >> Subsequent Address Family Identifier (SAFI) and the BGP Tunnel >> Encapsulation Attribute, are supported. The code is tunnely type >> agnostic. MAC address distribution does not follow any standard BGB >> encoding, although it was inspired by the early IETF EVPN concepts. >> The intent is that the RF API would not need to change with support >> of standards-based EVPN. >> >> The feature is conditionally compiled and disabled by default. >> Use the --enable-bgp-vnc configure option to enable. >> >> Collectively, we refer to this feature as Virtual Network >> Control, or VNC. >> >> The majority of this code was authored by G. Paul Ziemba >> <pa...@labn.net>. This patch set is also available at >> https://github.com/LabNConsulting/quagga-vnc/tree/patches/R1.0.20160315+vnc/v2 >> >> The following patches are included in the patch set. >> >> basic rel1.0 cleanup: >> [PATCH 01/10] lib: fix memory leak in zprivs_caps_init >> [PATCH 02/10] lib/vty: silence clang -Wparentheses-equality >> [PATCH 03/10] bgpd: cleanup clang uninitialized variable warning >> >> debug/testing support: >> [PATCH 04/10] bgp: add "debug bgp allow-martians" next hops and >> [PATCH 05/10] bgpd: add -S / --skip_runas flag to not change >> [PATCH 06/10] lib: dump memory stats on core >> >> some standalone lib changes in support of vnc >> [PATCH 07/10] lib: add skiplist >> [PATCH 08/10] lib: add route_table_get_default_delegate >> [PATCH 09/10] lib: add AF_ETHERNET/AFI_ETHER >> >> vnc/rfapi: >> [PATCH 10/10] bgpd: add L3/L2VPN Virtual Network Control feature >> >> overall: >> Makefile.am | 5 +- >> bgpd/Makefile.am | 77 +- >> bgpd/bgp_attr.c | 90 +- >> bgpd/bgp_attr.h | 18 + >> bgpd/bgp_debug.c | 58 + >> bgpd/bgp_debug.h | 3 + >> bgpd/bgp_ecommunity.c | 4 +- >> bgpd/bgp_ecommunity.h | 3 + >> bgpd/bgp_encap.c | 12 + >> bgpd/bgp_main.c | 20 +- >> bgpd/bgp_mplsvpn.c | 73 +- >> bgpd/bgp_mplsvpn.h | 29 + >> bgpd/bgp_nexthop.h | 2 + >> bgpd/bgp_open.c | 2 + >> bgpd/bgp_route.c | 255 +- >> bgpd/bgp_route.h | 39 + >> bgpd/bgp_routemap.c | 7 + >> bgpd/bgp_vnc_types.h | 41 + >> bgpd/bgp_zebra.c | 16 + >> bgpd/bgpd.c | 31 +- >> bgpd/bgpd.conf.vnc.sample | 89 + >> bgpd/bgpd.h | 16 + >> bgpd/rfapi/bgp_rfapi_cfg.c | 4665 >> +++++++++++++++++++++++++++ >> bgpd/rfapi/bgp_rfapi_cfg.h | 312 ++ >> bgpd/rfapi/rfapi.c | 4405 ++++++++++++++++++++++++++ >> bgpd/rfapi/rfapi.h | 982 ++++++ >> bgpd/rfapi/rfapi_ap.c | 629 ++++ >> bgpd/rfapi/rfapi_ap.h | 99 + >> bgpd/rfapi/rfapi_backend.h | 92 + >> bgpd/rfapi/rfapi_descriptor_rfp_utils.c | 136 + >> bgpd/rfapi/rfapi_descriptor_rfp_utils.h | 39 + >> bgpd/rfapi/rfapi_encap_tlv.c | 812 +++++ >> bgpd/rfapi/rfapi_encap_tlv.h | 43 + >> bgpd/rfapi/rfapi_import.c | 5064 >> ++++++++++++++++++++++++++++++ >> bgpd/rfapi/rfapi_import.h | 275 ++ >> bgpd/rfapi/rfapi_monitor.c | 1644 ++++++++++ >> bgpd/rfapi/rfapi_monitor.h | 215 ++ >> bgpd/rfapi/rfapi_nve_addr.c | 179 ++ >> bgpd/rfapi/rfapi_nve_addr.h | 43 + >> bgpd/rfapi/rfapi_private.h | 426 +++ >> bgpd/rfapi/rfapi_rib.c | 2436 ++++++++++++++ >> bgpd/rfapi/rfapi_rib.h | 145 + >> bgpd/rfapi/rfapi_vty.c | 5037 >> +++++++++++++++++++++++++++++ >> bgpd/rfapi/rfapi_vty.h | 223 ++ >> bgpd/rfapi/vnc_debug.c | 230 ++ >> bgpd/rfapi/vnc_debug.h | 49 + >> bgpd/rfapi/vnc_export_bgp.c | 2204 +++++++++++++ >> bgpd/rfapi/vnc_export_bgp.h | 42 + >> bgpd/rfapi/vnc_export_bgp_p.h | 95 + >> bgpd/rfapi/vnc_export_table.c | 215 ++ >> bgpd/rfapi/vnc_export_table.h | 85 + >> bgpd/rfapi/vnc_import_bgp.c | 3173 +++++++++++++++++++ >> bgpd/rfapi/vnc_import_bgp.h | 93 + >> bgpd/rfapi/vnc_import_bgp_p.h | 51 + >> bgpd/rfapi/vnc_zebra.c | 1141 +++++++ >> bgpd/rfapi/vnc_zebra.h | 67 + >> bgpd/rfp-example/librfp/Makefile.am | 39 + >> bgpd/rfp-example/librfp/rfp.h | 31 + >> bgpd/rfp-example/librfp/rfp_example.c | 286 ++ >> bgpd/rfp-example/librfp/rfp_internal.h | 29 + >> bgpd/rfp-example/rfptest/Makefile.am | 51 + >> bgpd/rfp-example/rfptest/rfptest.c | 32 + >> bgpd/rfp-example/rfptest/rfptest.h | 26 + >> configure.ac | 35 + >> doc/Makefile.am | 33 +- >> doc/bgpd.8 | 5 +- >> doc/bgpd.texi | 5 + >> doc/fig-vnc-commercial-route-reflector.dia | 794 +++++ >> doc/fig-vnc-commercial-route-reflector.png | Bin 0 -> 50984 bytes >> doc/fig-vnc-commercial-route-reflector.txt | 0 >> doc/fig-vnc-gw-rr.dia | 1155 +++++++ >> doc/fig-vnc-gw-rr.png | Bin 0 -> 80004 bytes >> doc/fig-vnc-gw-rr.txt | 0 >> doc/fig-vnc-gw.dia | 1058 +++++++ >> doc/fig-vnc-gw.png | Bin 0 -> 67376 bytes >> doc/fig-vnc-gw.txt | 0 >> doc/fig-vnc-mesh.dia | 1071 +++++++ >> doc/fig-vnc-mesh.png | Bin 0 -> 61028 bytes >> doc/fig-vnc-mesh.txt | 0 >> doc/fig-vnc-quagga-route-reflector.dia | 763 +++++ >> doc/fig-vnc-quagga-route-reflector.png | Bin 0 -> 49978 bytes >> doc/fig-vnc-quagga-route-reflector.txt | 0 >> doc/fig-vnc-redundant-route-reflectors.dia | 871 +++++ >> doc/fig-vnc-redundant-route-reflectors.png | Bin 0 -> 75353 bytes >> doc/fig-vnc-redundant-route-reflectors.txt | 0 >> doc/ospfd.texi | 4 + >> doc/quagga.texi | 8 +- >> doc/routemap.texi | 2 +- >> doc/vnc.texi | 1584 ++++++++++ >> lib/Makefile.am | 6 +- >> lib/command.c | 10 + >> lib/command.h | 5 + >> lib/log.c | 54 +- >> lib/log.h | 7 + >> lib/memtypes.c | 42 + >> lib/plist.c | 5 + >> lib/prefix.c | 114 +- >> lib/prefix.h | 43 + >> lib/privs.c | 7 + >> lib/route_types.txt | 14 +- >> lib/sigevent.c | 2 + >> lib/skiplist.c | 668 ++++ >> lib/skiplist.h | 144 + >> lib/table.c | 6 + >> lib/table.h | 3 + >> lib/vty.c | 5 +- >> lib/zebra.h | 9 +- >> redhat/quagga.spec.in | 6 + >> ripd/rip_zebra.c | 1 + >> ripngd/ripng_zebra.c | 1 + >> tests/Makefile.am | 17 +- >> vtysh/Makefile.am | 22 +- >> vtysh/extract.pl.in | 8 +- >> vtysh/vtysh.c | 101 + >> vtysh/vtysh_config.c | 9 + >> zebra/zserv.c | 6 + >> 116 files changed, 45373 insertions(+), 60 deletions(-) >> >> _______________________________________________ >> Quagga-dev mailing list >> Quagga-dev@lists.quagga.net >> https://lists.quagga.net/mailman/listinfo/quagga-dev _______________________________________________ Quagga-dev mailing list Quagga-dev@lists.quagga.net https://lists.quagga.net/mailman/listinfo/quagga-dev