Newer
Older
"github.com/bio-routing/bio-rd/config"
"github.com/bio-routing/bio-rd/protocols/bgp/server"
"github.com/bio-routing/bio-rd/routingtable"
bnet "github.com/bio-routing/bio-rd/net"
func strAddr(s string) uint32 {
ret, _ := bnet.StrToAddr(s)
return ret
}
b := server.NewBgpServer()
err := b.Start(&config.Global{
Listen: true,
LocalAddressList: []net.IP{
net.IPv4(169, 254, 100, 1),
net.IPv4(169, 254, 200, 0),
},
})
if err != nil {
logrus.Fatalf("Unable to start BGP server: %v", err)
}
b.AddPeer(config.Peer{
PeerAddress: bnet.IPv4FromOctets(172, 17, 0, 3),
LocalAddress: bnet.IPv4FromOctets(169, 254, 200, 0),
KeepAlive: time.Second * 30,
Passive: true,
RouterID: b.RouterID(),
AddPathSend: routingtable.ClientOptions{
MaxPaths: 10,
},
ExportFilter: filter.NewAcceptAllFilter(),
RouteServerClient: true,
PeerAddress: bnet.IPv4FromOctets(172, 17, 0, 2),
LocalAddress: bnet.IPv4FromOctets(169, 254, 100, 1),
KeepAlive: time.Second * 30,
Passive: true,
RouterID: b.RouterID(),
AddPathSend: routingtable.ClientOptions{
MaxPaths: 10,
},
AddPathRecv: true,
ImportFilter: filter.NewAcceptAllFilter(),
fmt.Printf("LocRIB count: %d\n", rib.Count())