MulticastSocket / DatagramSocket - Time-To-Live

Status
Nicht offen für weitere Antworten.
E

Elo

Gast
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
 
T

tuxedo

Gast
Pcap funzt AFAIK unter Windows mit WLAN überhaupt nicht.

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

- ALex
 
E

Elorius

Gast
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
 
T

tuxedo

Gast
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
 
T

tuxedo

Gast
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
 
E

Elorius

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

Evtl. werde ich es mal über RawSockets versuchen.
 
T

tuxedo

Gast
>> 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
 
E

Elo

Gast
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.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben