Git Product home page Git Product logo

goplane's People

Contributors

aledbf avatar nerdalert avatar soramichi avatar ttsubo avatar yokoi-h avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

goplane's Issues

Changes to external projects have broken this

go get github.com/osrg/goplane/
can't load package: package github.com/osrg/goplane: case-insensitive import collision: "github.com/Sirupsen/logrus" and "github.com/sirupsen/logrus"

This may be because I have the latest gobgp. I am trying to work around, but seeing some other issues

goplane evpn/vxlan demo doesn't work well

Hi, expert.

I try to play goplane evpn/vxlan demo - 'evpn_vxlan_test.py' on my virtual machine, but it doesn't work well.

The OS I use is Ubuntu 16.04 (xenial)

I attach an error message when I run even_vxlan_test.py below.
Do you know any solution for fixing this problem?

root@ubuntu-xenial:~/.golang/src/github.com/osrg/goplane# PYTHONPATH=$GOPLANE/test python $GOPLANE/test/netlink/evpn_vxlan_test.py
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 3
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=g1 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/g1/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21223
DEBUG:nsenter:Leaving net namespace 21223
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 535
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=g2 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/g2/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21256
DEBUG:nsenter:Leaving net namespace 21256
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 1068
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=g3 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/g3/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21291
DEBUG:nsenter:Leaving net namespace 21291
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 1591
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=h1 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/h1/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/h1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21327
DEBUG:nsenter:Leaving net namespace 21327
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 1989
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=h2 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/h2/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/h2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21363
DEBUG:nsenter:Leaving net namespace 21363
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=h3 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/h3/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/h3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21403
DEBUG:nsenter:Leaving net namespace 21403
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=j1 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/j1/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/j1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21443
DEBUG:nsenter:Leaving net namespace 21443
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=j2 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/j2/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/j2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21493
DEBUG:nsenter:Leaving net namespace 21493
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/create?name=j3 HTTP/1.1" 201 90
DEBUG:requests.packages.urllib3.connectionpool:"POST /v1.24/containers/j3/start HTTP/1.1" 204 0
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/j3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21532
DEBUG:nsenter:Leaving net namespace 21532
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21223
DEBUG:nsenter:Leaving net namespace 21223
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21256
DEBUG:nsenter:Leaving net namespace 21256
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21291
DEBUG:nsenter:Leaving net namespace 21291
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21223
DEBUG:nsenter:Leaving net namespace 21223
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/h1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21327
DEBUG:nsenter:Leaving net namespace 21327
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21256
DEBUG:nsenter:Leaving net namespace 21256
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/h2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21363
DEBUG:nsenter:Leaving net namespace 21363
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21291
DEBUG:nsenter:Leaving net namespace 21291
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/h3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21403
DEBUG:nsenter:Leaving net namespace 21403
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21223
DEBUG:nsenter:Leaving net namespace 21223
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/j1/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21443
DEBUG:nsenter:Leaving net namespace 21443
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21256
DEBUG:nsenter:Leaving net namespace 21256
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/j2/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21493
DEBUG:nsenter:Leaving net namespace 21493
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/g3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21291
DEBUG:nsenter:Leaving net namespace 21291
DEBUG:requests.packages.urllib3.connectionpool:"GET /v1.24/containers/j3/json HTTP/1.1" 200 None
DEBUG:nsenter:Entering net namespace 21532
DEBUG:nsenter:Leaving net namespace 21532
EEDEBUG:root:Network                                                                                       Next Hop             AS_PATH              Age        Attrs
*>  [type:macadv][rd:0:0][esi:single-homed][etag:10][mac:aa:aa:aa:aa:aa:01][ip:<nil>][labels:[10]]0.0.0.0                                   00:04:27   [{Origin: i} {Extcomms: [VXLAN]}]
*>  [type:macadv][rd:0:0][esi:single-homed][etag:10][mac:c6:35:fe:a1:40:85][ip:<nil>][labels:[10]]0.0.0.0                                   00:04:27   [{Origin: i} {Extcomms: [VXLAN]}]
*>  [type:macadv][rd:0:0][esi:single-homed][etag:20][mac:aa:aa:aa:aa:aa:01][ip:<nil>][labels:[20]]0.0.0.0                                   00:04:26   [{Origin: i} {Extcomms: [VXLAN]}]
*>  [type:macadv][rd:0:0][esi:single-homed][etag:20][mac:f2:d2:d5:a3:36:b1][ip:<nil>][labels:[20]]0.0.0.0                                   00:04:27   [{Origin: i} {Extcomms: [VXLAN]}]
*>  [type:multicast][rd:65000:10][etag:10][ip:192.168.0.1]0.0.0.0                                   00:04:27   [{Origin: i} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.1} {Extcomms: [65000:10]}]
*>  [type:multicast][rd:65000:20][etag:20][ip:192.168.0.1]0.0.0.0                                   00:04:27   [{Origin: i} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.1} {Extcomms: [65000:20]}]
.
======================================================================
ERROR: test_01_neighbor_established (evpn_vxlan_test.Test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/root/.golang/src/github.com/osrg/goplane/test/netlink/evpn_vxlan_test.py", line 97, in test_01_neighbor_established
 raise Exception('timeout')
Exception: timeout
-------------------- >> begin captured stdout << ---------------------
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j
[localhost] local: docker exec  g1 gobgp neighbor -j

--------------------- >> end captured stdout << ----------------------
-------------------- >> begin captured logging << --------------------
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 3
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=g1 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/g1/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21223
nsenter: DEBUG: Leaving net namespace 21223
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 535
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=g2 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/g2/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21256
nsenter: DEBUG: Leaving net namespace 21256
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 1068
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=g3 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/g3/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21291
nsenter: DEBUG: Leaving net namespace 21291
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 1591
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=h1 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/h1/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/h1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21327
nsenter: DEBUG: Leaving net namespace 21327
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 1989
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=h2 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/h2/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/h2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21363
nsenter: DEBUG: Leaving net namespace 21363
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=h3 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/h3/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/h3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21403
nsenter: DEBUG: Leaving net namespace 21403
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=j1 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/j1/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/j1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21443
nsenter: DEBUG: Leaving net namespace 21443
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=j2 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/j2/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/j2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21493
nsenter: DEBUG: Leaving net namespace 21493
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/json?all=1&limit=-1&trunc_cmd=0&size=0 HTTP/1.1" 200 None
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/create?name=j3 HTTP/1.1" 201 90
requests.packages.urllib3.connectionpool: DEBUG: "POST /v1.24/containers/j3/start HTTP/1.1" 204 0
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/j3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21532
nsenter: DEBUG: Leaving net namespace 21532
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21223
nsenter: DEBUG: Leaving net namespace 21223
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21256
nsenter: DEBUG: Leaving net namespace 21256
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21291
nsenter: DEBUG: Leaving net namespace 21291
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21223
nsenter: DEBUG: Leaving net namespace 21223
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/h1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21327
nsenter: DEBUG: Leaving net namespace 21327
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21256
nsenter: DEBUG: Leaving net namespace 21256
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/h2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21363
nsenter: DEBUG: Leaving net namespace 21363
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21291
nsenter: DEBUG: Leaving net namespace 21291
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/h3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21403
nsenter: DEBUG: Leaving net namespace 21403
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21223
nsenter: DEBUG: Leaving net namespace 21223
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/j1/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21443
nsenter: DEBUG: Leaving net namespace 21443
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21256
nsenter: DEBUG: Leaving net namespace 21256
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/j2/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21493
nsenter: DEBUG: Leaving net namespace 21493
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/g3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21291
nsenter: DEBUG: Leaving net namespace 21291
requests.packages.urllib3.connectionpool: DEBUG: "GET /v1.24/containers/j3/json HTTP/1.1" 200 None
nsenter: DEBUG: Entering net namespace 21532
nsenter: DEBUG: Leaving net namespace 21532
--------------------- >> end captured logging << ---------------------

======================================================================
ERROR: test_02_ping_check (evpn_vxlan_test.Test)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/root/.golang/src/github.com/osrg/goplane/test/netlink/evpn_vxlan_test.py", line 106, in test_02_ping_check
 raise Exception('timeout')
Exception: timeout
-------------------- >> begin captured stdout << ---------------------
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'
[localhost] local: docker exec  h1 bash -c 'ping -c 1 10.10.10.3 2>&1 > /dev/null && echo true || echo false'

--------------------- >> end captured stdout << ----------------------

----------------------------------------------------------------------
Ran 3 tests in 273.745s

FAILED (errors=2)

regards,

iptables test: "listen tcp :50051: bind: address already in use"

uname -a
Linux c 3.16.0-77-generic #99~14.04.1-Ubuntu SMP Tue Jun 28 19:17:10 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

I had to change goplaned to goplane inside goplane/test/iptables/demo.py, otherwise prepare fails.
Similar in goplane/test/iptables/Dockerfile I changed goplane/goplaned to goplane.

sudo ./demo.py prepare and sudo ./demo.py are completed without errors, but in the logs I see "address already in use" errors

cat /tmp/goplane/g1/goplane.log
time="2018-02-01T14:02:37Z" level=error msg="Invalid dataplane type(). dataplane engine can't be started"
time="2018-02-01T14:02:37Z" level=warning msg="listen failed" Error="listen tcp :50051: bind: address already in use" Key=":50051" Topic=grpc
time="2018-02-01T14:02:37Z" level=info msg="cleared iptables chain: FORWARD, table: filter"

cat /tmp/goplane/g1/gobgpd.log
time="2018-02-01T14:02:37Z" level=info msg="gobgpd started"
time="2018-02-01T14:02:37Z" level=warning msg="listen failed" Error="listen tcp :50051: bind: address already in use" Key=":50051" Topic=grpc
time="2018-02-01T14:02:37Z" level=info msg="listen tcp 127.0.0.1:6060: bind: address already in use"
time="2018-02-01T14:02:37Z" level=info msg="Finished reading the config file" Topic=Config
time="2018-02-01T14:02:37Z" level=fatal msg="failed to set global config: listen tcp4 0.0.0.0:179: bind: address already in use"
time="2018-02-01T14:02:54Z" level=debug msg="state changed" Key=192.168.10.3 Topic=Peer new=BGP_FSM_OPENSENT old=BGP_FSM_ACTIVE reason=new-connection
time="2018-02-01T14:02:54Z" level=debug msg="state changed" Key=192.168.10.3 Topic=Peer new=BGP_FSM_OPENCONFIRM old=BGP_FSM_OPENSENT reason=open-msg-received
time="2018-02-01T14:02:54Z" level=info msg="Peer Up" Key=192.168.10.3 State=BGP_FSM_OPENCONFIRM Topic=Peer
time="2018-02-01T14:02:54Z" level=debug msg="state changed" Key=192.168.10.3 Topic=Peer new=BGP_FSM_ESTABLISHED old=BGP_FSM_OPENCONFIRM reason=open-msg-negotiated
time="2018-02-01T14:03:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:03:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:04:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:04:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:05:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:05:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:06:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:06:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:07:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:07:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:08:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:08:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:09:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:09:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:10:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:10:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:11:24Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"
time="2018-02-01T14:11:54Z" level=debug msg=sent Key=192.168.10.3 State=BGP_FSM_ESTABLISHED Topic=Peer data="&{{[] 19 4} 0x10e34f8}"

netfilter integration

Hi,
I couldn't integrate goplane with iptables, and the test example doesn't work.

I tried to understand how configure the goplane.conf file , but the documentation is poor.

Thanks
Alejandro

evpn_vxlan_test don't work

Hello!
evpn_vxlan_test don't work for me

:~# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
0837c09748d8        osrg/gobgp          "/usr/bin/supervisord"   3 seconds ago       Up 3 seconds                            j3
435b867adea9        osrg/gobgp          "/usr/bin/supervisord"   7 seconds ago       Up 6 seconds                            j2
1890ca16a0df        osrg/gobgp          "/usr/bin/supervisord"   10 seconds ago      Up 9 seconds                            j1
a0e66dfc8715        osrg/gobgp          "/usr/bin/supervisord"   14 seconds ago      Up 13 seconds                           h3
26fa4181baff        osrg/gobgp          "/usr/bin/supervisord"   17 seconds ago      Up 16 seconds                           h2
490c89af88d2        osrg/gobgp          "/usr/bin/supervisord"   21 seconds ago      Up 20 seconds                           h1
4098757a89d1        osrg/goplane        "/usr/bin/supervisord"   25 seconds ago      Up 24 seconds                           g3
06213029f0f8        osrg/goplane        "/usr/bin/supervisord"   28 seconds ago      Up 27 seconds                           g2
bbc4cca6434d        osrg/goplane        "/usr/bin/supervisord"   33 seconds ago      Up 32 seconds                           g1


:~# docker exec -it g1 gobgp neighbor
Peer            AS Up/Down State       |#Advertised Received Accepted
192.168.10.3 65000   never Active      |          0        0        0
192.168.10.4 65000   never Active      |          0        0        0


:~# docker exec -it g2 gobgp neighbor
2017/02/02 08:31:43 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: dial tcp 127.0.0.1:50051: getsockopt: connection refused"; Reconnecting to {"127.0.0.1:50051" <nil>}
grpc: timed out when dialing


:~# docker exec -it g3 gobgp neighbor
2017/02/02 08:31:49 grpc: addrConn.resetTransport failed to create client transport: connection error: desc = "transport: dial tcp 127.0.0.1:50051: getsockopt: connection refused"; Reconnecting to {"127.0.0.1:50051" <nil>}
grpc: timed out when dialing

could you help me?

VXLAN demo, macadv routes have route distinguisher of 0:0

I ran the vxlan demo according to the instructions and it shows an rd of 0:0 for the macadv routes. The multicast routes have the 65000:10 and 20 rd's as expected. It still seems to work properly and the 'h' domain remains separate from the 'j', but it does seem a bit weird. Is this a change in behavior?

[root@host-10-64-247-29 ~]# docker exec -it g1 gobgp global rib -a evpn
Network Next Hop AS_PATH Age Attrs
*> [type:macadv][rd:0:0][esi:single-homed][etag:10][mac:aa:aa:aa:aa:aa:01][ip:][labels:[10]]0.0.0.0 00:02:04 [{Origin: i} {Extcomms: [VXLAN]}]
*> [type:macadv][rd:0:0][esi:single-homed][etag:10][mac:aa:aa:aa:aa:aa:02][ip:][labels:[10]]192.168.10.4 00:02:04 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.2} {ClusterList: [1.1.1.1]} {Extcomms: [VXLAN]}]
*> [type:macadv][rd:0:0][esi:single-homed][etag:20][mac:66:c2:bd:65:a0:ac][ip:][labels:[20]]192.168.10.5 00:03:47 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.3} {ClusterList: [1.1.1.1]} {Extcomms: [VXLAN]}]
*> [type:macadv][rd:0:0][esi:single-homed][etag:20][mac:aa:aa:aa:aa:aa:01][ip:][labels:[20]]0.0.0.0 00:09:41 [{Origin: i} {Extcomms: [VXLAN]}]
*> [type:macadv][rd:0:0][esi:single-homed][etag:20][mac:aa:aa:aa:aa:aa:02][ip:][labels:[20]]192.168.10.4 00:09:41 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.2} {ClusterList: [1.1.1.1]} {Extcomms: [VXLAN]}]
*> [type:multicast][rd:65000:10][etag:10][ip:192.168.0.1]0.0.0.0 16:44:45 [{Origin: i} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.1} {Extcomms: [65000:10]}]
*> [type:multicast][rd:65000:10][etag:10][ip:192.168.0.2]192.168.10.4 16:44:42 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.2} {ClusterList: [1.1.1.1]} {Extcomms: [65000:10]} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.2}]
*> [type:multicast][rd:65000:10][etag:10][ip:192.168.0.3]192.168.10.5 16:44:40 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.3} {ClusterList: [1.1.1.1]} {Extcomms: [65000:10]} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.3}]
*> [type:multicast][rd:65000:20][etag:20][ip:192.168.0.1]0.0.0.0 16:44:45 [{Origin: i} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.1} {Extcomms: [65000:20]}]
*> [type:multicast][rd:65000:20][etag:20][ip:192.168.0.2]192.168.10.4 16:44:42 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.2} {ClusterList: [1.1.1.1]} {Extcomms: [65000:20]} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.2}]
*> [type:multicast][rd:65000:20][etag:20][ip:192.168.0.3]192.168.10.5 16:44:40 [{Origin: i} {LocalPref: 100} {Originator: 192.168.0.3} {ClusterList: [1.1.1.1]} {Extcomms: [65000:20]} {Pmsi: type: ingress-repl, label: 0, tunnel-id: 192.168.0.3}]

