Raw-Socket unter Unix vs OS-X

26/11/2008 - 09:35 von toobee84 | Report spam
hi,

hab hier folgende Situation die ich mir bis jetzt nicht erklàren kann:
Hab mir aus einem der zahlreichen Internetforen den Programmcode für
das versenden eines UDP-Paketes via Raw-Sockets geholt.

Kompilierte auf meinem Mac wunderbar, ohne Fehlermeldung, das
Ausführen führte allerdings zu keinem Ergebnis, es wurde zwar ein
Paket erzeugt, allerdings war darin u.a. die IP-Prüfsumme falsch
ermittelt und das Paket erreichte auch nie sein Ziel. Höhrt sich
natürlich erstmal nach falschen Programmcode an. Hab sher lange
gesucht und probiert, mit dem Resultat das ich nichts finden konnte.

Den Code den ich mir geholt hatte war natürlich für Linux/Unix
geschrieben, da ich davon ausging das OS-X genauso tickt wie ein
normales Unix auch dachte ich es sei egal. Nun hab ich diesen Code mal
auf einem Linux System kompiliert(Suse) und ausgeführt und siehe da,
es funktioniert ohen Probleme. Das erzeugte Paket hat sogar die
richtige Prüfsumme.

Jemand eine Idee woran das liegen kann das os-x an dieser Stelle so
anders verhàlt ? Konnte bisher leider nix finden was mir dazu
informationen geben konnte, der Programmcode ist zumindest für "echte"
Linux-Systeme korrekt.
(Ja, ich hab die Programme immer mit root-Rechen ausgeführt..)
 

Lesen sie die antworten

#1 Sven Geggus
26/11/2008 - 17:33 | Warnen spam
wrote:

hab hier folgende Situation die ich mir bis jetzt nicht erklàren kann:
Hab mir aus einem der zahlreichen Internetforen den Programmcode für
das versenden eines UDP-Paketes via Raw-Sockets geholt.



Warum sollte man für UDP-Pakete Raw-Sockets verwenden wollen, wenn
SOCK_DGRAM existiert?

Abgesehen vom größeren Aufwand braucht man dazu nàmlich hàßlicherweise
root-rechte oder passende capabilities (unter Linux CAP_NET_RAW).

Sven

Um Kontrolle Ihres Kontos wiederzugewinnen, klicken Sie bitte auf das
Verbindungsgebrüll. (aus einer Ebay fishing Mail)

/me is , http://sven.gegg.us/ on the Web

Ähnliche fragen