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

Linux基礎:コマンド練習24

コマンド練習24

 「コマンド練習24」では、7章の後半で登場したコマンドについて 学びます。ここで扱うのは hostname、hostnamectl set-hostname、ip address show、ifconfig(古いシステム)、ss、route、ip route show、host、ssh、ping です。これらはネットワーク環境を把握したり、ホスト名を変更したり、疎通確認を行うために必須のコマンドです。Linux サーバーを運用・管理するうえで、トラブルシューティングや設定確認に欠かせない知識となります。

コマンド解説

1.hostname

 システムに設定されているホスト名を表示します。シェルのプロンプトやネットワーク通信時に利用されます。

書式

hostname [オプション]

主なオプション

オプション説明
(なし)現在のホスト名を表示
-iホストの IP アドレスを表示
-fFQDN(完全修飾ドメイン名)を表示

2.hostnamectl set-hostname

 systemd を利用する環境でホスト名を管理するコマンドです。静的ホスト名、優先ホスト名、その他の属性を変更できます。

書式

hostnamectl set-hostname [新しいホスト名]

主なオプション

オプション説明
--static静的ホスト名を設定(デフォルト)
--prettyユーザーフレンドリーなホスト名を設定
--transient再起動でリセットされる一時的なホスト名を設定

3.ip address show

 iproute2 パッケージに含まれるコマンドで、ネットワークインターフェースの情報を表示します。ifconfig の後継コマンドです。

書式

ip address show [インターフェース名]

主なオプション

オプション説明
(なし)すべてのインターフェースを表示
dev eth0指定したインターフェースの情報のみ表示
-br addr簡潔な一覧形式で表示

4.ifconfig(古いシステム)

 古い Linux ディストリビューションでネットワーク設定に利用されていたコマンドです。現在は非推奨で、ip コマンドが推奨されています。

書式

ifconfig [インターフェース] [オプション]

主なオプション

オプション説明
(なし)すべてのインターフェース情報を表示
eth0特定のインターフェースを表示
up/downインターフェースを有効化/無効化

5.ss

ソケット情報(通信の詳細)を表示するコマンドです。netstat の代替として利用されます。

書式

ss [オプション]

主なオプション

オプション説明
-tTCP ソケットを表示
-uUDP ソケットを表示
-lLISTEN 状態のソケットを表示
-pプロセス情報を表示
-n数値形式で表示(名前解決をしない)

6.route

ルーティングテーブルを表示する古いコマンドです。現在は ip route コマンドが推奨されています。

書式

route [オプション]

主なオプション

オプション説明
(なし)ルーティングテーブルを表示
-n数値で表示(名前解決をしない)
add/delルートの追加・削除

7.ip route show

現在のルーティングテーブルを表示する ip コマンドです。

書式

ip route show

主なオプション

オプション説明
(なし)すべてのルーティングテーブルを表示
defaultデフォルトゲートウェイを確認

8.host

DNS ルックアップを行うコマンドです。ホスト名から IP アドレスを調べたり、逆引きも可能です。

書式

host [ホスト名 or IPアドレス]

主なオプション

オプション説明
-t AIPv4 アドレスを問い合わせ
-t AAAAIPv6 アドレスを問い合わせ
-t MXメールサーバ情報を問い合わせ

9.ssh

 リモートホストに安全に接続するためのコマンドです。公開鍵暗号化を用いた安全な通信が可能です。

書式

ssh [ユーザー名]@[ホスト名 or IPアドレス]

主なオプション

オプション説明
-p ポート接続先ポートを指定(デフォルトは22)
-i 鍵ファイル秘密鍵を指定して接続
-XX11 転送を有効化

10.ping

 指定したホストへの疎通確認を行うコマンドです。ICMP を利用してパケットを送信し、応答を確認します。

書式

ping [オプション] ホスト名/IP

主なオプション

オプション説明
-c 回数指定回数だけ送信
-i 秒数送信間隔を指定
-s サイズパケットサイズを指定

練習問題 + 模範解答例

問題1

現在のホスト名を確認してください。

模範解答例

[user@rocky9 ~]$ hostname
rocky9

問題2

 ホスト名を testserver に変更して、ホスト名を確認してください。確認が終わったら、ホスト名を元の名前 Rocky9 に戻してください。

模範解答例

