Hängende HTTP Requests in VLAN

  • Ich habe zwei Server per VLAN verbunden. 10.0.0.10 und 10.0.0.20 konfiguriert via netplan

    Funktioniert soweit auch, ich kann die Machinen gegenseitig pingen und auch Verbindung scheint zu bestehen.

    Auf einer 10.0.0.10 laufen meine Services und auf 10.0.0.20 läuft Prometheus fürs monitoring.


    Folgender Request funktioniert (von 10.0.0.20):


    Wenn ich allerdings die metrics auf `/metrics` abfragen will hängt die Sache

    Code
    1. curl http://10.0.0.10:9100/metrics -v
    2. * Trying 10.0.0.10...
    3. * TCP_NODELAY set
    4. * Connected to 10.0.0.10 (10.0.0.10) port 9100 (#0)
    5. > GET /metrics HTTP/1.1
    6. > Host: 10.0.0.10:9100
    7. > User-Agent: curl/7.58.0
    8. > Accept: */*
    9. >
    10. ^C


    Wenn ich mich auf `10.0.0.10` direkt einlogge und nen curl auf die eigene Adresse mache funktioniert alles. Wenn ich `node_exporter` auf `0.0.0.0` binde, klappt auch alles über die öffentliche IP des Servers.

    Es will nur nicht über die interne IP klappen, sobald ich nen Pfad an den Request hänge. Habe ich etwas banales vergessen beim Setup des Netzwerks? Übersehe ich sonst etwas offensichtliches? Bin gerade etwas irritiert mit dem Problem :wacko:

  • Die Verbindung klappt ja (connected to...)

    Musst du eventuell die IPs 10.0.0.0/24 für den /metrics endpoint noch separat whitelisten?

    Ich kenne Prometheus nicht, aber bei netdata bin ich da reingelaufen, dass es mehrere allow_from gab.

    CentOS 7 / nginx / php-fpm / postfix / rspamd / clamav / dovecot / nextcloud running on RS 1000 SSDx4 G8 / VPS 500 G8 / VPS 2000 G8 Plus

  • Die Verbindung klappt ja (connected to...)

    Musst du eventuell die IPs 10.0.0.0/24 für den /metrics endpoint noch separat whitelisten?

    Ich kenne Prometheus nicht, aber bei netdata bin ich da reingelaufen, dass es mehrere allow_from gab.

    Nicht das ich wüsste. Musste ich in keinem vorherigem Setup machen... und über die public IP geht's ja auch

  • Schon mal auf beiden Servern gleichzeitig mit tcpdump geschaut, was im Detail passiert? Dadurch kannst Du wenigstens ausschließen, dass es an der Firewall bzw. dem vLAN liegt. Nur weil die Verbindung generell klappt, heißt das noch nicht, dass es an der verwendeten Software liegen muss.

    Habe ich dann auch gemacht und konnte sehen, dass einige Pakete in TCP Retransmissions hingen....

    Ich konnte mich dann daran erinnern, dass in anderen guides für private Netzwerke die MTU auf 1450 gesetzt wurde. Habe das einfach mal probiert und es klappt jetzt. Warum genau das das Problem war weiss ich allerdings auch noch nicht. Vielleicht kann das ja mal jemand erklären :)