Hetzner KVM Verbindungsabbruch

fabi288

New Member
Hallo,

ein frohes neues Jahr.

Ich habe mal wieder ein Problem, es geht darum das bei einer VM immer die Verbindung abbricht für 10 - 20 Sek ... Leider weiß ich nicht woran das liegen kann. Die Logs zeigen auch nichts ausfälliges.

Ich haben den Hypervisor nach dieser Anleitung konfiguriert. http://wiki.hetzner.de/index.php/KVM_mit_Nutzung_aller_IPs_-_the_easy_way


Ich besitze eine IP für den Hypervisor und ein /28 Subnetz.


Hier ein MTR
<pre>
|------------------------------------------------------------------------------------------|
| WinMTR statistics |
| Host - % | Sent | Recv | Best | Avrg | Wrst | Last |
|------------------------------------------------|------|------|------|------|------|------|
| speedport.ip - 0 | 2282 | 2282 | 0 | 2 | 251 | 1 |
| 87.186.224.145 - 1 | 2279 | 2278 | 17 | 19 | 289 | 20 |
| 87.190.180.174 - 0 | 2282 | 2282 | 18 | 26 | 287 | 22 |
| f-ed5-i.f.de.net.dtag.de - 0 | 2282 | 2282 | 23 | 29 | 309 | 24 |
| 80.157.128.174 - 0 | 2282 | 2282 | 23 | 29 | 291 | 24 |
| hos-bb1.juniper2.rz16.hetzner.de - 1 | 2279 | 2278 | 28 | 35 | 312 | 29 |
| hos-tr3.ex3k3.rz16.hetzner.de - 0 | 2282 | 2282 | 29 | 35 | 289 | 30 |
| hyper001.voodoserver.de - 0 | 2282 | 2282 | 28 | 34 | 304 | 30 |
| vserver1.voodoserver.de - 3 | 2043 | 1983 | 0 | 38 | 248 | 31 |
|________________________________________________|______|______|______|______|______|______|
WinMTR v0.92 GPL V2 by Appnor MSP - Fully Managed Hosting & Cloud Provider
</pre>

Danke im Voraus.

Mit freundlichen Grüßen
Fabian Hars
 
Last edited by a moderator:
Kommt die Verbindung sofort wieder, sobald die VM rauspingt? Ggf. per VNC-Verbindung testen.
Sonst wäre eine Möglichkeit eine doppelt vergebene MAC-Adresse.
 
Keine MAC Adresse doppelt vergeben.
VM ist nach ca. 10 Sek wieder zu Verfügung.

Kann es daran liegen das mehre VMs auf den Server liegen und alle über br0 geroutet werden und daher sehr große Latenzen entstehen.

Ich hatte voher OpenVZ da war es kein Problem, mit den Latenzen alles Normal.
 
Nö, hab ich eigentlich genau so...
Geht die Verbindung denn auch weg, wenn du direkt vom Hostsystem aus pingst?
 
Das komische ist wenn ich von HV Pinge kam in der Zeit kein Ausfall bzw. kein bemerkbaren. Es ist auch ein Kundenserver er teilt mir immer nur mit wenn es Ausfällt.
 
Kannst dich ja mal mit tcpdump an die Bridge oder das Netzwerk-Interface der VM klemmen und sehen was da passiert:

An der Bridge:
Code:
tcpdump -i br0 -n -e "host ip.der.virtuellen.maschine || ether host mac:der:virtuellen:maschine"

Am VM-Interface:
Code:
tcpdump -i interfacename -n -e

Strategisch sinnvoll ist es, auf beiden Interfaces parallel zu lauschen und zu sehen, ob die Pakete (Dauerping) bis zur VM kommen.
 
Ok, Danke erstmal ich werde es ausprobieren.

Ich habe aber nochmal eine andere Frage undzwar:

Wie bekomme ich es mit den IPTables hin.

Z.b. bei vnet0 soll Port 80 gesperrt sein.
oder bei vnet0 soll nur eine IP 1.2.3.4.5 wenn jetzt der Kunde 1.2.3.4.6 hinzufügt auf den Server sollen die Pakete nicht ankommen.

Ich habe es leider noch nicht hinbekommen ....
 
So ich habe feststellen können das es Sehr hoche Latenzen gibt > 100ms auch auf dem HyperVisor und den anderen VServern.

Wir kann ich am besten feststellen woher diese Latenzen kommen?

Meine interface
### Hetzner Online AG - installimage
# Loopback device:
auto lo
iface lo inet loopback