[user@rocky9 ~]$ sudo hostnamectl set-hostname testserver
[sudo] user のパスワード:

 ターミナルをもう1つ起動します。プロンプトが「[user@testserver」に変わっていることが確認できます。

[user@testserver ~]$ 

ホスト名を元の名前 Rocky9 に戻します。

はじめに利用していたターミナルで次のコマンドを実行します。

[user@rocky9 ~]$ sudo hostnamectl set-hostname Rocky9
[sudo] user のパスワード:

問題3

ネットワークインターフェースの IP アドレスを確認してください。

模範解答例

[user@rocky9 ~]$ ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 08:00:27:c0:dc:12 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic noprefixroute enp0s3
       valid_lft 25264sec preferred_lft 25264sec
    inet6 fd17:625c:f037:2:a00:27ff:fec0:dc12/64 scope global dynamic noprefixroute 
       valid_lft 86346sec preferred_lft 14346sec
    inet6 fe80::a00:27ff:fec0:dc12/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

問題4

古いシステムでのネットワークインターフェース情報を表示してください。

模範解答例

[user@rocky9 ~]$ ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::a00:27ff:fec0:dc12  prefixlen 64  scopeid 0x20<link>
        inet6 fd17:625c:f037:2:a00:27ff:fec0:dc12  prefixlen 64  scopeid 0x0<global>
        ether 08:00:27:c0:dc:12  txqueuelen 1000  (Ethernet)
        RX packets 11841  bytes 14382083 (13.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3888  bytes 373798 (365.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 38  bytes 3458 (3.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 38  bytes 3458 (3.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

問題5

開いているポートを表示してください。

模範解答例

[user@rocky9 ~]$ ss
Netid State  Recv-Q Send-Q                         Local Address:Port        Peer Address:Port   
u_dgr ESTAB  0      0                        /run/systemd/notify 14414                  * 0      
u_dgr ESTAB  0      0               /run/systemd/journal/dev-log 14427                  * 0      
u_dgr ESTAB  0      0                /run/systemd/journal/socket 14429                  * 0      
(省略)

問題6

UDP のポート情報を確認してください。

模範解答例

[user@rocky9 ~]$ ss -u
Recv-Q       Send-Q                 Local Address:Port                 Peer Address:Port         
0            0                   10.0.2.15%enp0s3:bootpc                   10.0.2.2:bootps 

問題7

現在のルーティングテーブルを確認してください(古いコマンド使用)。

模範解答例

[user@rocky9 ~]$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.2.2        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

問題8

現在のルーティングテーブルを ip コマンドで確認してください。

模範解答例

[user@rocky9 ~]$ 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 

問題9

www.google.com の IP アドレスを DNS で問い合わせてください。

模範解答例

[user@rocky9 ~]$ host www.google.com
www.google.com has address 142.250.76.132
www.google.com has IPv6 address 2404:6800:400a:80b::2004

問題10

 ユーザー user が localhost に SSH 接続してください。接続を確認したら、exit コマンドでログアウトしてください。

模範解答例

[user@rocky9 ~]$ ssh user@localhost
The authenticity of host 'localhost (::1)' can't be established.
ED25519 key fingerprint is SHA256:3KyjmeBRL3cgR+ZI0UP/c374Rbg5yfoJFj44gxTlEIs.
This host key is known by the following other names/addresses:
    ~/.ssh/known_hosts:1: 10.0.2.15
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
user@localhost's password: 

Activate the web console with: systemctl enable --now cockpit.socket

Last login: Sun Sep 14 08:46:26 2025
[user@Rocky9 ~]$ exit
ログアウト
Connection to localhost closed.

問題11

8.8.8.8 へ疎通確認をしてください。

模範解答例

[user@rocky9 ~]$ ping -c 4 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 バイト応答 送信元 8.8.8.8: icmp_seq=1 ttl=255 時間=11.1ミリ秒
64 バイト応答 送信元 8.8.8.8: icmp_seq=2 ttl=255 時間=10.7ミリ秒
64 バイト応答 送信元 8.8.8.8: icmp_seq=3 ttl=255 時間=11.9ミリ秒
64 バイト応答 送信元 8.8.8.8: icmp_seq=4 ttl=255 時間=10.8ミリ秒

--- 8.8.8.8 ping 統計 ---
送信パケット数 4, 受信パケット数 4, 0% packet loss, time 3012ms
rtt min/avg/max/mdev = 10.693/11.110/11.868/0.456 ms

問題12

www.example.com の疎通確認を行い、3回のみ送信してください。

模範解答例

[user@rocky9 ~]$ ping -c 3 www.example.com
PING a1422.dscr.akamai.net (210.236.20.241) 56(84) bytes of data.
64 バイト応答 送信元 a210-236-20-241.deploy.akamaitechnologies.com (210.236.20.241): icmp_seq=1 ttl=255 時間=6.01ミリ秒
64 バイト応答 送信元 a210-236-20-241.deploy.akamaitechnologies.com (210.236.20.241): icmp_seq=2 ttl=255 時間=6.10ミリ秒
64 バイト応答 送信元 a210-236-20-241.deploy.akamaitechnologies.com (210.236.20.241): icmp_seq=3 ttl=255 時間=6.18ミリ秒

--- a1422.dscr.akamai.net ping 統計 ---
送信パケット数 3, 受信パケット数 3, 0% packet loss, time 2005ms
rtt min/avg/max/mdev = 6.013/6.097/6.184/0.069 ms

まとめ

 「コマンド練習24」では、7章の後半で登場したコマンドについて 詳しく解説し、実際に操作を行いました。

  • hostname/hostnamectl でホスト名の管理
  • ip address/ifconfig でインターフェースの確認
  • ss/route/ip route show で通信・ルーティングの確認
  • host/ssh/ping で外部接続や疎通の確認

 これらのコマンドを理解し活用することで、Linux システムにおけるネットワーク管理やトラブルシューティングをより効率的に行うことができます。