traceroute の使い方
宛先までの通り道を表示
書き方
traceroute ホスト
パケットが通るルーターを順に表示します。* * * はその先から返事がないことを表します。traceroute パッケージに入っています。
よく使うオプション
| オプション | 意味 |
|---|---|
-n | 名前を引かず、IP アドレスのまま出す(速い) |
-I | UDP ではなく ICMP(ping と同じ)で調べる(root が要る) |
-T | TCP の SYN で調べる(root が要る。-p でポート) |
-m 数 | 何台先まで調べるか(既定は 30) |
-w 秒 | 返事を待つ時間 |
例
$ traceroute -n 10.20.0.15traceroute to 10.20.0.15 (10.20.0.15), 30 hops max, 60 byte packets
1 10.0.1.1 0.412 ms 0.371 ms 0.355 ms
2 10.10.0.1 1.204 ms 1.188 ms 1.170 ms
3 10.20.0.15 1.630 ms 1.611 ms 1.598 ms宛先までに通るルーターを、近いものから順に出します。1 行が 1 台のルーターです。
$ traceroute -n -m 5 203.0.113.10
5 台先までで止めます。どこで止まっているかだけ知りたいときに、待ち時間を減らせます。
$ sudo traceroute -n -T -p 443 203.0.113.10
TCP の 443 番で調べます。UDP や ICMP がファイアウォールで止められている道でも、通ることがあります。
よくある間違い・注意
- * * * は、そのルーターが返事をしないだけのこともあります。その先で宛先に届いていれば、道は通っています。
- traceroute パッケージが入っていないことがあります(dnf install -y traceroute)。root が要らない tracepath も使えます。
実際に打って練習する
Linux レベル2 コースの Lv52「道を作る ip route」で覚えます(第4章 街道の整備(ネットワークの設定と調査))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
すべてのレベルが、ゴールド以上のプランで遊べます。