This patch enables to decode/encode MRT format with BGP routing
information including the geographical location which described in
RFC6397.
Signed-off-by: IWASE Yusuke <[email protected]>
This patch enables to decode/encode MRT format with BGP Additional Path
Extensions which described in RFC8050.
Signed-off-by: IWASE Yusuke <[email protected]>
Currently, the TLV fields are implemented as BMPTLV on the Initiation
messages, but not enough decoded and required to be constructed in
binary format.
This patch introduces BMPInfoTLV and makes easy to handle the TLV
fields.
Note: This patch obsoletes BMPTLV structure.
Signed-off-by: IWASE Yusuke <[email protected]>
Currently, only parser for BMPStatisticsReport is implemented and does
not support the per-AFI/SAFI stats TLV types.
This patch implements BMPStatisticsReport serializer and re-implements
the stats TLV parser/serializer to support the missing TLV types.
Signed-off-by: IWASE Yusuke <[email protected]>
According to "draft-evens-grow-bmp-local-rib", the L flag in the Peer
Flags is NOT used for the locally sourced routes and the F flag is
defined into the same bit.
This patch removes "policy" argument and add "flags" argument for
BMPPeerHeader and NewBMPPeerHeader in order to distinguish which flag
is set (the L flag or the F flag).
Then introduce IsPostPolicy() func to show if the L flag is set or not.
Signed-off-by: IWASE Yusuke <[email protected]>
Current mp-reach-nlri attribute decoder/encoder assumes NLRI's address family
and that of nexthop is the same.
However, when extended nexthop capability(RFC5549) is negotiated, this
is not the case. This commit removes the assumption.
Signed-off-by: ISHIDA Wataru <[email protected]>
This patch proposes a new way to configure BGP flowspec TCP flags
rules It allows to comply with RFC 5575 by defining flags like this
=SA =A / '!SA' / '=SA&=!U' = means match, ! means not, & means and,
all TCP flags are identified by their first charater S for SYN A for
Ack ...
- All of EoR except IPv4 unicast have MP_UNREACH only. (RFC4724)
- length of the MP_UNREACH attr. should be 3bytes.
- length of the value should be 0bytes.
- Should send EoR marker in initial exchange of BMP Route Monitoring. (RFC7854)
This patch adds a test case for PathAttributeMpReachNLRI with IPv6
prefix and IPv4 peering (IPv4 nexthop address).
Signed-off-by: IWASE Yusuke <[email protected]>
Currently, GoBGP will miss-convert IPv4 nexthop address to IPv6
address when advertising AFI_IP6 routes with IPv4 peering.
For example, if the local address of GoBGP is "172.20.0.1", the
advertised nexthop will be miss-converted into "AC14:1::".
In this case, the nexthop address should be "::ffff:172.20.0.1".
This patch fixes this problem.
According to this change, this patch also fixes "nexthoplen"
calculation to parse and serialize NextHop field, otherwise it
will cause "mpreach nexthop length is incorrect" at GoBGP or
"Invalid NextHop length" at BGP peers.
Signed-off-by: IWASE Yusuke <[email protected]>
$ 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 <[email protected]>