winlin
Goto Top

Herausfinden wo die Netzwerkkommunikation fehlschlaegt

Hallo Zusammen,

öfters gibt es ja mal das Problem das man auf einem System (bei mir Linux) arbeitet und eine Kommunikation innerhalb des Firmennetzwerks auf bestimmt Endpunkte zugreifen will. Ein curl oder ein nc command hilft manchmal weiter.

Was ich gerne wissen würde - gibt es eine möglichkeit wo man tracen kann wie die Kommunikation aufgebaut wird durch welche firewalls es geht und wo man hängen bleibt? So kann ich dann mit Gewissheit sagen okay es liegt an der Firewall A oder Firewall B.....

Content-Key: 1708916348

Url: https://administrator.de/contentid/1708916348

Printed on: May 3, 2024 at 07:05 o'clock

Member: Lochkartenstanzer
Lochkartenstanzer Jan 10, 2022 updated at 14:35:06 (UTC)
Goto Top
Moin,

traceroute und wireshark/tcpdump sind Deine Freunde.

lks
Member: itisnapanto
itisnapanto Jan 10, 2022 at 14:41:53 (UTC)
Goto Top
Pathping ist dafür auch noch ganz nett.
Member: winlin
winlin Jan 10, 2022 updated at 14:47:37 (UTC)
Goto Top
wie interpretiere ich das nun, das hier ist eine Verbindung die funktioniert

traceroute 10.143.56.37
traceroute to 10.143.56.37 (10.143.56.37), 30 hops max, 60 byte packets
 1  * * *
 2  10.140.184.139 (10.140.184.139)  2.469 ms  2.460 ms  2.402 ms
 3  10.0.25.5 (10.0.25.5)  3.035 ms  3.038 ms 10.0.25.13 (10.0.25.13)  3.017 ms
 4  10.0.25.9 (10.0.25.9)  3.092 ms  3.467 ms 10.0.25.1 (10.0.25.1)  2.461 ms
 5  10.0.25.54 (10.0.25.54)  3.408 ms  3.000 ms 10.0.25.53 (10.0.25.53)  3.540 ms
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
Member: Lochkartenstanzer
Lochkartenstanzer Jan 10, 2022 at 14:57:02 (UTC)
Goto Top
Zitat von @winlin:

wie interpretiere ich das nun, das hier ist eine Verbindung die funktioniert

traceroute 10.143.56.37
traceroute to 10.143.56.37 (10.143.56.37), 30 hops max, 60 byte packets
 1  * * *
 2  10.140.184.139 (10.140.184.139)  2.469 ms  2.460 ms  2.402 ms
 3  10.0.25.5 (10.0.25.5)  3.035 ms  3.038 ms 10.0.25.13 (10.0.25.13)  3.017 ms
 4  10.0.25.9 (10.0.25.9)  3.092 ms  3.467 ms 10.0.25.1 (10.0.25.1)  2.461 ms
 5  10.0.25.54 (10.0.25.54)  3.408 ms  3.000 ms 10.0.25.53 (10.0.25.53)  3.540 ms
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *


Da sind die Systeme, über die die Pakete laufen.

lks
Member: aqui
aqui Jan 10, 2022 updated at 15:39:21 (UTC)
Goto Top
Traceroute zeigt die Routing Hops alle Hop für Hop an ! Traceroute nutzt in der Regel ICMP
https://de.wikipedia.org/wiki/Traceroute
Apple Mac OS macht einen TCP Traceroute den man aber mit dem Parameter -I auch überreden kann ICMP zu nutzen.
Wenn man Traceroutet sollte man mit -d (Winblows tracert) die Hostauflösung abschalten, denn das kostet oft Wartezeit und führt ggf. ins Timeout.
Für die Klicki Bunti Knechte gibt es z.B. den Ping Plotter der das grafisch macht:
https://www.pingplotter.com/download
Member: Spirit-of-Eli
Spirit-of-Eli Jan 10, 2022 at 15:54:44 (UTC)
Goto Top
Anstatt traceroute ist ein mtr auch sehr cool. Dazu noch nmap.
Member: LordGurke
LordGurke Jan 10, 2022 at 17:51:01 (UTC)
Goto Top
Zitat von @winlin:

wie interpretiere ich das nun, das hier ist eine Verbindung die funktioniert

traceroute 10.143.56.37
traceroute to 10.143.56.37 (10.143.56.37), 30 hops max, 60 byte packets
 1  * * *
 2  10.140.184.139 (10.140.184.139)  2.469 ms  2.460 ms  2.402 ms
 3  10.0.25.5 (10.0.25.5)  3.035 ms  3.038 ms 10.0.25.13 (10.0.25.13)  3.017 ms
 4  10.0.25.9 (10.0.25.9)  3.092 ms  3.467 ms 10.0.25.1 (10.0.25.1)  2.461 ms
 5  10.0.25.54 (10.0.25.54)  3.408 ms  3.000 ms 10.0.25.53 (10.0.25.53)  3.540 ms
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *

Wenn du es nicht anders angibst, macht "traceroute" einen Trace per UDP.
Um wirklich Firewalls zu testen, solltest du traceroute mit entsprechendem Protokoll nehmen.
Beispiel HTTP (Port 80/TCP):
traceroute -T -p 80 <ziel>

Dann siehst du, wo es hängen bleibt und kannst so z.B. auch auf dem Weg liegende Firewalls erkennen.

Ansonsten gilt: Auf dem Zielsystem mit tcpdump lauschen und schauen, ob du die Anfrage-Pakete überhaupt bekommst. Für das Beispiel HTTP:
tcpdump -i any -nne "host <quell-host> && port 80"  

Dann siehst du, ob du überhaupt eingehende Anfragen bekommst und ob sie beantwortet werden (SYN-ACK). Oder ob die Verbindung eventuell sogar aktiv abgelehnt wird (TCP-RST oder ICMP-Unreachable).