目次
概要
Linuxではネットワークトラブルの原因が多岐にわたります。この記事では、次の点を中心に学びます:
- 基本的なネットワーク設定の確認方法
- 通信経路のトラブルシューティング
- ハードウェアやドライバの確認方法
- 初期化ファイルや NetworkManager の役割
1. 基本的なネットワーク設定の確認
ホスト名関連のファイルとコマンド
| 内容 | コマンド・ファイル例 |
|---|---|
| ホスト名の表示 | hostname |
| ホスト名の設定 | /etc/hostname(再起動で有効) |
| ホスト名解決用 | /etc/hosts |
例 /etc/hosts の内容:
127.0.0.1 localhost
192.168.1.10 myserver.localdomain myserver
DNSの設定
DNSの設定は /etc/resolv.conf に記述されています:
cat /etc/resolv.conf
内容例:
nameserver 8.8.8.8
nameserver 1.1.1.1
NetworkManager がこれを動的に書き換えることもあるため注意。
インターフェースとIP確認
ip a # 現在のIPアドレス一覧
ip r # ルーティングテーブル
nmcli dev show # NetworkManager の情報表示
2. 通信経路のトラブルシューティング
通信の流れを確認するツール
| コマンド | 説明 |
|---|---|
traceroute | パケットが通るルートを表示 |
traceroute6 | IPv6 用の traceroute |
mtr | traceroute + ping をリアルタイム表示 |
ip route | ルーティングの確認・変更 |
使用例:
traceroute google.com
mtr yahoo.co.jp
問題箇所がどこで詰まっているか一目瞭然になります。
3. ハードウェア認識・ドライバ確認
ネットワークインターフェースが認識されていない場合、ドライバがロードされていないことがあります。
カーネルメッセージを確認
dmesg | grep -i eth
または:
journalctl -k | grep -i network
システムログの確認
- Debian系:
/var/log/syslog - RHEL系:
/var/log/messages
sudo less /var/log/syslog
4. systemdとネットワーク初期化ファイル
NetworkManager の役割
NetworkManagerはデスクトップ環境で一般的なネットワーク管理デーモンです。以下のようなGUIまたはコマンドラインで操作できます。
nmcli connection show
nmcli device status
NetworkManagerが管理するインターフェースでは、/etc/network/interfaces などの設定が無視されることもあります。
初期化ファイルの位置
| ディストリビューション | 設定ディレクトリ |
|---|---|
| Debian系 | /etc/network/interfaces |
| RedHat系 | /etc/sysconfig/network-scripts/ |
例:ifcfg-eth0 の内容(RedHat系):
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
まとめ:ネットワークトラブル解決の流れ
| ステップ | 内容 |
|---|---|
| 1. インターフェースの状態確認 | ip a, nmcli, ifconfig |
| 2. ルーティング確認 | ip route, traceroute, mtr |
| 3. DNS設定の確認 | /etc/resolv.conf, dig, nslookup |
| 4. ログの確認 | dmesg, journalctl, /var/log/messages |
| 5. NetworkManagerの影響確認 | nmcli, nmtui, networkctl |
コメント