I'm running OpenBSD 4.2 on SPARC64. I have managed to get a simple BGP setup
working on IPv4, however the IPv6 version of the same setup fails. A BGP
session is established in both cases and peer B claims to be announcing what it
should be announcing, yet in the IPv6 version peer A does not add it to its RIB.
Host A:
AS: 64512
Loopback: 192.168.0.1 2001:db8::1
To B: 192.168.1.1/24 2001:db8:1::1/64
Host B:
AS: 64513
Loopback: 192.168.0.2 2001:db8::2
To A: 192.168.1.2/24 2001:db8:1::2/64
To miscellaneous subnet: 192.168.2.1/24 2001:db8:2::1/64
Host A:
lo0:
inet6 ::1 prefixlen 128
inet6 2001:db8::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet 192.168.0.1 netmask 0xffffffff
gem1:
inet6 2001:db8:1::1 prefixlen 64
inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
bgp.conf.v4:
AS 64512
router-id 192.168.0.1
neighbor 192.168.1.2 {
remote-as 64513
announce all
}
allow from any
bgp.conf.v6:
AS 64512
router-id 192.168.0.1
neighbor 2001:db8:1::2 {
remote-as 64513
announce all
}
allow from any
bgpctl sh (v4):
Neighbor AS MsgRcvd MsgSent OutQ Up/Down State/PrfRcvd
192.168.1.2 64513 3 3 0 00:00:13 2
bgpctl sh (v6):
Neighbor AS MsgRcvd MsgSent OutQ Up/Down State/PrfRcvd
2001:db8:1::2 64513 3 4 0 00:00:31 0
bgpctl sh rib:
*> 192.168.0.2/32 192.168.1.2 100 0 64513 i
*> 192.168.2.0/24 192.168.1.2 100 0 64513 i
bgpctl sh rib inet6:
flags: * = Valid, > = Selected, I = via IBGP, A = Announced
origin: i = IGP, e = EGP, ? = Incomplete
flags destination gateway lpref med aspath origin
Host B:
lo0:
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet 192.168.0.2 netmask 0xffffffff
inet6 2001:db8::2 prefixlen 128
gem0:
inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
inet6 2001:db8:2::1 prefixlen 64
gem1:
inet 192.168.1.2 netmask 0xffffff00 broadcast 192.168.1.255
inet6 2001:db8:1::2 prefixlen 64
bgpd.conf.v4:
AS 64513
router-id 192.168.0.2
network 192.168.0.2/32
network 192.168.2.0/24
neighbor 192.168.1.1 {
remote-as 64512
announce all
}
allow from any
bgpd.conf.v6
AS 64513
router-id 192.168.0.2
network 2001:db8::2/128
network 2001:db8:2::/64
neighbor 2001:db8:1::1 {
remote-as 64512
announce all
}
allow from any
bgpctl sh (v4)
Neighbor AS MsgRcvd MsgSent OutQ Up/Down State/PrfRcvd
192.168.1.1 64512 2 4 0 00:00:11 0
bgpctl sh (v6)
Neighbor AS MsgRcvd MsgSent OutQ Up/Down State/PrfRcvd
2001:db8:1::1 64512 2 2 0 00:00:06 0
bgpctl sh rib
AI*> 192.168.0.2/32 0.0.0.0 100 0 i
AI*> 192.168.2.0/24 0.0.0.0 100 0 i
bgpctl sh rib inet6
AI*> 2001:db8::2/128 :: 100 0 i
AI*> 2001:db8:2::/64 :: 100 0 i