I am having issues with an OpenBSD vlan interface seeing traffic on a trunk interface.
I've got an OpenBSD 4.4 system running on a Dell PoowerEdge 2950 with 2x Neterion Xframe E SR interface cards. These are connected to a Cisco 6509E with WS-X6704-10GE line cards over multimode fiber. The logical configuration is a router on a stick where the "stick" is a bonded (LACP) pair of fiber connections running dot1q vlan tagging. The bonding seems to be working well, but I haven't been able to test the failover and load balancing yet. There is traffic flows on each of the LACP members and on the trunk0 interface. The traffic has the correct vlan tagging, yet does not appear to flow to the vlan interface.
Any ideas would be appreciated,
Matt
Relevant configurations and tcpdumps below:
OpenBSD hostname.xxxx
Code:
bash-3.2# cat /etc/hostname.xge0
up
bash-3.2# cat /etc/hostname.xge1
up
bash-3.2# cat /etc/hostname.trunk0
trunkproto loadbalance trunkport xge0 trunkport xge1
bash-3.2# cat /etc/hostname.vlan96
inet XXX.XXX.XXX.XXX XXX.XXX.XXX.XXX NONE vlan 96 vlandev trunk0
OpenBSD ifconfig
Code:
bash-3.2# ifconfig xge0
xge0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0c:fc:00:24:a8
trunk: trunkdev trunk0
media: Ethernet 10GbaseSR
status: active
inet6 fe80::20c:fcff:fe00:24a8%xge0 prefixlen 64 scopeid 0x1
bash-3.2# ifconfig xge1
xge1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0c:fc:00:24:a8
trunk: trunkdev trunk0
media: Ethernet 10GbaseSR
status: active
inet6 fe80::20c:fcff:fe00:2086%xge1 prefixlen 64 scopeid 0x2
bash-3.2# ifconfig trunk0
trunk0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0c:fc:00:24:a8
trunk: trunkproto loadbalance
trunkport xge1 active
trunkport xge0 master,active
groups: trunk
media: Ethernet autoselect
status: active
bash-3.2# ifconfig vlan96
vlan96: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
lladdr 00:0c:fc:00:24:a8
vlan: 96 priority: 0 parent interface: trunk0
groups: vlan
inet XXX.XXX.XXX.XXX netmask 0xffffe000 broadcast XXX.XXX.XXX.XXX
inet6 fe80::20c:fcff:fe00:24a8%vlan96 prefixlen 64 scopeid 0x8
Cisco port configuration
Code:
core#sh run int port-channel 30
interface Port-channel30
description firewall
switchport
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 96
switchport mode trunk
switchport nonegotiate
no ip address
spanning-tree link-type point-to-point
end
core#sh run int te 2/4
interface TenGigabitEthernet2/4
description firewall.1
switchport
switchport trunk encapsulation dot1q
switchport mode trunk
no ip address
channel-protocol lacp
channel-group 30 mode active
end
core#sh run int te 3/4
interface TenGigabitEthernet3/4
description firewall.2
switchport
switchport trunk encapsulation dot1q
switchport mode trunk
no ip address
channel-protocol lacp
channel-group 30 mode active
end
Traffic dumps on the various interfaces
Code:
bash-3.2# tcpdump -i xge0
tcpdump: listening on xge0, link-type EN10MB
15:03:17.548532 802.1Q vid 96 pri 0 arp who-has XXX.XXX.XXX.XXX (Broadcast) tell XXX.XXX.XXX.XXX
15:03:17.888762 802.1Q vid 304 pri 0 arp who-has XXX.XXX.XXX.XXX tell XXX.XXX.XXX.XXX
bash-3.2# tcpdump -i xge1
tcpdump: listening on xge1, link-type EN10MB
15:05:34.625969 802.1Q vid 96 pri 0 XXX.XXX.XXX.XXX.ipp > XXX.XXX.XXX.XXX.ipp: udp 137
15:05:34.723712 802.1Q vid 316 pri 0 XXX.XXX.XXX.XXX.netbios-dgm > XXX.XXX.XXX.XXX.netbios-dgm: udp 201
bash-3.2# tcpdump -i trunk0
tcpdump: listening on trunk0, link-type EN10MB
15:06:28.561382 802.1Q vid 305 pri 0 0.0.0.0.bootpc > 255.255.255.255.bootps: xid:0x35240800 secs:45640 [|bootp]
15:06:28.574800 802.1Q vid 96 pri 0 arp who-has XXX.XXX.XXX.XXX tell XXX.XXX.XXX.XXX
bash-3.2# tcpdump -i vlan96
tcpdump: listening on vlan96, link-type EN10MB
^C
0 packets received by filter
0 packets dropped by kernel