qemu und bridge-utils
qemu und bridge-utils
Hallo,
ich möchte mit qemu (oder besser gesagt, die Betriebssysteme, die darin laufen) direkt mit meinem LAN verbinden. Sie sollen direkt angesprochen werden und auch eine eigenen IP von meinem DHCP-Server bekommen. Soweit ich weiß, brauche ich da die bridge-utils. Aber wie geht es dann weiter?
Gruß Tom
ich möchte mit qemu (oder besser gesagt, die Betriebssysteme, die darin laufen) direkt mit meinem LAN verbinden. Sie sollen direkt angesprochen werden und auch eine eigenen IP von meinem DHCP-Server bekommen. Soweit ich weiß, brauche ich da die bridge-utils. Aber wie geht es dann weiter?
Gruß Tom
Da mir diese Idee, das Win98 in qemu via bridge direkt in mein Subnet zubringen, sehr gut gefällt, probiere ich das jetzt aus.
Bei den bridge-utils ist die Datei /usr/share/doc/bridge-utils/HOWTO in der es eigentlich eine sehr gute Anleitung gibt. Werde die jetzt mal testen und mich ggf. nochmal melden.
grüße
mludwig
Bei den bridge-utils ist die Datei /usr/share/doc/bridge-utils/HOWTO in der es eigentlich eine sehr gute Anleitung gibt. Werde die jetzt mal testen und mich ggf. nochmal melden.
grüße
mludwig
ok, also bei mir funzt das jetzt. Ist allerdings noch holprig, werde mir wohl noch einiges automatisieren.
als erstes sicherstellen dass die Module bridge und tun geladen sind. Das device /dev/net/tun muss für den Nutzer von qemu les- und schreibbar sein.
Die bridge-utils müssen installiert sein.
Dann in die /etc/network/interfaces eintragen
Die Einträge für eth0 würde ich erstmal auskommentieren. Wie das auf dauert geht muss ich noch ausknobeln.
Somit werden eth0 und tun0 in die Bridge integriert. Da tun0 erst erscheint, wenn qemu schon läuft, muss root noch ausführen:
Weiß jemand wie man das Interface erstellt? Ich hatte gehofft das erscheint automatisch, wenn das Modul geladen wird, dem ist aber nicht so.
Das war bei mir alles, jetzt kann ich mit dem in qemu laufenden win98 meinen router anpingen, welcher auf eth0 erreichbar ist. In win98 muss natürlich ebenfalls dhcp aktiviert sein. Der Host, in dem qemu läuft, hat für den router und das win98 die gleiche IP
grüße
mludwig
PS.: suche jetzt noch nach wegen, das alles schneller zu machen, nicht so viel von hand.
als erstes sicherstellen dass die Module bridge und tun geladen sind.
Code: Alles auswählen
modprobe tun bridge
Code: Alles auswählen
chmod 666 /dev/net/tun
Code: Alles auswählen
apt-get install bridge-utils
Code: Alles auswählen
iface br0 inet dhcp
bridge_ports eth0 tun0
Somit werden eth0 und tun0 in die Bridge integriert. Da tun0 erst erscheint, wenn qemu schon läuft, muss root noch ausführen:
Code: Alles auswählen
ifdown tun0
ifup br0
Das war bei mir alles, jetzt kann ich mit dem in qemu laufenden win98 meinen router anpingen, welcher auf eth0 erreichbar ist. In win98 muss natürlich ebenfalls dhcp aktiviert sein. Der Host, in dem qemu läuft, hat für den router und das win98 die gleiche IP
grüße
mludwig
PS.: suche jetzt noch nach wegen, das alles schneller zu machen, nicht so viel von hand.
Das habe ich noch nicht probiert, aber vermutlich hat jede Instanz dann sein eigenes tun-Interface. Diese dann einfach zur Zeile
hinzufügen.
mludwig
Code: Alles auswählen
bridge_ports eth0 tun0 tun1 tun2 ....
mludwig
Hallo,
ich habe hier mal was in einem BSD-Forum gefunden. Obs unter Linux funktioniert weiß ich nicht.
http://www.bsdforen.de/showpost.php?p=7 ... stcount=19
Gruß Tom[/url]
ich habe hier mal was in einem BSD-Forum gefunden. Obs unter Linux funktioniert weiß ich nicht.
http://www.bsdforen.de/showpost.php?p=7 ... stcount=19
Gruß Tom[/url]
Nachdem qemu gestartet wurde, wird kein tun0-Interface angelegt? Entweder ist dann das tun-Modul nicht geladen oder der User hat nicht genug Rechte für /dev/net/tun
Was sagt denn in dem Moment ifconfig?
grüße
mludwig
PS.: hier funzt alles ganz gut, komme unter qemu ins lokale Netz sowie ins Internet, Maschinen aus dem lokalen Netz können auf den emulierten Rechner zugreifen.
Was sagt denn in dem Moment ifconfig?
grüße
mludwig
PS.: hier funzt alles ganz gut, komme unter qemu ins lokale Netz sowie ins Internet, Maschinen aus dem lokalen Netz können auf den emulierten Rechner zugreifen.
Hallo,
die Rechte für /dev/net/tun müssten reichen - ich führe qemu als root aus.
Hier die Ausgabe von ifconfig
Hier nochmal die /etc/network/interfaces
Gruß Tom
die Rechte für /dev/net/tun müssten reichen - ich führe qemu als root aus.
Hier die Ausgabe von ifconfig
Code: Alles auswählen
server:~# ifconfig
br0 Protokoll:Ethernet Hardware Adresse 00:11:2F:82:33:85
inet Adresse:192.168.2.151 Bcast:192.168.2.255 Maske:255.255.255.0
inet6 Adresse: fe80::211:2fff:fe82:3385/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:117 errors:0 dropped:0 overruns:0 frame:0
TX packets:59 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:11925 (11.6 KiB) TX bytes:8039 (7.8 KiB)
eth0 Protokoll:Ethernet Hardware Adresse 00:11:2F:82:33:85
inet6 Adresse: fe80::211:2fff:fe82:3385/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:193047 errors:0 dropped:0 overruns:0 frame:0
TX packets:1715 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:12569522 (11.9 MiB) TX bytes:219495 (214.3 KiB)
Interrupt:177 Basisadresse:0xd000
lo Protokoll:Lokale Schleife
inet Adresse:127.0.0.1 Maske:255.0.0.0
inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1008 errors:0 dropped:0 overruns:0 frame:0
TX packets:1008 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:53548 (52.2 KiB) TX bytes:53548 (52.2 KiB)
tun0 Protokoll:Ethernet Hardware Adresse 00:FF:FB:63:0E:86
inet6 Adresse: fe80::2ff:fbff:fe63:e86/64 Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:12 errors:0 dropped:0 overruns:0 frame:0
TX packets:803 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX bytes:2772 (2.7 KiB) TX bytes:55861 (54.5 KiB)
Code: Alles auswählen
server:~# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#auto eth0
#iface eth0 inet static
# address 192.168.2.99
# netmask 255.255.255.0
# gateway 192.168.2.1
auto br0
iface br0 inet dhcp
bridge_ports eth0 tun0
Nach diesen Informationen sollte ein eigentlich alles sein, was noch notwendig ist. Da durch die bridge-utils alles eingerichtet ist, werden durch die pre-init scripte alle notwendigen Einstellungen vorgenommen.
grüße
mludwig
Code: Alles auswählen
ifup br0
grüße
mludwig
- KBDCALLS
- Moderator
- Beiträge: 22451
- Registriert: 24.12.2003 21:26:55
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Dortmund
-
Kontaktdaten:
Habs gerade mal probeweise mit ausprobiert.
Das modul tun [/code] und das Device wurde automatisch erstellt.
Nach dieser Anleitung vom Linuxmagazin 08/2002
Aus dem Leben eines Sysadmins: OpenVPN Verlässlich verbinden
Code: Alles auswählen
openvpn
Code: Alles auswählen
matthias@biljana:~$ /sbin/ifconfig tun0
tun0 Protokoll:UNSPEC Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet Adresse:10.0.0.1 P-z-P:10.0.0.2 Maske:255.255.255.255
UP PUNKTZUPUNKT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Code: Alles auswählen
/dev/net/tun
Nach dieser Anleitung vom Linuxmagazin 08/2002
Aus dem Leben eines Sysadmins: OpenVPN Verlässlich verbinden
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
- Kennst du unsere Verhaltensregeln
- Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.