1 Debian 6.x

1 Debian 6.x

Ich möchte zu Testzwecken ein einfaches Subnetz von KVM/QEMU-Gast-VMs einrichten, die auf einem einzigen Host (Fedora 19) laufen. Das Subnetz würde 3 Server enthalten:

1 Debian 6.x

eth0 IP: 10.0.0.7 eth1 IP: 10.0.2.1

2 Debian 7.x

eth0 IP: 10.0.2.2

2 CentOS 6.x

eth0 IP: 10.0.2.3

und (möglicherweise) mehrere Kunden.

Die Idee besteht darin, ein Subnetz zu simulieren, in dem nur eine VM (Nr. 1 von oben) mit dem WAN-Netzwerk verbunden ist und als Gateway/Router für den Rest dient.

Ich experimentiere derzeit mit einem Setup, das auf dem hier beschriebenen basiert:

http://csortu.blogspot.com/2009/12/building-virtual-network-with-qemu.html

Aber im Moment scheint es nicht möglich zu sein, anderen VMs außer Nr. 1 eine WAN-Konnektivität bereitzustellen.

Ich habe zwei Fragen: 1. Gibt es eine einfachere Lösung? 2. (Wenn nicht) wie kann ich andere VMs mit der Außenwelt verbinden, indem ich VM Nr. 1 als Gateway verwende?

P.S.: Ich sollte wahrscheinlich erwähnen, dass alle VMs miteinander verbunden sind, aber WAN-Zugriff nur auf Nr. 1 verfügbar ist.

BEARBEITEN: Wie gewünscht, hier die vollständige Netzwerkkonfiguration.

HOST: Fedora 19 x86-64, direkt verbunden mit meinem Heimrouter (10.0.0.1) im Netzwerk 10.0.0/24 (drucke nur relevante Schnittstellen)

3: wlp12s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 0c:60:76:64:c5:9d brd ff:ff:ff:ff:ff:ff
inet 10.0.0.3/28 brd 10.0.0.15 scope global wlp12s0
   valid_lft forever preferred_lft forever
inet6 fe80::e60:76ff:fe64:c59d/64 scope link 
   valid_lft forever preferred_lft forever
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN 
link/ether 2e:47:f7:fc:f2:fb brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
   valid_lft forever preferred_lft forever

VMs:

1 - Debian 6 amd64 mit zwei konfigurierten Netzwerkkarten (eine für den Zugriff auf mein Heimnetzwerk über den HOST und die zweite für das interne, nur für VMs zugängliche Subnetz 10.0.2/24)

Hier ist der Startbefehl (ich habe die standardmäßige QEMU-Benutzernetzwerkkonfiguration geändert, um mein Heimnetzwerk widerzuspiegeln, und den HOST-Port 2222 umgeleitet, um auf dem GAST auf Port 22-SSH zuzugreifen).

qemu-system-x86_64 -cpu host -enable-kvm --name Debian6-amd64 -hda VMs/Debian6/sda.img -hdb VMs/Debian6/sdb.img -net nic,vlan=1 -net user,vlan=1,hostfwd=tcp::2222-:22,net=10.0.0.0/24,dhcpstart=10.0.0.7 -net nic,vlan=2,macaddr=52:54:00:00:02:01 -net socket,vlan=2,listen=localhost:1234 -m 512 -boot c -nographic

und hier sind die Schnittstellenkonfigurationen:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.7/24 brd 10.0.0.255 scope global eth0
inet6 fe80::5054:ff:fe12:3456/64 scope link 
   valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:00:02:01 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.1/24 brd 10.0.2.255 scope global eth1
inet6 fe80::5054:ff:fe00:201/64 scope link 
   valid_lft forever preferred_lft forever

2 – Debian 7 amd64 mit einer konfigurierten Netzwerkkarte (internes Subnetz 10.0.2/24)

Der Startbefehl:

qemu-system-x86_64 -cpu host -enable-kvm --name Debian7-amd64 -hda VMs/Debian7/sda.img -hdb VMs/Debian7/sdb.img -net nic,vlan=2,macaddr=52:54:00:00:02:02 -net socket,vlan=2,connect=localhost:1234 -m 512 -boot c -nographic

und die Schnittstellenkonfiguration

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:00:02:02 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.2/24 brd 10.0.2.255 scope global eth0
inet6 fe80::5054:ff:fe00:202/64 scope link 
   valid_lft forever preferred_lft forever

3 – CentOS 6 x86-64 mit einer konfigurierten Netzwerkkarte (internes 10.0.2/24-Subnetz)

Der Startbefehl:

qemu-system-x86_64 -cpu host -enable-kvm --name CentOS6-x86_64 -hda VMs/CentOS6/sda.img -hdb VMs/CentOS6/sdb.img -net nic,vlan=2,macaddr=52:54:00:00:02:03 -net socket,vlan=2,connect=localhost:1234 -m 512 -boot c -nographic

und die Schnittstellenkonfiguration

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:00:02:03 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.3/24 brd 10.0.2.255 scope global eth0
inet6 fe80::5054:ff:fe00:203/64 scope link 
   valid_lft forever preferred_lft forever

Antwort1

Ist die Debian6-VM für die Weiterleitung von IP-Paketen konfiguriert?

Haben Sie auf den anderen beiden VMs Standardrouten konfiguriert, die auf die VM Debian 6 verweisen?

Wenn ja, könnten Sie versuchen, das interne LAN auf ein anderes großes Subnetz als 10.xxx zu ändern, also 192.168.1.x/24?

Nachdem Sie das neue interne Subnetz verwendet haben, müssen Sie auf Ihrem Internet-Router eine Route zum internen Subnetz 192.168.1.x konfigurieren, die auf die Debian6-VM verweist.

verwandte Informationen