[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-bugs] [Bug 753] New: bonding + vlans + bridging



http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=753

           Summary: bonding + vlans + bridging
           Product: Xen
           Version: 3.0.2
          Platform: x86
        OS/Version: Linux-2.6
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Unspecified
        AssignedTo: xen-bugs@xxxxxxxxxxxxxxxxxxx
        ReportedBy: xenspam@xxxxxxxxx


I have the following setup 

eth1 -- +      ___vlanXXX-br_(bridge)___
        |      |                       |
      bond0 -> | vlanXXX       vif0.0 -|- veth0 (has the only IP AND MAC)
        |      |_______________________|
eth0 -- +

Arp traffic don't get though. Everything works, If i run tcpdump on any of the
interfaces. It doesn't even have to be in promiscuous mode, running tcpdump
with -p (Donâ??t  put  the  interface into promiscuous mode) makes arp entries
get set too.

Without tcpdump running no arp entries get set. If you manualy enter an arp
entry for a host it works fine.

I'll attach my startup script, ip addr show, brctl show, /proc/net/vlan/config,
and /proc/net/bonding/bond0, and dmesg output

--- startup script ---
#!/bin/sh
# read in config for dom0
. /etc/xen/network/dom0

modprobe bonding
modprobe 8021q
modprobe bridge

mac=`ip link show eth0 | grep 'link\/ether' | sed -e 's/.*ether
\(..:..:..:..:..:..\).*/\1/'`
ip link set bond0 down arp off
ip link set bond0 addr fe:ff:ff:ff:ff:ff
ip addr flush bond0
ip link set bond0 up
ifenslave bond0 eth0 eth1

vconfig set_name_type VLAN_PLUS_VID_NO_PAD

# vlans are stored in /etc/xen/network/vlans one number per line
# it'll create a vlanXXX-br bridge for eath vlan

for vlan in `cat /etc/xen/network/vlans` ; do
   vconfig add bond0 ${vlan}
   ip link set vlan${vlan} up
   brctl addbr vlan${vlan}-br
   brctl stp vlan${vlan}-br off
   brctl setfd vlan${vlan}-br off
   #ip link set vlan${vlan} down arp off
   brctl addif vlan${vlan}-br vlan${vlan}
   ip link set vlan${vlan}-br up
done

# setup dom0's ip addr on one of the vlan bridgs
# as defined in /etc/xen/network/dom0
brctl addif vlan${dom0_VLAN}-br vif0.0

ip link set veth0 addr $mac arp on
ip link set vif0.0 up
ip link set veth0 up
ethtool -K veth0 tx off
ifconfig veth0 mtu 1400

ip addr add ${dom0_IPADDR} broadcast ${dom0_BOADCAST} dev veth0
ip route add default via ${dom0_GATEWAY} dev veth0

--- ip addr show output ----
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: vif0.0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue
    link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff
3: veth0: <BROADCAST,MULTICAST,UP> mtu 1400 qdisc noqueue
    link/ether 00:0d:60:4e:48:80 brd ff:ff:ff:ff:ff:ff
    inet 172.21.97.10/24 brd 172.21.97.255 scope global veth0
4: eth0: <BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc pfifo_fast master bond0
qlen 1000
    link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff
5: eth1: <BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc pfifo_fast master bond0
qlen 1000
    link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff
6: bond0: <BROADCAST,MULTICAST,NOARP,MASTER,UP> mtu 1500 qdisc noqueue
    link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff
7: vlan151: <BROADCAST,MULTICAST,NOARP,MASTER,UP> mtu 1500 qdisc noqueue
    link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff
8: vlan151-br: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue
    link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff

----- brctl show -----
# brctl show
bridge name     bridge id               STP enabled     interfaces
vlan151-br              8000.feffffffffff       no              vlan151
                                                        vif0.0