demo.py prepare error

Hi all! I get the following error when running demo.py.

$ ./demo.py prepare
start install packages of test environment.
[localhost] local: apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
[localhost] local: sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
[localhost] local: apt-get update
[localhost] local: apt-get install -y --force-yes lxc-docker-1.3.2 bridge-utils
[localhost] local: ln -sf /usr/bin/docker.io /usr/local/bin/docker
[localhost] local: gpasswd -a `whoami` docker
[localhost] local: wget https://raw.github.com/jpetazzo/pipework/master/pipework -O /usr/local/bin/pipework
[localhost] local: chmod 755 /usr/local/bin/pipework
[localhost] local: docker pull osrg/gobgp
[localhost] local: cp Dockerfile ../../../
[localhost] local: cd ../../../ && docker build --no-cache -t goplane . && rm Dockerfile
Sending build context to Docker daemon 9.376 MB
Sending build context to Docker daemon
Step 0 : FROM osrg/gobgp
 ---> 7fb7fef47e6f
Step 1 : MAINTAINER ISHIDA Wataru <[email protected]>
 ---> Running in 7ccaf4d3159e
 ---> 964091afb0e3
Removing intermediate container 7ccaf4d3159e
Step 2 : COPY goplane /go/src/github.com/osrg/goplane/
 ---> a5b8b13ec4bc
