2 Stimmen

ICMP vs TCP Protokolle auf iOS

Ich versuche, Traceroute für iOS in C zu implementieren. (Zum Beispiel, um herauszufinden, welcher Router nicht funktioniert). Leider kann ich das ICMP-Protokoll nicht verwenden, das mir jedes Mal eine Antwort sendet, wenn der Router mein Paket abbricht. Gibt es eine Möglichkeit, es mit TCP oder einem anderen Protokoll zu implementieren? Ich benötige einige Denkanstöße, wie dies erreicht werden kann.

1voto

Sam Punkte 7738

Grundsätzlich kann man alle drei verwenden, ICMP, UDP und TCP. Die BSD-Implementierungen verwenden meines Wissens nach UDP, wie in dieser Quelldatei:

http://www.opensource.apple.com/source/network_cmds/network_cmds-307/traceroute.tproj/traceroute.c

Wie man sehen kann, ist es nicht allzu trivial.

BEARBEITEN:

Quelle des Traceroute von FreeBSD:

http://svnweb.freebsd.org/base/release/9.1.0/contrib/traceroute/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X