ネットワークの状態確認を理解する
【連載コラム:Linuxを学ぼう(17)】
サーバーを扱う上で必須と言える技術が「Linux」。今回はネットワークの状態を確認する方法について解説していきます。
今回は、ネットワークの状態を確認する方法について解説します。
あくまで経験的なものですが、システムトラブルの多くがネットワークの異常に起因しています。まずはネットワークが正常に動作している状態を確認する方法をしっかりと覚えましょう。
IPアドレスを確認する
まず、設定されているIPアドレスを確認します。ipコマンドで確認します。
$ ip a
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:e2:6e:7a 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 82167sec preferred_lft 82167sec
inet6 fe80::a00:27ff:fee2:6e7a/64 scope link noprefixroute
valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 08:00:27:9b:23:b6 brd ff:ff:ff:ff:ff:ff
inet 192.168.56.107/24 brd 192.168.56.255 scope global dynamic noprefixroute enp0s8
valid_lft 86343sec preferred_lft 86343sec
inet6 fe80::3859:9f48:487d:d042/64 scope link noprefixroute
valid_lft forever preferred_lft forever
正確にはip addressコマンドですが、長いので省略してaだけで実行できます。
ここでは、3つのネットワークインターフェースが確認できます。1つはローカルループバックアドレスで、このホスト自身に対して通信するインターフェースです。2つは外部との接続のためのアドレスになっています。
VirtualBoxとネットワーク
上記実行例はVirtualBox上で動作している仮想マシンの設定を確認しています。ネットワークインターフェースが2つあるのは、1つがインターネットへの接続のためにNAT接続をしており、もう1つがホストOSと通信を行うためにホストオンリーネットワークに接続しているためです。
VirtualBoxで快適に作業を行うには、このように2つのネットワークインターフェースを用意すると良いでしょう。
名前解決のテスト
次にDNSを使った名前解決のテストを行います。digコマンドを使用します。
$ dig linuc.jp
(中略)
;; QUESTION SECTION:
;linuc.jp. IN A
;; ANSWER SECTION:
linuc.jp. 300 IN A 150.95.255.38
(中略)
;; Query time: 14 msec
;; SERVER: 192.168.11.1#53(192.168.11.1)
;; WHEN: Sun Jul 02 19:52:16 JST 2023
;; MSG SIZE rcvd: 101
この例では、linuc.jpのIPアドレスを調べています。DNSサーバーは接続しているLANのルーターのIPアドレスになっています。
通信の疎通を確認する
DNSによる名前解決のテストは成功していますが、もし失敗していた場合、ネットワークの疎通に異常があると考えられます。接続している環境のルーターに割り当てられたIPアドレスが192.168.11.1であると分かっているという前提で、pingコマンドでルーターに対しての疎通確認を行ってみます。
$ ping 192.168.11.1
PING 192.168.11.1 (192.168.11.1) 56(84) bytes of data.
64 バイト応答 送信元 192.168.11.1: icmp_seq=1 ttl=63 時間=0.823ミリ秒
64 バイト応答 送信元 192.168.11.1: icmp_seq=2 ttl=63 時間=0.832ミリ秒
^C
--- 192.168.11.1 ping 統計 ---
送信パケット数 2, 受信パケット数 2, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.823/0.827/0.832/0.004 ms
この例ではルーターとIPでの通信が行えているのが分かります。
次回は、典型的なネットワークトラブルについて解説します。
- 筆者紹介
宮原 徹 氏
Linux標準教科書、Linuxサーバー構築標準教科書などの監修者。LinuCレベル1/レベル2 Version10.0の改訂作業にも協力。また、幅広いOSSに関する情報提供の場として「オープンソースカンファレンス(OSC)」の企画運営も。
バックナンバー
第21回:外部からWebサーバーにアクセスする
第20回:Webサーバーを動かす
第19回:Webサーバーをインストールする
第17回:ネットワークの状態確認を理解する
第15回:ファイルのアクセス権を理解する
第14回:パッケージをアップデートする dnf編
第13回:PAMを理解する
第12回:グループとは何かを理解する
第11回:sudoコマンドについて理解する
第10回:suコマンドで特権ユーザーになる
第9回:ユーザー権限を理解する
第8回:SSHによるリモートログイン
第6回:Linuxイストールの実際
第5回:Linuxインストールの準備
第3回:学習環境を用意する
第2回:Linuxをどう学ぶのか
第1回:Linuxを学ぼう