Removing intermediate container 97db16ad3f70
Step 3 : RUN go install -a github.com/osrg/gobgp/gobgp
 ---> Running in d07150fd2ea8
2015/09/22 03:50:29 unexpected EOF

Fatal error: local() encountered an error (return code 1) while executing 'cd ../../../ && docker build --no-cache -t goplane . && rm Dockerfile'

The workaround for me is to simply comment out the Python method call to update_goplane(): and by hand run the following to finish the install without it timing out.

cd ../../../ && docker build --no-cache -t goplane . && rm Dockerfile

I looked to add a foo.Wait() but I am not familiar with from fabric.api import local which is used for:

def update_goplane():
    local("cp Dockerfile ../../../")
    local("cd ../../../ && docker build --no-cache -t goplane . && rm Dockerfile")

Figured its worth mentioning if someone could give it a go to see if its something in my environment or an issue.

Thanks for the great work! Adding another issue that bombs goplaned once I got it installed.

future of goplane and how to use with gobgpd

Hi guys,

I am just wondering if this project is still under maintained ? And how should I use this with gobgpd together so that I would be relying on FRR or Quagga to interact with kernel FIB ? I did not find specific documentation regarding integration goplane and gobgpd

Thanks in advance

Unable to install GoPlane

Hello,

Im trying to use GoPlane in a Fedora 25 using golang from fedora repos. GoBGP and GoBGPd was installed fine, but GoPlane didnt, as following:

