cでiosのtracerouteを実装しようとしています。(例:どのルーターが機能していないかを見つけるため)。残念ながら、ルーターがパケットを強制終了するたびに応答を送信するICMPプロトコルを使用することはできません。TCPまたは他のプロトコルでそれを実装する方法はありますか?私はそれがどのように行われることができるかについてのいくつかの思考の方向性が必要です。
1280 次
1 に答える
1
基本的に、ICMP、UDP、TCPの3つすべてを使用できます。BSD実装は、次のソースファイルのようにUDPAFAIKを使用します。
http://www.opensource.apple.com/source/network_cmds/network_cmds-307/traceroute.tproj/traceroute.c
ご覧のとおり、それはささいなことではありません。
編集:
FreeBSDのtracerouteのソース:
http://svnweb.freebsd.org/base/release/9.1.0/contrib/traceroute/
于 2013-01-04T16:15:52.640 に答える