From: Carl B. C. <cco...@cs...> - 2003-12-09 20:05:06
|
One of the things I'm struggling with in trying to set a UML system up and running, is networking between the host and the UML system. The docs in the How-To are confusing. Other documentation for installing root_fs' do not really cover host configuration of networking at all. Not only that, but some commands just plain don't work! for example: mknod /dev/tap0 c 36 0 + 16 gives an error of too many parameters. mknod /dev/tap0 c 36 16 works. tunctl -u uid gives an error /dev/net/tun does not exist/failed to open (or something like that). /dev/net/tun already exists in a default RH8 install. Should I use TUN/TAP or Ethertap? What if I don't want to arp for an ip, what do I need to arp for an IP for anyway? For ethertap, the eth0= line, is that on the host or the UML virtual machine? What really has to be done on the host side? Should it be done before, after, or during the UML install? Things like this are just not that clear in the docs and really need to be ironed out. Can anyone give me a clear concise method of setting up networking between host and UML? Then between UML and other hosts? Then between UML and other UML systems on the network? Thanks in advance. -- Carl B. Constantine University of Victoria Programmer Analyst http://www.csc.uvic.ca UNIX System Administrator Victoria, BC, Canada cco...@cs... ELW A248, 721-8766 |
From: <s-...@rh...> - 2003-12-09 20:54:10
|
On Tue, Dec 09, 2003 at 12:06:04PM -0800, Carl B. Constantine wrote: > mknod /dev/tap0 c 36 0 + 16 > > gives an error of too many parameters. > > mknod /dev/tap0 c 36 16 works. I think the 0+16 is meant to be an example of the <minor>+16 syntax described a line above in the networking document and not meant to be typed in literally. > tunctl -u uid gives an error /dev/net/tun does not exist/failed to open > (or something like that). /dev/net/tun already exists in a default RH8 > install. /dev/net/tun is what you should be using. You don't need to create the /dev/tapX devices. You might be getting the 'failed to open' error if you don't have the tun module loaded. try 'modprobe tun' and then do 'tunctl -u uid' as root again. > Should I use TUN/TAP or Ethertap? tun/tap. ethertap is obsolete. > What if I don't want to arp for an ip, what do I need to arp for an IP for > anyway? I'm not sure what you mean by 'arp for an ip'. Are you talking about proxy arp? > For ethertap, the eth0= line, is that on the host or the UML > virtual machine? All eth0= lines are for the uml. > What really has to be done on the host side? Should it be done before, > after, or during the UML install? That depends on what type of networking you want to do. Rather than further confuse you by talking about all the different options, why don't you describe what your existing network setup is like and what kind of connectivity you want to the uml instances to have (e.g. you want them to have IP addresses on the local network that the host is attached to, you want them on their own private IP addresses that only the host can see...) and I will recommend something. -Steve |
From: <s-...@rh...> - 2003-12-10 00:30:23
|
> But is it executed on the host side when starting UML or on the UML side > AFTER UML is started? I assume by 'executed' you're referring to uml_net's automatic setup of the host side. That happens as soon as you ifconfig an interface up within the uml. > > > What really has to be done on the host side? Should it be done before, > > > after, or during the UML install? > > > > That depends on what type of networking you want to do. Rather than further > > confuse you by talking about all the different options, why don't you > > describe what your existing network setup is like and what kind of > > connectivity you want to the uml instances to have (e.g. you want them to > > have IP addresses on the local network that the host is attached to, you > > want them on their own private IP addresses that only the host can see...) > > and I will recommend something. > > OK, The idea that this is being used to test, is for the Networking > course here at the University of Victoria. It would allow students to > have root access to a system, to play with, modify iptables and test the > heck out of it. So, the UML VM must be able to do the following: > > 1) communicate with the host and visa-versa > 2) allow students to set up IPTABLES and modify > 3) possible access to other hosts (also running UML) on a contained > network. > 4) share data between host and UML VM with floppy or some other means > (looks like another means in my testing and I'm reading some more docs > on doing this). Are you concerned about students changing their uml's IP address and screwing up the surrounding network? Or is this whole thing, host and all, on an experimental network or behind a firewall? -Steve |
From: <s-...@rh...> - 2003-12-10 21:25:21
|
> > Are you concerned about students changing their uml's IP address and > > screwing up the surrounding network? Or is this whole thing, host and all, > > on an experimental network or behind a firewall? > > It's an experimental network. Basically the UML will allow students root > access to do things like change firewall rules and test them by plasting > packets at the UML VMs. They can fiddle around in the UML machine > without messing up the host ;-) If the whole thing is an experimental network then bridging would work and is pretty simple. I have my bridging set up script at http://www.rhythm.cx/~steve/bt-up. I run that on the host to set up the host end. Then I boot the uml(s) with 'eth0=tuntap,tapX' and configure eth0 inside the UML as if the uml were a regular computer attached to the same network that the host is, and that's all there is to bridging. -Steve |