[root@gobgp goplane]# go get github.com/osrg/goplane
# github.com/osrg/goplane/iptables
iptables/flowspec.go:176: cannot use arg (type *gobgpapi.Table) as type *gobgpapi.MonitorRibRequest in argument to client.MonitorRib
# github.com/osrg/goplane/netlink
netlink/dataplane.go:189: cannot use arg (type *gobgpapi.Table) as type *gobgpapi.MonitorRibRequest in argument to d.client.MonitorRib
netlink/virtualnetwork.go:469: cannot use arg (type *gobgpapi.Table) as type *gobgpapi.MonitorRibRequest in argument to n.client.MonitorRib

[root@gobgp goplane]# cd $GOPATH/src/github.com/osrg/goplane; glide install
[INFO]	Downloading dependencies. Please wait...
[INFO]	--> Found desired version locally github.com/armon/go-radix 4239b77079c7b5d1243b7b4736304ce8ddb6f0f2!
[INFO]	--> Found desired version locally github.com/coreos/go-iptables 18855ec8acc0dd8dc2977fa5a446b0432b499707!
[INFO]	--> Found desired version locally github.com/eapache/channels 47238d5aae8c0fefd518ef2bee46290909cf8263!
[INFO]	--> Found desired version locally github.com/eapache/queue 44cc805cf13205b55f69e14bcb69867d1ae92f98!
[INFO]	--> Found desired version locally github.com/fsnotify/fsnotify a904159b9206978bb6d53fcc7a769e5cd726c737!
[INFO]	--> Found desired version locally github.com/golang/protobuf 4bd1920723d7b7c925de087aa32e2187708897f7!
[INFO]	--> Found desired version locally github.com/hashicorp/hcl 372e8ddaa16fd67e371e9323807d056b799360af!
[INFO]	--> Found desired version locally github.com/influxdata/influxdb 8c25f0104eba8c0060e44a489f9d549e7d6a7a4d!
[INFO]	--> Found desired version locally github.com/jessevdk/go-flags f2785f5820ec967043de79c8be97edfc464ca745!
[INFO]	--> Found desired version locally github.com/magiconair/properties b3b15ef068fd0b17ddf408a23669f20811d194d2!
[INFO]	--> Found desired version locally github.com/mitchellh/mapstructure db1efb556f84b25a0a13a04aad883943538ad2e0!
[INFO]	--> Found desired version locally github.com/pelletier/go-buffruneio df1e16fde7fc330a0ca68167c23bf7ed6ac31d6d!
[INFO]	--> Found desired version locally github.com/pelletier/go-toml d1fa2118c12c44e4f5004da216d1efad10cb4924!
[INFO]	--> Found desired version locally github.com/satori/go.uuid b061729afc07e77a8aa4fad0a2fd840958f1942a!
[INFO]	--> Found desired version locally github.com/Sirupsen/logrus c078b1e43f58d563c74cebe63c85789e76ddb627!
[INFO]	--> Found desired version locally github.com/spf13/afero 72b31426848c6ef12a7a8e216708cb0d1530f074!
[INFO]	--> Found desired version locally github.com/spf13/cast d1139bab1c07d5ad390a65e7305876b3c1a8370b!
[INFO]	--> Found desired version locally github.com/spf13/jwalterweatherman fa7ca7e836cf3a8bb4ebf799f472c12d7e903d66!
[INFO]	--> Found desired version locally github.com/spf13/pflag 08b1a584251b5b62f458943640fc8ebd4d50aaa5!
[INFO]	--> Found desired version locally github.com/spf13/viper 5ed0fc31f7f453625df314d8e66b9791e8d13003!
[INFO]	--> Found desired version locally github.com/vishvananda/netlink 87909c6dada5cba3aa659144a40b1e575d79d625!
[INFO]	--> Found desired version locally github.com/vishvananda/netns 2c9454e4fc6e2edc1a1c84e64ed3d6e662fb6991!
[INFO]	--> Fetching updates for github.com/osrg/gobgp.
[INFO]	--> Fetching google.golang.org/grpc.
[INFO]	--> Fetching gopkg.in/tomb.v2.
[INFO]	--> Fetching golang.org/x/sys.
[INFO]	--> Fetching gopkg.in/yaml.v2.
[INFO]	--> Fetching golang.org/x/net.
[INFO]	--> Fetching golang.org/x/text.
[WARN]	Unable to checkout gopkg.in/yaml.v2
[ERROR]	Update failed for gopkg.in/yaml.v2: Cannot detect VCS
[WARN]	Unable to checkout gopkg.in/tomb.v2
[ERROR]	Update failed for gopkg.in/tomb.v2: Cannot detect VCS
[WARN]	Unable to checkout golang.org/x/text
[ERROR]	Update failed for golang.org/x/text: Cannot detect VCS
[WARN]	Unable to checkout golang.org/x/net
[ERROR]	Update failed for golang.org/x/net: Cannot detect VCS
[WARN]	Unable to checkout google.golang.org/grpc
[ERROR]	Update failed for google.golang.org/grpc: Cannot detect VCS
[WARN]	Unable to checkout golang.org/x/sys
[ERROR]	Update failed for golang.org/x/sys: Cannot detect VCS
[ERROR]	Failed to install: Cannot detect VCS
Cannot detect VCS
Cannot detect VCS
Cannot detect VCS
Cannot detect VCS
Cannot detect VCS

