Age | Commit message (Collapse) | Author |
|
Signed-off-by: Serguei Bezverkhi <sbezverk@cisco.com>
|
|
Signed-off-by: Serguei Bezverkhi <sbezverk@cisco.com>
|
|
Signed-off-by: Serguei Bezverkhi <sbezverk@cisco.com>
|
|
This commit works with FRR7.5 when "version = 6" is specified in zebra.config
- Changes Zebra internal API commands to FRR7.5 which is incompatible with older version.
- Changes SendHello() to include AFI
- Changes SendRouteIDAdd() to include AFI
- Changes decodeFromBytes/serialize of IPRouteBody and NexthopUpdateBody, because size of MESSAGE_FALG is changed.
|
|
|
|
(added in frr7.4)
- Move function for checking softwareName from internal/pkg/config/default.go to internal/pkg/zebra/zapi.go.
- Delete support for frr7.1.
- Fix bug by inverse processing MessageMTU and messageTag, and add messageTableId in decodeFromBytes and serialize of IPRouteBody.
- Add processing messageBackupNexthop (which is added in frr7.4) in decodeFromBytes and serialize of IPRouteBody.
- Update document.
|
|
Should be ether-type instead of fragment
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
gobgmp was removed long ago. Add a pointer to other BMP server
implementations.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Sorry about this, I had forgot that TOML subtables require the name of the parent table in their path's. I've validated this configuration:
```
root@kkirsche-dev:/home/kkirsche# ./gobgpd -f config.toml
{"level":"info","msg":"gobgpd started","time":"2019-08-28T18:32:23Z"}
{"Topic":"Config","level":"info","msg":"Finished reading the config file","time":"2019-08-28T18:32:23Z"}
{"level":"info","msg":"Peer 10.0.0.2 is added","time":"2019-08-28T18:32:23Z"}
{"Topic":"Peer","level":"info","msg":"Add a peer configuration for:10.0.0.2","time":"2019-08-28T18:32:23Z"}
```
```
root@kkirsche-dev:# cat config.toml
[global]
[global.config]
as = 65001
router-id = "10.0.0.1"
[global.confederation.config]
enabled = true
identifier = 30
member-as-list = [ 65002 ]
```
|
|
Fix #2146
|
|
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
- Additionally bug fix which avoid panic caused by displaying vpnv6 prefixes using gobgp vrf rib
- Supporting FRRouting 7.1.x
|
|
Signed-off-by: George Melikov <mail@gmelikov.ru>
|
|
Long ago gobgp stored the validation results in memory but for reduce
memory usage, the cache was removed. Currently, every time you request
the validation result, gobgp validates paths with the latest ROAs.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
- the "version" parameter (which means ZAPI) 6 in zebra config changes supporting FRRouting version 7 instead of FRRouting version 6.
- the "software-name" parameter which supports backward compatibility is added in zebra config.
(GoBGP support FRRouting version 6 when "version = 6" and "software-name = frr6" is configured.)
|
|
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Corresponding to Single RIB structure.
|
|
|
|
`gobgp neighbor delete` doesn't work. We need to use `gobgp neighbor del`.
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
|
|
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
|
|
Also rename PathAttrsAny to PathAttrs. Both are the first choice
rather than the binary format members.
Support SortType member to ListPathRequest to add an option to return
unordered paths.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
https://github.com/osrg/gobgp/issues/1763#issuecomment-437594975
Follow Chris's proposal; consistent with the rest of the APIs.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
No need to be exported.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
fixes #1812
Avoid the cast and use strightforward data strcuture; two variables
for afi and safi instead of squashing two into one variable.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
also enable the CI for it again.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: Chen Haiquan <oc@yunify.com>
|
|
move grpc_server.go to server/
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
|
|
|
|
This patch enables to configure VRF tables by using config file. This
feature is useful when using VRF-Neighbor feature.
Example of Usage:
```toml
[[vrfs]]
[vrfs.config]
name = "vrf1"
id = 1
rd = "65000:100"
both-rt-list = ["65000:100"]
```
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
|
|
The `router-mac` option in `gobgp` CLI allows sending Router's
MAC Extended Community via BGP EVPN Type 2 and Type 5 advertisements.
As explained in below RFC draft, this community is used to carry the
MAC address of the VTEP where MAC-IP pair resides.
More info: For example, GoBGP router (R1) peers with Cisco router (R2).
R1 is used by an orchestraction platform, e.g. OpenStack, Docker Swarm,
etc., to advertise container MAC-IP bindings. When R1 advertises the
binding it also sets next hop for the route as the host where the MAC-IP
binding (i.e. container) resides. When R2 receives the route, it will
not install it unless Router's MAC Extended Community is present. R2
will use the MAC address in the community to create an entry in MAC
address table of R2 pointint to NVE interface.
```
gobgp global rib -a evpn add macadv e9:72:d7:aa:1f:b4 \
172.16.100.100 etag 0 label 34567 rd 10.1.1.1:100 \
rt 65001:100 encap vxlan nexthop 10.10.10.10 \
origin igp router-mac e9:72:d7:aa:1f:b4
gobgp global rib -a evpn add nexthop 10.10.10.10 origin igp \
prefix 172.16.100.100/32 esi 0 etag 0 rd 10.1.1.1:100 \
rt 65001:100 gw 10.10.10.10 label 34567 encap vxlan \
router-mac e9:72:d7:aa:1f:b4
```
In the above example, a host with IP of `10.10.10.10` runs a
container connected to an Open vSwitch instance. The container's IP
address is `172.16.100.100` and MAC address `e9:72:d7:aa:1f:b4`.
The Open vSwitch is VTEP with `tunnel_key=34567`, i.e. VNID `34567`.
GoBGP (R1) and Cisco (R2) routers are in BGP AS 65001. R1's IP is
`10.1.1.1`. R2 used RT of `65001:100` to import routes and place
them into appropriate VRF. In this case the VRF is associated with
L2VNI from VLAN 300. Upon the receipt of the above BGP EVPN
Type 2 and Type 5 routes, R2 will create create a MAC address
entry pointing to it's NVE interface with destination IP address
of `10.10.10.10`.
```
Legend:
* - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC
age - seconds since last seen,+ - primary entry using vPC Peer-Link,
(T) - True, (F) - False, C - ControlPlane MAC
VLAN MAC Address Type age Secure NTFY Ports
---------+-----------------+--------+---------+------+----+------------------
* 300 e972.d7aa.1fb4 static - F F nve1(10.10.10.10)
```
The R2 will use the `router-mac e9:72:d7:aa:1f:b4` as the destination MAC
address of the inner VXLAN packet. For example, an underlay host `20.20.20.20`
ping the container. The inner VXLAN L2 destination address is
`e9:72:d7:aa:1f:b4`. The inner VXLAN L2 source address is R2's MAC. The outer
VXLAN L3 source address, i.e. `10.2.2.2` is R2' NVE address.
```
OUTER VXLAN L2: 10:20:08:d0:ff:23 > b2:0e:19:6a:8d:51
OUTER VXLAN L3: 10.2.2.2.45532 > 10.10.10.10.4789: VXLAN, flags [I] (0x08), vni 34567
INNER VXLAN L2: 4e:f4:ca:aa:f6:7b > e9:72:d7:aa:1f:b4
INNER VXLAN L3: 20.20.20.20 > 172.16.100.100: ICMP echo reply, id 66, seq 1267, length 64
```
See also: https://tools.ietf.org/html/draft-sajassi-l2vpn-evpn-inter-subnet-forwarding-05#section-6.1
Signed-off-by: Paul Greenberg <greenpau@outlook.com>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
|
|
The way to install GoBGP is outdated. README tells how so let's remove.
Also bash completion scripts haven't be updated for long time so let's
remove too.
[ci skip]
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
This patch enables "gobgp" command to advertise the PMSI Tunnel
Attribute which is appended to the EVPN Inclusive Multicast Ethernet Tag
routes for example.
Usage Example:
$ gobgp global rib -a evpn add multicast 10.0.0.1 etag 10 rd 65000:100 pmsi ingress-repl 100 1.1.1.1
$ gobgp global rib -a evpn
Network Labels Next Hop AS_PATH Age Attrs
*> [type:multicast][rd:65000:100][etag:10][ip:10.0.0.1] 0.0.0.0 00:00:00 [{Origin: ?} {Pmsi: type: ingress-repl, label: 100, tunnel-id: 1.1.1.1}]
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
|