ich möchte mehrere server auf einem root server ([host]) virtualisieren, ich habe mich schlussendlich für KVM (+libvirt) entschieden. Der [host] hat nur ein NIC (Verbindung: Internet), dies habe ich gleich (erfolgreich) ge-"bridged"... Ich konnte auf allen Gästen verbinden (virt-manager) und statische IPs definieren (178.x.x.180 bis 178.x.x.190), prima, hat alles geklappt + sind von aussen zugreifbar (public).
soweit so gut...
jetzt möchte/muss ich einen Private-LAN (10.1.0.X) zwischen allen Gästen + Host erstellen - wie man's halt üblich kennt. Leider (wie vorher erwähnt) habe ich nur ein NIC zur Verfügung (eth0) und die ist schon ge-"bridged". Habe mich also etwas schlau gemacht... libvirt verfügt schon über ein voll virtualisiertes Netwerksystem, leider will es bei mir nicht richtig funktionieren! ich sitze jetzt mehr als 8 h an dieser Problem fest und weiss nicht was falsch ist (google weiss auch nicht was falsch lauft )
Zur Erklärung habe ich eine Netwerkzeichnung (SOLL-Zustand) erstellt:
* symbolische Darstellung
** manual konfig.
Code: Alles auswählen
---------------------[ host / root ]---------------------------------
+---------+ IP: 10.1.0.11 +-----------+
| eth0:0 |----------------------------------------- | |---------------------+
+---------+ | root | |
+-------+ +-------+ IP: 178.x.x.180 | server* | |
| eth0 | -------- | br0 | ----------------+-------| | |
+-------+ +-------+ | +-----------+ |
| |
---------------------------------------------|----------------------- | ( von 10.1.0.11 -->
| | auf 10.1.0.12 )
| |
---------------[ "guest" beispiel ]----------|----------------------- |
| |
| IP: 178.x.x.181 ** |
| |
IP: 10.1.0.12 +-----------+ |
+-------+ | guest1* | --------------------------- +
| libvirt | ------ | vnet0 |---------------| |
+-------+ +-----------+
---------------------------------------------------------------------
Code: Alles auswählen
---------------------[ host / root ]---------------------------------
+---------+ IP: 10.1.0.11 +-----------+
| eth0:0 |----------------------------------------- | |---------------------+
+---------+ | root | |
+-------+ +-------+ IP: 178.x.x.180 | server* | |
| eth0 | -------- | br0 | ----------------+-------| | |
+-------+ +-------+ | +-----------+ |
| x
---------------------------------------------|----------------------- x ( von 10.1.0.11 -->
| x auf 10.1.0.12 -- FAIL )
| x ( von 10.1.0.12 -->
---------------[ "guest" beispiel ]----------|----------------------- x auf 10.1.0.11 -- FAIL )
| |
| IP: 178.x.x.181 ** |
| |
IP: 10.1.0.12 +-----------+ |
+-------+ | guest1* | --------------------------- +
| libvirt | ------ | vnet0 |---------------| |
+-------+ +-----------+
---------------------------------------------------------------------
Mein "Default"-Netwerk (libvirt) ist wie folgt konfiguriert:
Anleitungen gefolgt: hier und hier
Code: Alles auswählen
<network>
<name>default</name>
<uuid>3e3fce45-4f53-4fa7-bb32-11f34168b82b</uuid>
<bridge name="virbr0" />
<ip address="10.1.0.5" netmask="255.255.255.0" /> // 10.1.0.5 wird auf den Gästen als Default-Gateway konfiguriert - richtig oder?
</network>
doku liegt hier. Beide NIC's erscheinen in den Gast-Systemen
Code: Alles auswählen
.....
<interface type='bridge'>
<mac address='54:52:00:19:XX:XX'/>
<source bridge='br0'/> <---- auf eth0 (also Internet)
</interface>
<interface type='network'>
<mac address='52:54:00:91:XX:XX'/>
<source network='default'/> <---- (libvirt default-Netwerk)
</interface>
.....
Code: Alles auswählen
virbr0 Link encap:Ethernet HWaddr 00:ff:19:cc:XX:XX
inet addr:10.1.0.5 Bcast:10.1.0.255 Mask:255.255.255.0
inet6 addr: fe80::7ca9:96ff:feb6:5934/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:989 errors:0 dropped:0 overruns:0 frame:0
TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:106585 (104.0 KiB) TX bytes:1182 (1.1 KiB)
vnet0 Link encap:Ethernet HWaddr 00:ff:a1:4e:XX:XX
inet6 addr: fe80::2ff:a1ff:fe4e:8547/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:117 errors:0 dropped:0 overruns:0 frame:0
TX packets:7183 errors:0 dropped:0 overruns:0 carrier:0 (<---- its alive!!!)
collisions:0 txqueuelen:500
RX bytes:7362 (7.1 KiB) TX bytes:501956 (490.1 KiB)
vnet1 Link encap:Ethernet HWaddr 00:ff:63:89:XX:XX
inet6 addr: fe80::2ff:63ff:fe89:ca13/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:64 errors:0 dropped:0 overruns:1 carrier:0
collisions:0 txqueuelen:500
RX bytes:0 (0.0 B) TX bytes:5010 (4.8 KiB)
.....
Code: Alles auswählen
iptables -vnL FORWARD
Chain FORWARD (policy ACCEPT 14291 packets, 1448K bytes)
pkts bytes target prot opt in out source destination
89 8341 ACCEPT all -- * virbr0 0.0.0.0/0 10.1.0.0/24
48 2370 ACCEPT all -- virbr0 * 10.1.0.0/24 0.0.0.0/0
284 50279 ACCEPT all -- virbr0 virbr0 0.0.0.0/0 0.0.0.0/0
0 0 REJECT all -- * virbr0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- virbr0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
falls jemand sich die mühe gemacht hat mein post bis zum schluss durchzulesen, hat sich eine denkpause verdient: http://www.youtube.com/watch?v=1enuUrL54C4
danke für eure hilfe!