新Linux入門|ipコマンドでルーティングテーブルを確認しよう

 ネットワーク通信がうまくいかないとき、「どの経路で通信しているのか?」を調べることってありますよね。
そんなときに大活躍するのが ipコマンド です。

 AlmaLinux 9.6 では、古い ifconfig や route コマンドの代わりに、この ipコマンド が標準的に使われています。
 ネットワークインターフェースの状態確認、IPアドレスの設定、ルーティングの管理など、これ1つでネットワーク周りのほとんどの操作ができちゃうんです💪

🌐 ipコマンドとは

ip コマンドは、ネットワークの設定や状態を確認するための統合ユーティリティです。
 ルーティングテーブル(通信経路)をはじめ、インターフェースやアドレスなども一括で管理できます。

📘 たとえば、「どのネットワークへどの経路で通信しているか?」を調べたいときには以下のように使います。

[suzuki@AlmaLinux ~]$ ip route show
default via 10.0.2.2 dev enp0s3 proto dhcp metric 100 
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

👀 これで、デフォルトゲートウェイ(10.0.2.2)経由で外部通信していることが一目で分かります。

⚙️ ipコマンドの基本構文

ip コマンドは、サブコマンドを指定して使います。
基本の書式はとってもシンプルです👇

ip [サブコマンド] [オプション]

サブコマンドによって操作の対象が変わります。
下の表を見てみましょう👇

サブコマンド説明
addrインターフェースのIPアドレスを表示・設定する
linkネットワークインターフェースの状態を確認する
routeルーティングテーブルの情報を表示・変更する
neighARPテーブルなど、隣接ノードの情報を表示・設定する
tunnelトンネルデバイスの設定を行う
monitorネットワークイベントをリアルタイムで監視する

🧭 今回はこの中でも、特に重要な「route」サブコマンドを中心に解説していきます。

📡 ルーティングテーブルを確認する

 ルーティングテーブルとは、「宛先ネットワークに対してどのインターフェースを使うか」 を記録した表です。
Linuxはこのテーブルを使って、パケットを正しい経路に送ります。

例として、次のコマンドを実行してみましょう👇

[suzuki@AlmaLinux ~]$ ip route show
default via 10.0.2.2 dev enp0s3 proto dhcp metric 100 
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1

出力結果の見方を解説します✨

フィールド説明
defaultデフォルトルート(他の経路に当てはまらない場合の経路)
via 10.0.2.2次の中継地点(ゲートウェイ)のIPアドレス
dev enp0s3使用するネットワークインターフェース名
proto dhcpルートがDHCPによって自動設定されたことを示す
metric 100優先度(数値が小さいほど優先される)

つまり、「外部通信は enp0s3 経由で 10.0.2.2 に向かう」という意味ですね。

🌍 特定ネットワークへのルートを追加する

もし、自分で特定ネットワークのルートを追加したい場合は root 権限で次のように入力します。

[root@AlmaLinux ~]# ip route add 192.168.1.0/24 via 192.168.0.1 dev enp0s3

これで、「192.168.1.0/24 宛ての通信は 192.168.0.1 を経由する」というルートが追加されます。
追加後に確認すると、ルーティングテーブルに新しいエントリが反映されているのがわかります👇

[root@AlmaLinux ~]# ip route show
default via 10.0.2.2 dev enp0s3 proto dhcp metric 100 
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100 
192.168.1.0/24 via 192.168.0.1 dev enp0s3

🧩 他にも便利なサブコマンド

ルーティング以外にも、ネットワークインターフェースやIP設定の確認にも使えます✨

コマンド内容
ip link showネットワークインターフェースの一覧を表示
ip addr show各インターフェースのIPアドレスを表示
ip neigh showARPテーブルを表示(IPとMACの対応)

[suzuki@AlmaLinux ~]$ ip addr show enp0s3
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
    inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3

👀 これで「どのNICにどんなアドレスが設定されているか」もチェックできます。

✅ まとめ

  • ipコマンド は、ネットワーク設定を一元管理できる万能ツール✨
  • ip route show で現在の通信経路(ルーティングテーブル)を確認できる。
  • 古い route や ifconfig よりも柔軟で、現代的なシステムではこちらが主流。

ネットワークの通信経路を理解することで、トラブルの原因をすぐ見つけられるようになります🔍
まずは ip route show を試してルートを確認してみましょう!🚀