Leidiges Thema: Kvm/Libvirt + eigenes Subnetz bei Hetzner

djabit

New Member
Hallo zusammen,

ich hab mich grad hier angemeldet und auch schon fleißig die Suchfunktion bemüht sowie das Hetzner Wiki durchforstet.
Mein Account im Hetzner Forum wurde leider bisher nicht freigeschaltet... ich nehme an, dass ich dort eine Antwort auf meine Fragen finden würde.

Ich bin im Umgang mit Linux relativ bewandert... die Netzwerkkonfiguration auf einem Rootserver für die KVM Virtualisierung ist allerdings Neuland für mich.

Ich hab einen Ubuntu 10.04 Rootserver (EQ8) bei Hetzner sowie ein eigenes Subnetz mit 14 IPs.
Ich brauche davon ca. 10 für virtuelle Maschinen (Windows Server, Debian, Ubuntu) ... es ist also nicht dramatisch, wenn davon welche für gateway etc. "verloren" gehen.

Das Problem ist ja, wenn ich das richtig verstanden habe, dass die IP Adressen bei Hetzner an die MAC Adresse des physikalischen Servers gebunden sind. Ein einfaches Bridge Setup, wie ich es bei mir zu Hause verwende, ist also nicht möglich.

Stattdessen müssen die IP-Adressen irgendwie gerouted werden... und das ist der Punkt wo ich Neuland betrete.

Ich möchte, dass die Virtuellen Maschinen wie eigenständige rootserver erreichbar sind... also kein NAT auf dem Server.
Desweiteren verwende ich zur Verwaltung den virt-manager und würde das gerne - wenn möglich - auch weiterhin tun.

Ich hab die einzelnen Howtos im Hetzner wiki probiert... und es teilweise auch geschafft, dass die virtuelle Maschine mit einer IP aus dem Subnetz ins Internet kam... nur erreichbar war sie leider nicht.
Scheinbar gibt es hier ja einige unterschiedliche Wege nach Rom :confused: !

Könnt ihr mir sagen, was nach eurer Meinung der "sinnvollste" Weg ist?
Vielen Dank.
 
Ich hab die einzelnen Howtos im Hetzner wiki probiert... und es teilweise auch geschafft, dass die virtuelle Maschine mit einer IP aus dem Subnetz ins Internet kam... nur erreichbar war sie leider nicht.
Hast du dieses Tutorial auch komplett befolgt ohne Stuecke zu ueberspringen oder 'korrigieren'?

Zeig mal bitte dein Netwerksetup in dom0 und domU
 
Hi,

ich hab mir dieses Tutorial durchgelesen und bin zu dem Schluss gekommen, dass ich damit nicht das erreiche, was ich möchte.
Ich wollte eigentlich das Subnetz komplett auf die Bridge routen... auch wenn dabei eine Adresse verloren geht. Zudem konnte ich, nach zugegeben relativ kurzer Recherche, kein Äquivalent für Pointopoint für meine Windows Gäste finden.

Im Moment sieht das Setup auf dem Host so aus:
/etc/network/interfaces
Code:
# Loopback device:
auto lo
iface lo inet loopback

# device: eth0
auto  eth0
iface eth0 inet static
  address   xxx.xxx.xxx.115
  netmask  255.255.255.255
  gateway   xxx.xxx.xxx.97
  pointopoint xxx.xxx.xxx.97

Außerdem hab ich eine Bridge nach diesem howto erstellt.
Ausgabe von ifconfig für die bridge:
Code:
virbr1   Link encap:Ethernet  HWaddr ae:88:af:6a:b8:31  
          inet addr:yyy.yyy.yyy.112  Bcast:yyy.yyy.yyy.127  Mask:255.255.255.240
          inet6 addr: fe80::ac88:afff:fe6a:b831/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:102 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:4500 (4.5 KB)

Der Gast (Windows 2003 Server) ist dem "hetzner-subnetz1" (siehe Howto) zugeordnet.
Ip-Adresse: yyy.yyy.yyy.113
Netzmaske: 255.255.255.240
Gateway: yyy.yyy.yyy.112

Ip-Forwarding ist auf dem Host natürlich auch gesetzt.

Danke für Hilfe.
 
Ok ich habe keine Ahnung warum... aber in einer zweiten VM mit SBS2011 gehts problemlos.
Sobald ich die Einstellungen sicher weiß poste ich wie es geht.
 
Für meine IPs kann ich im Hetzner Robot extra MAC-Adressen beantragen. Müsste damit nicht eine bridge funktionieren?
 
Ich habe dir nen Screenshot gemacht.
 

Attachments

  • hetzner_new_max.png
    hetzner_new_max.png
    29.3 KB · Views: 841
Danke dir.
Bei mir sieht das leider anders aus... ich hab ein Subnet :( ! Scheinbar geht es da nicht per Robot.
 
Stimmt, separate Mac Adressen bekommt man nur bei den zusaetzlichen einzel IPs , leider nicht bei einem Subnetz. Hab das mal beim Support nachgefragt.
 
Hi,

ich habs komplett über libvirt geregelt, funktioniert tadellos auf Debian Squeeze. Allerdings gehen bei dem Setup 2 IPs für Gateway & Broadcast drauf. /etc/network/interfaces bleibt dabei Standard und die Netze werden via libvirt konfiguriert.

Angenommen du hast folgendes Netzwerk (frei erfunden):

Code:
Subnetz:	46.2.165.192/29
Maske:		255.255.255.240
Gateway:	46.2.165.193
Broadcast:	46.2.165.207
VM IPs:		46.2.165.194-206

/etc/libvirt/qemu/networks/subnet.xml

Code:
<network>
  <name>subnet</name>
  <forward dev='eth0' mode='route'/>
  <bridge name='virbr1' stp='on' delay='0' />
  <ip address='46.2.165.193' netmask='255.255.255.240'>
    <dhcp>
      <range start='46.2.165.206' end='46.2.165.206' />
    </dhcp>
  </ip>
</network>

Den DHCP-Eintrag kannst du dir sparen, ist aber u.U. recht nützlich bei der Installation neuer VMs, da man beim Setup die Netzkonfiguration überspringen kann. Dann noch

Code:
cd /etc/libvirt/qemu/networks/
virsh net-define subnet.xml
virsh net-start subnet
virsh net-autostart subnet

und das Netz ist aktiv und kann verwendet werden. In der VM XML verwendest du das Netz dann folgendermaßen:

Code:
    <interface type='network'>
      ...
      <source network='subnet'/>
      <model type='virtio'/>
      ...
    </interface>

Bzw. mit virt-install:

Code:
--network network=subnet,model=virtio

Dann noch in der VM die statische IP definieren und fertisch:

Code:
auto eth0
iface eth0 inet static
  address 46.2.165.194
  netmask 255.255.255.240
  broadcast 46.2.165.207
  gateway 46.2.165.193

Alternativ kannst du auch in der network-config statische DHCP-Einträge für die MAC-Adressen der VMs definieren (siehe libvirt-Doku).

Funktioniert ohne Probleme mit Linux und Windows-Guests und braucht kein pointopoint. Einziger Nachteil, den ich sehe sind die "verlorenen" IPs und evtl. die von libvirt angelegten iptables-Rules, die komplizierteren Netzwerksetups in die Quere kommen könnten.
 
Back
Top