---- /proc/net/vlan/config ---
VLAN Dev name    | VLAN ID
Name-Type: VLAN_NAME_TYPE_PLUS_VID_NO_PAD
vlan151        | 151  | bond0

--- /proc/net/bonding/bond0 ----
Ethernet Channel Bonding Driver: v3.0.1 (January 9, 2006)

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0d:60:4e:48:80

Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:0d:60:4e:48:81


------ dmesg output -----
[    4.241856] NET: Registered protocol family 2
[    5.110174] IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
[    5.111697] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
[    5.113015] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    5.114387] TCP: Hash tables configured (established 8192 bind 8192)
[    5.115718] TCP reno registered
[    5.117130] TCP bic registered
[    5.118477] NET: Registered protocol family 1
[    5.119811] NET: Registered protocol family 8
[    5.121138] NET: Registered protocol family 20
[   13.583165] ACPI: PCI Interrupt 0000:01:00.0[A] -> GSI 16 (level, low) ->
IRQ 18
[   13.608167] eth0: Tigon3 [partno(BCM95704A41) rev 2002 PHY(serdes)]
(PCIX:133MHz:64-bit) 10/100/1000BaseT Ethernet 00:0d:60:4e:48:80
[   13.611700] eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] Split[0]
WireSpeed[0] TSOcap[1]
[   13.614293] eth0: dma_rwctrl[769f4000] dma_mask[64-bit]
[   13.615686] ACPI: PCI Interrupt 0000:01:00.1[B] -> GSI 17 (level, low) ->
IRQ 19
[   13.640281] eth1: Tigon3 [partno(BCM95704A41) rev 2002 PHY(serdes)]
(PCIX:133MHz:64-bit) 10/100/1000BaseT Ethernet 00:0d:60:4e:48:81
[   13.643278] eth1: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] Split[0]
WireSpeed[0] TSOcap[1]
[   13.645883] eth1: dma_rwctrl[769f4000] dma_mask[64-bit]
[   37.972543] 802.1Q VLAN Support v1.8 Ben Greear <greearb@xxxxxxxxxxxxxxx>
[   37.973966] All bugs added by David S. Miller <davem@xxxxxxxxxx>
[   38.470076] Bridge firewalling registered
[   38.561883] NET: Registered protocol family 17
[   38.920085] bonding: bond0: Warning: failed to get speed and duplex from
eth0, assumed to be 100Mb/sec and Full.
[   38.922690] bonding: bond0: enslaving eth0 as an active interface with an up
link.
[   39.290077] bonding: bond0: Warning: failed to get speed and duplex from
eth1, assumed to be 100Mb/sec and Full.
[   39.292682] bonding: bond0: enslaving eth1 as an active interface with an up
link.
[   39.350118] vlan151: dev_set_promiscuity(master, 1)
[   39.351448] device eth0 entered promiscuous mode
[   39.352738] device eth1 entered promiscuous mode
[   39.354082] device bond0 entered promiscuous mode
[   39.355426] device vlan151 entered promiscuous mode
[   39.359806] vlan151-br: port 1(vlan151) entering learning state
[   39.379655] device vif0.0 entered promiscuous mode
[   39.385422] vlan151-br: port 2(vif0.0) entering learning state
[   43.350243] tg3: eth0: Link is up at 1000 Mbps, full duplex.
[   43.351526] tg3: eth0: Flow control is off for TX and off for RX.
[   43.700256] tg3: eth1: Link is up at 1000 Mbps, full duplex.
[   43.701601] tg3: eth1: Flow control is off for TX and off for RX.
[   54.360062] vlan151-br: topology change detected, propagating
[   54.361410] vlan151-br: port 1(vlan151) entering forwarding state
[   54.380060] vlan151-br: topology change detected, propagating
[   54.381401] vlan151-br: port 2(vif0.0) entering forwarding state


-- 
Configure bugmail: 
http://bugzilla.xensource.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

_______________________________________________
Xen-bugs mailing list
Xen-bugs@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-bugs


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.