traceroute

Die andere Seite, der Rechner und sein Betriebssystem.
Hier kommen Posts hinein, die sich mit der Konfiguration hinter dem Router beschäftigen. Egal ob Linux, Windows, MacOS oder andere.

Moderatoren: TommyTC, alf, Petrus, andreastc, DSL-Hexe, nobody

Beitragvon Pasulke » Di 24.02.2004 - 21:57

Hallo, habe ein Problem: Habe einen Rechner hinter einem 2600 und beim Versuch einer traceroute ins Internet komme ich nur bis zum Router. Ping funktioniert, und insofern verstehe ich nicht warum traceroute nicht funktioniert, da hierbei ja auch nur ICMP verwendet wird. Vielleicht kann mich jemand aufklären.

Vielen Dank

linux:/ # traceroute www.google.de
traceroute to www.google.de (66.102.11.104), 30 hops max, 40 byte packets
1 my.router (192.168.1.1) 0.274 ms 0.266 ms 0.281 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
linux:/ #
Pasulke
Grünschnabel
 
Beiträge: 8
Registriert: So 03.11.2002 - 19:05

Beitragvon cne51 » Mi 25.02.2004 - 08:18

Hi,

das Problem tritt nur beim Tracerout mit LINUX auf.

Beim tracerout von MS Betriebssystemen funktioniert das problemlos
Benutzeravatar
cne51
Hardcore-Poster
 
Beiträge: 1904
Registriert: Fr 12.09.2003 - 16:37
Wohnort: MS / OS

Beitragvon Pasulke » Mi 25.02.2004 - 21:50

Ja, danke. Gibt es einen Workaround ?
Pasulke
Grünschnabel
 
Beiträge: 8
Registriert: So 03.11.2002 - 19:05

Beitragvon cne51 » Do 26.02.2004 - 07:34

Benutzeravatar
cne51
Hardcore-Poster
 
Beiträge: 1904
Registriert: Fr 12.09.2003 - 16:37
Wohnort: MS / OS

Traceroute-Problem Vigor2000 / Linux

Beitragvon angeldust » Do 16.12.2004 - 21:23

Der Thread ist zwar schon ziiiiemlich alt, aber ich hatte hier gerade mit einem Vigor2000 zu tun und bin auf das gleiche Problem gestossen:
Unter WinXP funktioniert Traceroute, unter Linux aber nicht.

So weit ich erinnere, funktionieren Traceroutes über Pakete, deren TTLs der Nummer des Hops entsprechen, den der Traceroute gerade erfragen will.

Die TTL gibt in einem IP-Paket die max. Lebensdauer in "Hops" an.
Jeder Hop (Router) auf dem Weg zum Ziel verringert die TTL um 1. Wenn die TTL null ist, wird das Paket verworfen und der absende Host bekommt eine ICMP-Message (ICMP time-to-live-exceeded). Wenn die TTL also 3 ist, dann sendet der 3. Router die ICMP-Message zurück und Traceroute weiß, welcher Router an 3.Stelle auf dem Weg zum Ziel liegt.

Voraussetzung ist also, daß ICMP-Pakete durchgelassen werden.

Unter Windows funktioniert das gut, unter Linux aber nicht. Warum?

Mit ethereal fand ich heraus, daß Windows einfach einen Ping mit der entsprechenden TTL an den Zielhost sendet. Der ICMP-TTL-exceeded kommt sauber zurück.

Das "Linux-Tracertoute" (oder besser BSD-Traceroute) benutzt normalerweise aber statt einem Ping UDP-Pakete, wieder mit der entsprechenden TTL im IP-Header. Der Router schickt für das erste Paket auch brav den ICMP-TTL-exceeded zurück, danach kommt nichts mehr.

Eine vage Vermutung ist, daß der Router die einkommenden TTL-exceeded-Nachrichten dem ausgehenden UDP-Paket nicht zuordnen und diese deshalb nicht an den Host im LAN zuschicken kann. Schliesslich wird sie ja an die IP des Routers und nicht des LAN-Hosts geschickt.
Ein Ping hat jedoch eine eindeutige ID (Identifier und Sequence Number), die auch vom TTL-exceeded-Paket benutzt wird. Dadurch "weiß" der Router, wer im LAN den Ping gesendet hat, weil er sich IP und ID des Pings gemerkt hat, und kann die Antwort zustellen.

Nachdem ich jetzt einen halben Roman geschrieben habe, kann ich ja auch die Lösung für die "Linuxer" verraten :)

tracroute -I <host>
Mit "-I" verhält sich traceroute unter Linux (und wohl auch unter OSX und anderen Unixen) genau so wie unter Windows.

Viele Grüße
Carsten
angeldust
Grünschnabel
 
Beiträge: 1
Registriert: Do 16.12.2004 - 20:33

Beitragvon mac-bitch » Sa 26.02.2005 - 11:59

cool ,aber wenn ich unter MacOS X.3.8 im Terminal das versuche einzugeben sagt er mir " -I illegal option"
Mit Host meinst du die IP meines Macs im internen Netz?
Danke!
mac-bitch
User
 
Beiträge: 11
Registriert: Sa 26.02.2005 - 11:51

Beitragvon cne51 » Sa 26.02.2005 - 16:29

Host ist die Adresse die angepingt wird.
Benutzeravatar
cne51
Hardcore-Poster
 
Beiträge: 1904
Registriert: Fr 12.09.2003 - 16:37
Wohnort: MS / OS


Zurück zu Allgemeine Netzwerkfragen und Probleme mit Netzen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron