PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SendTo Source IP setzen



7.e.Q
03-09-2007, 13:24
Hi Leute,

ich hab mal wieder was. :) Gibt es eine Möglichkeit, auf einem UDP Socket (SOCK_DGRAM) beim SendTo die Absenderadresse selbst festzulegen? Also wenn ich einen Socket habe, der auf 0.0.0.0 gebunden ist, ich mehrere (sehr viele) VLAN IPs im System habe und möchte, daß das von SendTo über besagten Socket gesendete Paket die Absenderadresse einer dieser VLAN IPs bekommt, wie muss ich da vorgehen? Geht das überhaupt? Kann ich für SendTo eine Absenderadresse festlegen?

Danke

Grüße,
Hendrik

7.e.Q
04-09-2007, 12:04
... okay, nicht zwingend VLAN... Kann sich dabei natürlich auch um mehrere IPs auf EINEM Interface oder um mehrere Interfaces im Gerät handeln... völlig egal...


Frage ist: Wie lege ich beim Senden eines UDP Pakets (per sendto) fest, welche IP im Absenderfeld des Pakets steht? Geht das überhaupt?


Danke

f0rtex
05-09-2007, 09:52
Ja das geht. Entweder du schlägst dich mit raw Sockets um, oder auch du verwendest die libnet (http://www.packetfactory.net/libnet/) Bibliothek.

Gruss
f0rtex

7.e.Q
05-09-2007, 11:57
So entnehme ich deiner Aussage, daß es mit SOCK_DGARM und ohne die libnet (sprich, mit der Standard-Funktionalität) nicht möglich ist, die Source IP eines UDP Paketes nach Bedarf zu verändern.

Ist das korrekt?

7.e.Q
06-09-2007, 07:10
Also es funktioniert auf den ersten Blick sehr gut mit der libnet. Danke für den Tip. Und das ist jawohl SOWAS von einfach... :) Echt 'n Spaß damit zu arbeiten.

Weniger als 10 sequenzielle Funktionsaufrufe und das Paket geht auf die Reise. Echt geil. So muss das sein.

f0rtex
06-09-2007, 10:11
Im Zusammenspiel mit libpcap kann man schöne Dinge machen ;-)

7.e.Q
10-09-2007, 10:07
Im Zusammenspiel mit libpcap kann man schöne Dinge machen ;-)

Die da zum Beispiel wären? :eek::)

RapidMax
10-09-2007, 20:05
Die da zum Beispiel wären? :eek::)

z.B. security scanner? :p

Die Absenderadresse hängt natürlich von der Route ab, die das Paket nehmen soll.

Gruss, Andy