このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

新Linuxコマンド演習58

🧩 新Linuxコマンド演習58 概要

 「新Linuxコマンド演習58」では、ネットワークのルーティング情報や名前解決に関する代表的なコマンドである routeコマンド, ipコマンド, hostコマンド の使い方を学びます。
これらのコマンドは、ネットワーク経路の確認、DNS情報の取得、通信経路の管理に欠かせません。

 AlmaLinux 9.6では、従来のrouteコマンドに代わり、ipコマンドが標準搭載されていますが、両方を比較しながら理解することが重要です。

コマンド概要

コマンド主な用途特徴主なオプション
routeルーティングテーブルを表示・編集古くから使用されるコマンド。現在は非推奨add, del
ipルーティング・インターフェース情報を管理現行の標準コマンド。詳細な制御が可能link, route, addr
hostDNSサーバに問い合わせを行う。名前解決、逆引き、MXレコード取得に利用-t(レコードタイプ指定)
-v(詳細表示)

表の説明
routeは古いネットワーク管理ツールですが、基本的なルート操作を理解するのに適しています。
ipはその後継で、より柔軟なネットワーク制御を行える強力なコマンドです。
hostはDNSに問い合わせを行うユーティリティで、Webサービスやメールサーバの調査に役立ちます。

演習問題+模範解答例

演習01:ルーティングテーブルの情報を表示する

問題
現在のルーティングテーブルを確認してください。

模範解答例

[suzuki@AlmaLinux ~]$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 enp0s3
10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 enp0s3

解説
ルーティングテーブルは、データがどのネットワーク経路を通るかを示す表です。
defaultはデフォルトゲートウェイを表します。

演習02:ルートを追加する(root権限)

問題
 rootユーザーに切り替えて、ネットワーク192.168.0.0/16へのルートをenp0s3インターフェースに追加してください。

模範解答例

[suzuki@AlmaLinux ~]$ su -
パスワード:
[root@AlmaLinux ~]# route add -net 192.168.0.0 netmask 255.255.0.0 dev enp0s3
[root@AlmaLinux ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 enp0s3
10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
192.168.0.0     0.0.0.0         255.255.0.0     U     0      0        0 enp0s3

解説
route addで新しい経路を追加します。
手動で追加したルートは再起動後に消えるため、永続化する場合は設定ファイルに記述します。

演習03:ルートを削除する(root権限)

問題
追加した192.168.0.0/16ネットワークのルートを削除してください。

模範解答例

[root@AlmaLinux ~]# route del -net 192.168.0.0 netmask 255.255.0.0
[root@AlmaLinux ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    100    0        0 enp0s3
10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 enp0s3

解説
不要なルートは削除してネットワーク経路を整理します。
この操作も管理者権限で実行する必要があります。

演習04:ネットワークインターフェースの情報を表示する

問題
root からログアウトして、システム上の全ネットワークインターフェースの情報を表示してください。

模範解答例

[root@AlmaLinux ~]# exit
ログアウト
[suzuki@AlmaLinux ~]$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:f8:25:ac brd ff:ff:ff:ff:ff:ff

解説
ip link showは全インターフェースの状態を確認します。
loはループバック、enp0s3は物理NICを表します。

演習05:ルーティングテーブルを表示する(ipコマンド)

問題
ipコマンドを使って現在のルーティングテーブルを表示してください。

模範解答例

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

解説
ip route showはrouteコマンドよりも詳細な情報を表示します。
viaの後ろがゲートウェイ、devは使用するネットワークインターフェースです。

演習06:ホスト名を解決する

問題
www.google.comのIPアドレスを取得してください。

模範解答例

[suzuki@AlmaLinux ~]$ host www.google.com
www.google.com has address 142.250.76.36
www.google.com has IPv6 address 2404:6800:400a:806::2004

解説
hostコマンドはDNSサーバに問い合わせを行い、ドメイン名からIPアドレスを取得します。
IPv4とIPv6の両方を返すことがあります。

演習07:逆引きルックアップを行う

問題
IPアドレス「142.250.76.36」からホスト名を取得してください。

模範解答例

www.google.com has IPv6 address 2404:6800:400a:806::2004
[suzuki@AlmaLinux ~]$ host 142.250.76.36
36.76.250.142.in-addr.arpa domain name pointer lckixa-ar-in-f4.1e100.net.
36.76.250.142.in-addr.arpa domain name pointer maa03s36-in-f4.1e100.net.

解説
逆引きルックアップでは、IPアドレスからホスト名を調べます。
DNS管理でPTRレコードが設定されている場合に結果が返ります。

演習08:MXレコードを確認する

問題
yahoo.co.jpのメールサーバー情報(MXレコード)を取得してください。

模範解答例

[suzuki@AlmaLinux ~]$ host -t MX yahoo.co.jp
yahoo.co.jp mail is handled by 10 mx1.mail.yahoo.co.jp.
yahoo.co.jp mail is handled by 10 mx2.mail.yahoo.co.jp.
yahoo.co.jp mail is handled by 10 mx5.mail.yahoo.co.jp.
yahoo.co.jp mail is handled by 10 mx3.mail.yahoo.co.jp.

解説
-t MXでメールサーバーを指定するレコードを取得します。
優先度(数字が小さい方が高い)も同時に確認できます。

演習09:ドメインの詳細なDNS情報を取得する

問題
www.google.comの詳細なDNS情報を取得してください。

模範解答例

[suzuki@AlmaLinux ~]$ host -v www.google.com
Trying "www.google.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20745
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.google.com.			IN	A

;; ANSWER SECTION:
www.google.com.		41	IN	A	142.250.76.36

Received 48 bytes from 10.0.2.3#53 in 18 ms
Trying "www.google.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7314
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
(省略)

解説
 -vオプションを指定すると、DNS問い合わせの詳細情報(ヘッダ、問い合わせ内容、応答内容など)を確認できます。

まとめ

「新Linuxコマンド演習58」では、
ネットワーク経路と名前解決の仕組みを理解するために、route, ip, hostの各コマンドを練習しました。
これらはネットワークトラブルシューティングやDNS管理において非常に重要なツールです。

学習ポイント内容
routeコマンド古典的なルーティング操作ツール(現在は非推奨)
ipコマンドルーティング・アドレス設定・インターフェース制御が可能な統合ツール
hostコマンドDNS問い合わせ・逆引き・MXレコード確認に使用