diff options
author | Wataru Ishida <ishida.wataru@lab.ntt.co.jp> | 2016-11-04 13:19:47 +0900 |
---|---|---|
committer | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2016-11-04 13:19:47 +0900 |
commit | a17832195c5fc42d6d0ec3dd7cc4868694bed88d (patch) | |
tree | 14381d27f1e58a6c399de90cc206d2433d8d366f /packet/bgp | |
parent | 97bc9dd0da71ce743dbb7deb4a09f260ca518dcc (diff) |
support neighbor belongs to VRF
$ 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>
Diffstat (limited to 'packet/bgp')
-rw-r--r-- | packet/bgp/bgp.go | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/packet/bgp/bgp.go b/packet/bgp/bgp.go index 6f64323a..9ad3a830 100644 --- a/packet/bgp/bgp.go +++ b/packet/bgp/bgp.go @@ -1395,8 +1395,12 @@ func (l *LabeledVPNIPAddrPrefix) SAFI() uint8 { } func (l *LabeledVPNIPAddrPrefix) String() string { + return fmt.Sprintf("%s:%s", l.RD, l.IPPrefix()) +} + +func (l *LabeledVPNIPAddrPrefix) IPPrefix() string { masklen := l.IPAddrPrefixDefault.Length - uint8(8*(l.Labels.Len()+l.RD.Len())) - return fmt.Sprintf("%s:%s/%d", l.RD, l.IPAddrPrefixDefault.Prefix, masklen) + return fmt.Sprintf("%s/%d", l.IPAddrPrefixDefault.Prefix, masklen) } func (l *LabeledVPNIPAddrPrefix) MarshalJSON() ([]byte, error) { |