We are using UML's virtual networking to develop a variant of PPPoE. We test
protocol by starting a few UML's, each UML has a virtual eth i/f connected
to a tap device
on the host. On the host we bring the different tap's into a bridge to
simulate a small LAN.
Therefore I like Henriks proposal better, since we don't want IP addresses
the tap's, proxy arp or an entry in the hosts routing table.
Question: Why not to let the virtual eth i/f open /dev/tapx
directly instead of having
a helper app opening it?
> > > and the host ends IP address (and routing) you set with ifconfig on
> > > the host.
> > Right, which is exactly what happens. Except that ifconfig is run from
> > helper, which is invoked by the driver. The driver doesn't know
> > about the host IP address except that it's a cookie to be passed to the
> The problem I am having is a conceptual one.
> NIC hardware and cabling does not usually care about IP addresses, why
> UML variant do? From a conceptual point of view the helper is part of the
> hardware emulation.
> A TAP interface on the host is the equivalence of a crossed ethernet cable
> connecting the userspace application with a ethernet NIC on the host. The
> application (i.e. UML) may attach and detach this virtual cable to the
> whenever it wants, similar to how you plug and unplug a cable in in the
> If you were using the non persistent TUN/TAP device of 2.4 (without
> using a helper makes some sense as the host interface is truly lost when
> application disconnects, and it is quite awkward to get it configured
> automatically, but not when using ETHERTAP or persistent TUN/TAP.
> What I see as being useful in a production UML is a more generic trigger
> that is called whenever a UML interface is brought up or down, passing the
> UML name, UML interface name and TAP device name and a kernel command line
> specified cookie as arguments, but it should not default to use a SUID
> reconfiguring the host. It the administrator wants such a thing for some
> he/she can do it via the trigger.
> Henrik Nordstrom