On Thu, 11 Aug 2005, Oliver Gerlich wrote:

Couldn't we avoid these incompatibilities if we would route packets only on the Ethernet level? If the Qemu networking setup on the host involves IP addresses or such things, we're already on the wrong OSI layer I think...

From what I can tell there is no way userspace can send Ethernet frames to
the host as if coming from the eth0 interface, short of writing a kernel module to make this magics happen.

I'm not very experienced in networking, but IMHO the network should be set up like this:

                                   (eth0 on Host OS)
                                  /
( LAN ) <----> (real eth0) <-> VDE
                                  \
                                   (NIC on Guest OS)

This is what you do with bridgeing.

                         (br0 on Host OS)
                         /
( LAN ) <---> eth0 <-> bridge
                         \
                         (tap0 to VDE/qemu)


Hmm.. actually the bridge setup can be simplified somewhat on Linux hosts by using an early boot script run before the eth0 is initialized, renaming eth0 to something else and creating a bridge named eth0, including the renamed eth0 interface..


   modprobe eth0
   ip link set eth0 name eth0real
   brctl addbr eth0
   brctl addif eth0 eth0real
   ip link set eth0real up


So this is a summary of what I think we should try to achieve (sorted by priority):

-provide Ethernet-layer access from the Guest to the LAN (so that it's transparent for IP traffic)

Done.

-allow using a LAN-wide DHCP server for the Guest

Done by the above.

-the host should be able to set up his LAN interface over the LAN-wide DHCP server.

Done.

-the host networking still works as before (at least on the layers above Ethernet)

Done.

-the whole thing is easy to set up

Done.

-the whole thing can be started by any user at any time (so it's not started at boot time, but whenever a user starts Qemu).

Requires root rights.

The restrictions to the above is that the guest can not reach the host in such setup.

Regards
Henrik


_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel

Reply via email to