What can I do to install? After this, how can I use GoPlane with GoBGP to control Linux routes (Instead using zebra to do this)?

Thanks!

Goplane panics when FSM state gets reaches Established

Hi all! When running ./demo.py I get a nil pointer panic when the FSM state reaches Established. The workaround I used was to comment out a chunk of code in osrg/gobgp I listed below.

DEBU[0000] start sniff eth3
DEBU[0000] monitoring: eth3, index: 50                   Etag=20 Topic=VirtualNetwork
DEBU[0007] accepted a new passive connection from 192.168.10.2
DEBU[0007] state changed                                 Key=192.168.10.2 Topic=Peer new=BGP_FSM_OPENSENT old=BGP_FSM_ACTIVE
DEBU[0007] received                                      Key=192.168.10.2 Topic=Peer data=&{Header:{Marker:[] Len:51 Type:1} Body:0xc8203d8780}
DEBU[0007] state changed                                 Key=192.168.10.2 Topic=Peer new=BGP_FSM_OPENCONFIRM old=BGP_FSM_OPENSENT
INFO[0007] Peer Up                                       Key=192.168.10.2 State=BGP_FSM_OPENCONFIRM Topic=Peer
DEBU[0007] state changed                                 Key=192.168.10.2 Topic=Peer new=BGP_FSM_ESTABLISHED old=BGP_FSM_OPENCONFIRM
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x0 pc=0x5100ae]

goroutine 24 [running]:
github.com/osrg/gobgp/server.(*BgpServer).handleFSMMessage(0xc8200edc00, 0xc820172680, 0xc8203bcba0, 0xc82005b8c0, 0x0, 0x0, 0x0)
    /home/brent/go/src/github.com/osrg/gobgp/server/server.go:799 +0x84e
github.com/osrg/gobgp/server.(*BgpServer).Serve(0xc8200edc00)
    /home/brent/go/src/github.com/osrg/gobgp/server/server.go:420 +0x3d21
created by main.main
    /home/brent/go/src/github.com/osrg/goplane/goplaned/main.go:152 +0x8ba

goroutine 1 [select]:
main.main()
    /home/brent/go/src/github.com/osrg/goplane/goplaned/main.go:164 +0x234f

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1696 +0x1

goroutine 22 [select, locked to thread]:
runtime.gopark(0xc2b690, 0xc82001cf28, 0xaf7538, 0x6, 0x412418, 0x2)
    /usr/local/go/src/runtime/proc.go:185 +0x163
runtime.selectgoImpl(0xc82001cf28, 0x0, 0x18)
    /usr/local/go/src/runtime/select.go:392 +0xa64
runtime.selectgo(0xc82001cf28)
    /usr/local/go/src/runtime/select.go:212 +0x12
runtime.ensureSigM.func1()
    /usr/local/go/src/runtime/signal1_unix.go:227 +0x353
runtime.goexit()
    /usr/local/go/src/runtime/asm_amd64.s:1696 +0x1

The workaround I found to avoid the nil reference was to comment out the following in osrg/gobgp in the file server.go. With that commented out the Goplane demo works. Not sure if there is anything that could be changed in Goplane to resolve the issue but figured it made sense to open it here since (de)/serializing EVPN seems to work great in osrg/gobgp

if ch := server.bmpClient.send(); ch != nil {
    bm := &broadcastBMPMsg{
        ch:      ch,
        msgList: []*bgp.BMPMessage{bmpPeerRoute(bgp.BMP_PEER_TYPE_GLOBAL, false, 0, peer.peerInfo, time.Now().Unix(), m)},
    }
    server.broadcastMsgs = append(server.broadcastMsgs, bm)
}

Thanks and let me know if I can provide any more information that can assist!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.