# device: eth0
auto eth0
iface eth0 inet static
address 176.9.147.yy
broadcast 176.9.147.yy
netmask 255.255.255.224
gateway 176.9.147.yy
# default route to access subnet
up route add -net 176.9.147.yy netmask 255.255.255.224 gw 176.9.147.yy eth0


auto br0
iface br0 inet static
address 176.9.147.yy
netmask 255.255.255.255
gateway 176.9.147.yy
pointopoint 176.9.147.yy
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
# up route add -host 5.9.247.yy dev br0

up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0
up route add -host 5.9.247.y dev br0

#up route add -host DD.EE.FF.161 dev br0
#up route add -host DD.EE.FF.162 dev br0

#Subips
#auto virbr1
#iface virbr1 inet static
# address 5.9.247.y
# netmask 255.255.255.240
# bridge_ports none
# bridge_stp off
# bridge_fd 0
# pre-up brctl addbr virbr1
# up ip route 5.9.247.y/32 dev virbr1


iface br0 inet6 static
address 2a01:4f8:160:??????::2
netmask 64
gateway fe80::1
 
Last edited by a moderator:
Wie bekomme ich es mit den IPTables hin.
Z.b. bei vnet0 soll Port 80 gesperrt sein.
Generell für dieses Interface oder nur für die Source-IP dieses Interfaces?
Wenn die VMs fest zugeordnete Interface-Namen haben kannst du es mit dieser iptables-Regel machen:

Code:
iptables -A FORWARD -p ALL -i vnet0 --dport=80 -j DROP
ip6tables -A FORWARD -p ALL -i vnet0 --dport=80 -j DROP

oder über die IP-Adresse der VM (zuverlässiger, wenn die Interface-Namen nicht feste konfiguriert sind):

Code:
iptables -A FORWARD -p ALL -s 1.2.3.4 --dport=80 -j DROP
ip6tables -A FORWARD -p ALL -s a:b:c:d --dport=80 -j DROP

Prüfe bitte nach, ob in der VM-Config ein fester Name für das Netzwerkinterface vergeben ist - sonst wird das nach einem Neustart der VM neu gewürfelt und die Regel funktioniert dann nicht mehr.
Der Interface-Name wird in der Konfigurationsdatei angegeben unter
Code:
<interface>
  ...
  <target dev='beliebiger-name'/>
 ....
</interface>

oder bei vnet0 soll nur eine IP 1.2.3.4.5 wenn jetzt der Kunde 1.2.3.4.6 hinzufügt auf den Server sollen die Pakete nicht ankommen.
Da ist iptables nicht die beste Lösung - denn der Kunde, der wirklich die IP 1.2.3.4.6 (??) hat, würde auch keine mehr bekommen - denn dein Hostsystem würde sich trotzdem die MAC-Adresse von vnet0 mit der falschen IP merken und die Pakete ans falsche Interface adressieren.
Hier kannst du die Network-Filter von KVM nutzen:
http://libvirt.org/formatnwfilter.html

Die greifen bereits direkt an vnet0 und filtern den Traffic, bevor er das Hostsystem erreicht.

So ich habe feststellen können das es Sehr hoche Latenzen gibt > 100ms auch auf dem HyperVisor und den anderen VServern.
Wir kann ich am besten feststellen woher diese Latenzen kommen?

Sind das dauerhaft hohe Latenzen oder immer nur sporadisch?
Lass einfach mal einen mtr ein paar Minuten lang vom Hostsystem aus irgendein externes Ziel anpingen und schaue nach, ab welchem Hop die Latenzzeiten ansteigen:

Z.B.:
mtr --interval=0.2 k.root-servers.net
 
Danke,

die Latzen treten sporadisch auf.

Jetzt mache ich seit 10 Minuten ein MTR von HV > Root K keine Probleme.
Sowie Pings von PC > HV und PC > VM

Auch dort auf einmal keine Latenzen.

Ich weiß nicht was da los ist.
 
Naja, der Server steht in einem Rechenzentrum ;)
Vielleicht war einfach der Link zu einem Carrier ausgefallen und die Failover-Verbindungen sind etwas ausgelastet gewesen.
 
Aber 2 Tage?

//EDIT

Jetzt aber.

Ping auf den Server liegt bei 420 MS. Der Ping bleibt für 4 Sek so hoch und geht dann wieder runter.
MTR von HV auf Root K keine Aufälligkeiten.
 
Von wo aus hattest du denn diese Latenzen?
Nimm das dann mal als Ziel für MTR, gibt ja viele Carrier.
 
Back
Top