[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-users] XenNetworking - Reason for NOARP on eth1/br1?
On Tue, 2006-02-21 at 08:26 +1300, Nicholas Lee wrote: > On 21/02/06, Patrick Wolfe <pwolfe@xxxxxxxxxxxxxx> wrote: > > external network and the xenbr0 bridge. It does not have any IP address > > associated with it, so there is no reason for it to support ARP. > > Right, but if ARP is enabled will it wont cause problems? If ARP is enabled on a physical ethernet interface that is setup with the mac address FE:FF:FF:FF:FF:FF, I doubt any problem will occur, but why risk it? > Thing is a virtual ethernet device is only created for eth0 by xend. > AFAICT with the default scripts if you setup a second bridge network > with either a real physical or a dummy interface a second virtual > veth/vif is not created. There are two sets of virtual ethernet interface pair that Xen creates. The first set are for use by dom0. That's the eight connected pairs from veth0<->vif0.0, veth1<->vif0.1 through veth7<->vif0.7. That's all that exists when you first boot up dom0. When you create a new domU, a new virtual ethernet interface pair is created out of thin air. One end is the ethernet interface of the domU (eth0 for linux, xn0 for bsd), the other end is the vif#.0 in dom0. The "#" character is actually the virtual machine number. If you want to create a second bridge, attach a physical interface to it, and attach a domU to that bridge, without dom0 having an interface with it, you will need to write some script somewhere that will create the bridge and set it up, setup the physical interface and attach it to the bridge, and then you can "xm create" the domU, passing the second bridge's name in the vif statement. For example: # # xen virtual machine configuration file # name = "fire1" memory = 64 kernel = "/boot/vmlinuz-2.6.12.6-xen" ramdisk = "/boot/initrd.img-2.6.12.6-xen" root = "/dev/sda1" disk=[ 'phy:/dev/vg0/fire1root,sda1,w', 'phy:/dev/vg0/fire1swap,sda2,w' ] vif=[ 'mac=00:16:3E:70:01:01,bridge=br0eth0', 'mac=00:16:3E:70:02:01,bridge=br1dmz' ] This is the fire1.sxp config file I use on my desktop. It specifies that the fire1 system connects to two different bridges - br0eth0 which happens to be connected to the physical interface eth0, and br1dmz, which is where all the rest of my domU's connect their eth0 interface. You don't have to connect dom0 to the second bridge. You don't have to rename the physical interface as "peth1" either. I think the only reason they did that renaming thing, is that some scripts and people would get confused if their dom0's ethernet interface was named different than the default interface of each of their domUs. > Main reason I'm trying to figure this out is on my problem host, I'm > struggling with what seems to be a problem with bridging and working > correct. (See and early email.) Pings work, tcp (ssh) doesn't. eth0 > bridge works locally, eth1 bridge doesn't work locally. Only remotely. That sounds like the well known issue with checksum offloading not working in the xen virtual ethernet drivers. I had the same problem, at first. You just need to run: ethtool -K eth0 tx off on every one of your interfaces in every domU and dom0 whenever they are brought up. If you're using debian, just add: pre-up ethtool -K eth0 tx off to every domU's /etc/network/interfaces file, right after the "iface eth0 inet dhcp" line. If you're using some other distro, like redhat or suse, well, I'm not intimately familiar with how they set their network interfaces up to know where to add that command. -- Patrick Wolfe email: pwolfe@xxxxxxxxxxxxxx Attachment:
signature.asc _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |