Age | Commit message (Collapse) | Author |
|
infinite channel has internal goroutine which won't stop until all items in
the buffer are dequeued.
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
AdjRibOut isn't in memory so needs to be calculated on the fly.
Doing such for multiple neighbors consumes too much CPU (especially
there are lots of routes).
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
move ROA under table package
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
align with session-state
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
With this change, we could send unncessary messages but it's harmless
(wastefull though).
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Preparation for removing in-memory adj-out.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Preparation for removing in-memory adj-out.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
$ gobgp neighbor add 10.0.0.1 route-reflector-client
$ gobgp neighbor add 10.0.0.1 route-reflector-client 1.1.1.1
$ gobgp neighbor add 10.0.0.1 route-server-client
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
$ gobgp vrf add red rd 100:100 rt both 100:100
$ gobgp neighbor add 10.0.0.1 as 2 vrf red
$ gobgp vrf red neighbor
Peer AS Up/Down State |#Advertised Received Accepted
10.0.0.1 2 never Active | 0 0 0
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Also don't allocate label for local routes. The label management needs
to work with other components rather than bgp.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
$ gobgp global rib summary -a ipv4
$ gobgp neighbor 10.0.0.1 local summary
$ gobgp neighbor 10.0.0.1 adj-in summary
$ gobgp neighbor 10.0.0.1 adj-out summary
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
creating new `err` variable prevents proper error propagation which
leads to wrongly contine reading BGP messages even after receiving
an invalid update message.
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
implement draft-ietf-idr-bgp-gr-notification-07
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
specifying VrfId is not mandatory
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
to support VRF ID for Zebra Protocol v3.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
|
|
|
|
RFC7947 2.2 says
Optional recognized and unrecognized BGP attributes, whether transitive
or non-transitive, SHOULD NOT be updated by the route server
(unless enforced by local IXP operator configuration) and SHOULD be passed
on to other route server clients
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
regression due to 43dc07d72353fc8bcb79a18a5739ea0a90dda6bb
before:
$ gobgp vrf add vrf01 rd 100:100 rt both 100:100
$ gobgp vrf vrf01 rib add 10.0.0.0/24
$ gobgp global rib -a ipv4
Network Next Hop AS_PATH Age Attrs
*> 10.0.0.0/24 0.0.0.0 00:00:19 [{Origin: ?} {Extcomms: [100:100]}]
after:
$ gobgp vrf add vrf01 rd 100:100 rt both 100:100
$ gobgp vrf vrf01 rib add 10.0.0.0/24
$ gobgp global rib -a ipv4
Network not in table
$ gobgp global rib -a vpnv4
Network Labels Next Hop AS_PATH Age Attrs
*> 100:100:10.0.0.0/24 [16000] 0.0.0.0 00:00:19 [{Origin: ?} {Extcomms: [100:100]}]
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
On some architecture, setsockopt() is a multiplexed syscall and is not
available directly (for example, on i386). Instead of invoking the
syscall directly, use syscall.SetsockoptString() which is safe as strings
are not null-terminated with Go.
On BSD, use syscall.SetsockoptInt(), but I don't know if there are
architectures with the same limitations as for Linux.
Signed-off-by: Vincent Bernat <vincent@bernat.im>
|
|
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
Having two interval options easily confuse users. With this, either
can be specified.
If you specify the rotation interval, gobgpd dumps a table and rotates
a log file every the rotation interval.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Stop using config.NeighborState's Description in a hacky way for the
remote Router Id.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
the feature has been broken.
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
the feature was somehow broken.
Signed-off-by: Wataru Ishida <ishida.wataru@lab.ntt.co.jp>
|
|
invalid key could crash BgpServer
|
|
Signed-off-by: Peng Xiao <xiaoquwl@gmail.com>
|
|
This reverts commit 7bf91ea437181b85ecc3a1473adc3fbc0da80cbe.
This commit causes misleading error message "failed to get policy info"
when global policy is configured at startup.
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
Only global rib dumping is supported for now.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
We have the best path from ebgp and advertise it to an ibgp peer. Then
we got the new best from ibgp and then we have to explicitly withdraw
the old best (and don't send the new best from ibgp to the ibgp peer).
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
|
policy.Reset() won't initialize global policy unless we pass a map
with key table.GLOBAL_RIB_NAME
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
|
|
a bug introduced by 332766189685028c4f9852e4285fb1a9025223cc
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp>
|