[linux] Re: een virtual box op het LAN

Kees Theunissen theuniss op rijnh.nl
Za Jul 5 15:27:59 CEST 2008


On Sat, 5 Jul 2008, Geert Stappers wrote:

>Hallo Mailinglist,
>
>Samenvatting: Hoe krijg je een Virtual Box op het echte LAN?
>
>
>Op een computer met veel CPU rekenkracht en veel geheugen
>heb ik verschillen computers ge-simuleert m.b.v. van Qemu en Virtual Box.
>Zij zijn onderling verbonden met VDE en TAP devices die gebridged zijn.
>Het is een eigen netwerk, een virtueel netwerk, wat toeganglijk is voor
>het echte, fysieke, netwerk.
>
>Nu wil ik een Virtual Box guest in het fysieke netwerk hebben.
>Ik ga er vanuit dat het kan. (Deze aanname bevestigen of ontkrachten is
>reeds een grote hulp voor mij.)
>Ik wil het realizeren met een TAP device op de krachtige computer
>en in Virtual Box zeggen dat dat TAP device gebruikt moet worden.
>(Dat is ook wat ik succesvol gedaan heb in het geheel virtuele netwerk.)
>En dan dat TAP device bridgen met eth0.
>
>Als ik eth0 echter toevoeg aan de brigde, ben ik de verbinding kwijt...
>
>Wat is de truuk om het wel voormekaar te krijgen?

Ik heb op het werk een slackware 12.0 host met een paar KVM/Qemu
virtual machines als guest. De guests gebruiken bridged tap devices
net als bij jou. De truuk om die bridge aan het fisieke netwerk te
hangen is om de bridge als primaire interface van de host op te
brengen in plaats van eth0.

Het onderstaande is ongetwijfeld slackware specifiek, maar dit zijn
de relevante delen uit mijn config files:

/etc/rc.d/rc.inet1.conf:
------------------------
[...]
# Configure br0:
# The commands to bring up eth0 and the bridge are in /etc/modprobe.d/br0
IFNAME[0]="br0"
IPADDR[0]="192.42.125.241"
NETMASK[0]="255.255.254.0"
USE_DHCP[0]=""
DHCP_HOSTNAME[0]=""

# Config information for eth1:
IPADDR[1]=""
NETMASK[1]=""
USE_DHCP[1]=""
DHCP_HOSTNAME[1]=""
[...]


en /etc/modprobe.d/br0:
-----------------------
alias br0 bridge
install bridge /sbin/ip link set eth0 up; modprobe --ignore-install bridge; /usr/sbin/brctl addbr br0; /usr/sbin/brctl addif br0 eth0; sleep 2


einde config files.
-------------------

Voor de duidelijkheid: alles wat na "instal bridge" komt in
/etc/modprobe.d/br0 staat op een en dezelfde lange regel.
Dikke kans dat die door mijn email client opgeknipt wordt bij het
verzenden.

De regel  IFNAME[0]="br0"  in de stanza voor de eerste interface
in /etc/rc.d/rc.inet1.conf heb ik zelf toegevoegd. Zoals de lege
stanza voor eth1 laat zien wordt daar geen interface naam gedefinieerd.
Slackware gebruikt dan default interface eth*, wat ik hier dus overruled
heb door br0 als naam te gebruiken.

Op deze manier heb ik het opbrengen van br0 als primaire (en enige)
netwerk interface van de host kunnen realiseren met uitsluitend
aanpassingen in config files. Ik heb geen scripts hoeven te modificeren
en mag er dus op vertrouwen dat deze configuratie bestand is tegen
updates. ( Formeel is /etc/rc.d/rc.inet1.conf natuurlijk toch een
script dat gesourced wordt door /etc/rc.d/rc.inet1 )

In het kort: breng eerst de bridge op met eth0 als enige interface,
en ken daarna een IP nummer toe aan de bridge in plaats van aan eth0.

/sbin/ifconfig geeft:

br0       Link encap:Ethernet  HWaddr 00:13:72:2B:7C:94
          inet addr:192.42.125.241  Bcast:192.42.125.255  Mask:255.255.254.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8520719 errors:0 dropped:0 overruns:0 frame:0
          TX packets:235483 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:749334989 (714.6 MiB)  TX bytes:75588202 (72.0 MiB)

eth0      Link encap:Ethernet  HWaddr 00:13:72:2B:7C:94
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:10440424 errors:0 dropped:0 overruns:0 frame:0
          TX packets:471619 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1691310462 (1.5 GiB)  TX bytes:149150172 (142.2 MiB)
          Interrupt:17

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:107 errors:0 dropped:0 overruns:0 frame:0
          TX packets:107 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:8016 (7.8 KiB)  TX bytes:8016 (7.8 KiB)



Groeten,

Kees.

-- 
Kees Theunissen
F.O.M.-Instituut voor Plasmafysica Rijnhuizen, Nieuwegein
E-mail: theuniss op rijnh.nl,     Tel: 030-6096724,     Fax: 030-6031204



More information about the Linux mailing list