Linux応用コース2/11
ゲートウェイと疎通確認
デフォルトゲートウェイの特定と疎通確認を行うroute
コマンドと ping
コマンドを解説します。
デフォルトゲートウェイの特定方法とネットワーク上での疎通確認について、理解を深めましょう。
ゲートウェイ
ゲートウェイ は「玄関・入口」の役割を果たし、異なるネットワーク間でパケットを中継する機器のことを指します。特に、 デフォルトゲートウェイ は通信を行う際の初期ルートとして利用されるゲートウェイです。
ルーティングテーブル
ルーティングテーブルは、ルータに記録されるネットワーク上の通信経路の情報です。インターネットで通信を行う際の経路選択(ルーティング処理)時に参照されます。
ip routeコマンド
ip route
コマンドはルーティングテーブルの設定や参照を行うコマンドです。特に静的ルートとは、宛先のネットワークへのルートを手動で設定したもので、ネットワークの状況が変化しても自動でルートが変更されません。
ip route
ip route
で現在のルーティングの状況を確認することができます。
[root@9b48a14640bc /]# ip route
default via 172.17.0.1 dev eth0
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
ip routeの出力項目
ip route get
ip route get
コマンドは、特定の宛先への最適な送信ルートを表示します。
[root@9b48a14640bc /]# ip route get 172.19.1.2
172.19.1.2 via 172.17.0.1 dev eth0 src 172.17.0.2 uid 0
# 172.17.0.2という送信元から172.19.1.2へはeth0を利用して172.19.0.1経由で送信されることがわかる。
ip route add
ip route add
は、新たにルーティングテーブルに静的ルートを追加します。デフォルトルートの設定や特定のネットワークへのルートの追加が可能です。
ip route add アドレス/サブネット via ゲートウェイ dev デバイス名
ip route add default via 172.17.0.1 #デフォルトルートの設定
ip route add 10.0.4.0/24 via 10.0.2.1 dev eth1 #特定のネットワークへのルートの追加
ip route del
ip route del
コマンドは、ルーティングテーブルからルート情報を削除する際に使うコマンドです。
ip route del アドレス/サブネット via ゲートウェイ dev デバイス名
ip route del 10.0.4.0/24 via 10.0.2.1 dev eth1 #ルート情報の削除
routeコマンド
route
もip route
と同様に、ルーティングテーブルの管理を行う古い形式のコマンドです。route
コマンドで現在のルーティングテーブルの状況を確認することができます。
$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 172.17.0.1 0.0.0.0 UG 0 0 0 eth0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
ルーティングテーブルの各項目
route add
route add
コマンドは現在のルーティングテーブルに新たにルート情報を追加するためのものです。
今回は、デフォルトルートの設定と宛先ネットワーク10.0.0.1に通信する時に172.17.0.1のデフォルトゲートウェイに送信する場合です。
route add [宛先のネットワーク] netmask [ネットマスク] gw [ゲートウェイ]
route add default gw 172.17.0.1 #デフォルトルートの追加
route add 10.0.0.1 netmask 255.255.255.0 gw 172.17.0.1 #ルートの追加
route del
route del
コマンドはルーティングテーブルのルート情報を削除する際に使用するコマンドです。先ほど route add
コマンドで追加した情報( 10.0.0.1 netmask 255.255.255.0 gw 172.17.0.1
)を削除する場合を例にします。
route del [宛先のネットワーク] netmask [ネットマスク] gw [ゲートウェイ]
route del 10.0.0.1 netmask 255.255.255.0 gw 172.17.0.1
デフォルトルートの変更
デフォルトルートを変更する際には、まず既存のデフォルトルートを削除し、その後で新たなデフォルトルートを追加する必要があります。これはルーティングテーブルに二つ以上のデフォルトルートが存在すると、通信が競合する可能性があるためです。
pingコマンド
ping
コマンドを使うと、ICMPプロトコル のecho request / echo replyメッセージを使った通信テストプログラムを使用した疎通確認を行えます。
使い方
ping 宛先IPアドレス(または宛先ドメイン名)
主なオプション
オプション | 説明 |
---|---|
-c | 疎通確認の回数を指定します。指定した回数で実行し、確認を終了します。 |
-w | 疎通確認の最大実行時間を指定します。指定した時間が経過すると実行を終了します。 |
使用例
# 強制終了(control + c)しない限り、疎通確認を実行し続けます。
ping hogehoge.co.jp
# 3回の疎通確認で、実行を終了します。
ping -c 3 hogehoge.co.jp
# 最大3秒間、疎通確認を実行し、その後実行を終了します。
ping -w 3 hogehoge.co.jp
pingコマンド出力結果
項目 | 説明 |
---|---|
bytes | パケットサイズ。デフォルトでは64バイト(8バイトのICMPヘッダーと56バイトのデータ)。ただし、これはOSや実行環境によって異なる場合があります。 |
time | パケットを送信してから応答が返ってくるまでの時間 |
TTL | パケットの有効期限。ループ防止目的のために設定されている。L3レベルのネットワーク機器を経由するごとに値が1ずつ減っていく。 |
imp_seq | 送信したパケットのシーケンス番号。この番号に抜けがあった場合、パケットロスが発生していると判断できます。 |
まとめ
今回はデフォルトゲートウェイの特定方法とネットワーク上での疎通確認について学習しました。
問題を解くためには、十分な画面サイズのPC環境をご利用下さい。