🐧 Linux ネットワーク設定 入門から実践まで:インターフェース命名、IP 設定、Gateway、DNS、ホスト名の完全ガイド
Linux サーバーの構築や運用において、ネットワーク設定は欠かせない基本作業です。 インターフェース名の確認、IP アドレスの設定、デフォルト Gateway、DNS、ホスト名の管理など、 どれも日常的に扱う重要な要素です。
本記事では、初心者でも理解しやすく、かつ実務でそのまま使えるレベルまで踏み込み、
nmcli / ifcfg / systemd-networkd を使った設定方法、トラブルシューティング、
ネットワークの基礎知識を百科事典レベルで整理して紹介します。
📌 1. Linux のインターフェース命名(Predictable Network Interface Names)
近年の Linux では、従来の eth0 / eth1 といった名前ではなく、
「予測可能なインターフェース名」が採用されています。
ens160– PCIe スロットを基準にした命名enp0s3– バスアドレスを反映した命名eth0– レガシー命名(最小構成などでは残る場合あり)
🔍 インターフェース一覧の確認
ip link
🔍 詳細情報の確認
ip addr show ens160
Proxmox、VMware、KVM などの仮想化環境では、仮想 NIC の順番により インターフェース名が変わることもあります。
📌 2. 静的 IP アドレス設定:3 つの主要方式
Linux では、以下の 3 種類の方法が広く使われています:
| 方式 | 対象ディストリビューション | 難易度 | 特徴 |
|---|---|---|---|
| ifcfg(従来方式) | RHEL / CentOS / Rocky Linux | 中 | 設定ファイルベース。企業環境で根強い |
| nmcli / nmtui | NetworkManager 採用環境 | 簡単 | 現代的・扱いやすい・推奨方式 |
| systemd-networkd | Ubuntu Server / Debian / Container | 中 | 軽量・高速。クラウド向け |
🟦 2-1. nmcli を使った静的 IP 設定(最も推奨)
nmcli con mod ens160 ipv4.addresses 192.168.1.20/24
nmcli con mod ens160 ipv4.gateway 192.168.1.1
nmcli con mod ens160 ipv4.dns "8.8.8.8 1.1.1.1"
nmcli con mod ens160 ipv4.method manual
nmcli con down ens160; nmcli con up ens160
---
🟦 2-2. ifcfg ファイルでの設定(RHEL/CentOS 系)
設定ファイル:
/etc/sysconfig/network-scripts/ifcfg-ens160
例:
BOOTPROTO=none
DEVICE=ens160
IPADDR=192.168.1.20
PREFIX=24
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=1.1.1.1
ONBOOT=yes
設定の反映:
systemctl restart NetworkManager
---
🟦 2-3. systemd-networkd での設定(Ubuntu Server など)
設定ファイル:
/etc/systemd/network/10-ens160.network
内容:
[Match]
Name=ens160
[Network]
Address=192.168.1.20/24
Gateway=192.168.1.1
DNS=8.8.8.8 1.1.1.1
サービス有効化:
systemctl enable systemd-networkd --now
systemctl restart systemd-networkd
📌 3. ネットワーク確認に必須のコマンド
🔍 現在の IP を確認
ip addr
🔍 Gateway への疎通確認
ping 192.168.1.1
🔍 ルーティングテーブル確認
ip route
🔍 DNS 動作確認
dig google.com
nslookup google.com
🔍 ポートのリスニング状況を確認
ss -tulnp
📌 4. DNS(Resolver)設定
🟪 方法 1:nmcli で設定
nmcli con mod ens160 ipv4.dns "8.8.8.8 1.1.1.1"
nmcli con up ens160
🟪 方法 2:resolv.conf を編集(非推奨)
systemd-resolved や NetworkManager が稼働している環境では
/etc/resolv.conf は上書きされる可能性があります。
どうしても固定化したい場合:
chattr +i /etc/resolv.conf
※ 一般サーバー用途では推奨されません。
📌 5. デフォルト Gateway の設定
🔧 nmcli を使用
nmcli con mod ens160 ipv4.gateway 192.168.1.1
🔧 ip route(臨時設定)
ip route add default via 192.168.1.1
🔧 ルーティング確認
ip route show
📌 6. ホスト名(Hostname)設定
🔍 現在のホスト名確認
hostnamectl
🔧 ホスト名を変更
hostnamectl set-hostname web01.example.local
📌 7. トラブルシューティング(よくある問題)
❗ IP が取得できない
nmcli device status
❗ DNS 解決ができない
dig @8.8.8.8 google.com
❗ Gateway は通るが外部に届かない
- NAT が正しく構成されていない
- Firewall のブロック
- DNS が未設定
❗ インターフェース名が変わった
ls -l /sys/class/net/
仮想化環境で NIC 順序が変わることで発生する場合があります。
沒有留言: