# MulticastSocket / DatagramSocket - Time-To-Live



## Elo (30. Jun 2008)

Hallo,
ich möchte ein IP/UDP Paket mit einem festgelegten Time-To-Live versenden. Die MulticastSocket Time-To-Live Funktion scheint nicht zu funktionieren. Wireshark zeigt stehts 128 an.

Alternativ würde ich auch eine lib nehmen, um ein modifiziertes IP Paket zu erzeugen. Jpcap => JpcapSender scheint aber nicht zu funktionieren (liegt wohl am Treiber der WLAN-Karte).

Das Ganze soll auf einem Windowssystem laufen. Bin für jegliche Hilfe sehr dankbar.
Gruß,
Elo


----------



## tuxedo (30. Jun 2008)

Pcap funzt AFAIK unter Windows mit WLAN überhaupt nicht. 

Bzgl. dem TTL kann ich dir leider nicht weiter helfen.

- ALex


----------



## Elorius (30. Jun 2008)

Jpcap funktioniert schon, aber nur der "Receiver" (WLAN) und nicht im Promiscuous-Mode. Ich denke da liegt das Problem. Windows kapselt den Zugriff auf die Pakete. 
Wenn jmd ne günstige WLAN Karte (PCI) oder USB Dongle kennt, die mit Jpcap im Promiscuos-Mode mit Windows funktionieren, wär mir sehr geholfen. 

Alternativ bin ich auch für Workarounds dankbar.
Problem: IP/UDP Pakete ein Hop weit (nicht weiter) über WLAN auf Windowssystemen zu versenden.

Gruß,
Elo


----------



## tuxedo (30. Jun 2008)

WLAN + Promiscous-Modus + Windows = ungünstige Konstellation.

Hab da mal vor 1-2 Jahren versucht mein eigenes WLAN-Passwort zu knacken (versuchsweise eben). Hab nach viel googlen aufgegeben das unter Windows zu probieren. Gab nur eine kostenpflichtige Lösung. Linux kann das weitaus besser. 

Würde viel eher schauen warum das mit dem TTL nicht funktioniert. 

- Alex


----------



## tuxedo (1. Jul 2008)

Nach ein wenig googeln hab ich übrigens keinen Grund gefunden warum das TTL nicht funktionieren soll.

Dumme Frage, aber bist du dir sicher dass du den Wireshark-Output richtig interpretiert hast?

- Alex


----------



## Elorius (2. Jul 2008)

Ja bin 100% sicher, hab es mit verschiedenen Sniffern angeschaut.

Evtl. werde ich es mal über RawSockets versuchen.


----------



## tuxedo (2. Jul 2008)

>> Ja bin 100% sicher, hab es mit verschiedenen Sniffern angeschaut. 

Dann müsste es im Netz irgendwo eine Lösung des Problems geben. Welche Java Version nutzt du? Wie setzt du den TTL-Wert?

- Alex


----------



## Elo (8. Jul 2008)

Ich verwende die neueste Version 1.6xx.
Zum Versenden verwende ich die Klasse MulticastSocket aus der Standard API, da sie die Einzige ist, die es erlaubt die TTL zu ändern. C erlaubt direkten Zugriff, da ist die TTL auch veränderbar. Eine reine Javalösung wär mir aber lieber gewesen.


----------

