tracerouteコマンドは、通信の経路を確認できるコマンドです。Windowsはtracertコマンドがほとんど同じ機能を持ったコマンドになります。
tracertコマンドは通信経路の確認にポート番号を指定できませんが、tracerouteコマンドでは通信経路の確認にポート番号を-T -pオプションや-U -pオプションを指定することで確認できます。
RHEL9.6での作業証跡は以下の記事でまとめています。
RHEL9.5にtracerouteをインストールする
traceroute が入っていない状態でtraceroute コマンドを実行すると以下のようにパッケージをインストールするか尋ねられます。問題がなければyを入力してエンターを押しましょう。
[root@localhost ~]# traceroute 8.8.8.8
bash: traceroute: コマンドが見つかりませんでした...
コマンド traceroute' を提供するためにパッケージ 'traceroute' をインストールしますか? [N/y]

yを入力してインストールを進めた証跡です。
[root@localhost ~]# traceroute 8.8.8.8
bash: traceroute: コマンドが見つかりませんでした...
コマンド traceroute' を提供するためにパッケージ 'traceroute' をインストールしますか? [N/y] y
* キューで待機中...
* パッケージの一覧をロード中。...
以下のパッケージはインストールされるべきものです:
traceroute-3:2.1.0-18.el9.x86_64 Traces the route taken by packets over an IPv4/IPv6 network
変更したまま継続しますか? [N/y] y
* キューで待機中...
* 認証を待ち受け中...
* キューで待機中...
* パッケージをダウンロード中...
* データを要求中...
* 変更をテスト中...
* パッケージのインストール中...
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 _gateway (192.168.204.2) 0.665 ms 0.594 ms 0.526 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
[root@localhost ~]#
tracerouteコマンドの使い方
以下のようにIPアドレスを入力することで通信経路を確認できます。
筆者の環境では、どこにもルーティングが設定されていないので、8.8.8.8への接続を試すとゲートウェイを通過するだけの通信となっています。
※8.8.8.8は、Googleが提供しているパブリックDNSサービス「Google Public DNS」のIPアドレスです。

開始する | Public DNS | Google for Developers
[root@localhost ~]# traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 _gateway (192.168.204.2) 1.304 ms 1.010 ms 0.789 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
[root@localhost ~]#
tracerouteコマンドのオプション
traceroute コマンドでは以下のオプションが使用できます。
| -n | IPアドレスをドメイン名に変換(名前解決)せずに表示する |
| -A | IPアドレスの隣にAS番号を表示する |
| -r | 通常のルーティングテーブルをバイパスし、接続されたネットワーク上のホストに直接送信します。ホストが直接接続されたネットワーク上にない場合は、エラーが返されます。 |
| -I | ICMPで接続する |
| -T | TCPで接続する |
| -U | UDPで接続する |
| -p | 宛先ポート番号を指定する -T、-Uと組み合わせてTCP、UDPのポート番号で通信経路の確認を実施する |
ポート番号を指定して通信経路を確認する
以下のように実行することでポート番号を指定して通信経路を確認できます。
# traceroute -T -p 80 192.168.242.129
# traceroute -U -p 53 192.168.0.129
以下は実行例です。
[root@RHEL96 ~]# traceroute -T -p 80 192.168.242.129
traceroute to 192.168.242.129 (192.168.242.129), 30 hops max, 60 byte packets
1 192.168.242.129 (192.168.242.129) 0.653 ms 0.767 ms *
[root@RHEL96 ~]#
[root@RHEL96 ~]#
[root@RHEL96 ~]#
[root@RHEL96 ~]# traceroute -U -p 53 192.168.242.129
traceroute to 192.168.242.129 (192.168.242.129), 30 hops max, 60 byte packets
1 * 192.168.242.129 (192.168.242.129) 18.423 ms *
manコマンドでtracerouteコマンドの使い方を確認する
より詳細な情報はRHELで以下のコマンドを実行してマニュアルを確認しましょう。
man traceroute




