1 分で読了 #devops
このページの目次

ネットワークインターフェース操作マニュアル

Linux のネットワークインターフェース管理には、ip コマンド(古い ifconfig/route の代替)を使用します。すべての一時的な変更は再起動後に失われるため、永続化には NetworkManager または systemd-networkd を介して行います。

確認

# インターフェースの概要 (UP/DOWN, MAC, MTU, 状態)
ip link show
ip -s link show wlan0                      # RX/TX のバイト数/パケット数/エラー/ドロップ数を含む

# IP アドレス
ip addr show wlan0
ip -br addr                                # 簡潔表示 (1行に1インターフェース)

# 統計情報 (ソフト割り込みレベルでのパケットカウント)
cat /proc/net/dev | column -t

# ルーティングテーブル
ip route show                              # main テーブル
ip route show table all                    # すべてのテーブル (local/main/default/カスタム)
ip route get 8.8.8.8                       # 特定宛先への実際のルーティング経路を確認 (どのインターフェースとゲートウェイを使用するか)

# ネットワークカードのハードウェア
ethtool enp14s0                            # 速度/デュプレックス/ドライバー/ファームウェア
ethtool -S enp14s0 | grep -E 'err|drop|fifo'  # ネットワークカードレベルのドロップ統計
ethtool -i enp14s0                         # ドライバー + ファームウェア情報

# WiFi
iw dev wlan0 link                          # 現在の接続情報: SSID/信号強度/周波数/速度
iw dev wlan0 station dump                  # 統計情報: リトライ数/失敗フレーム/信号強度
iw dev wlan0 scan | grep -E "SSID|signal|freq"  # アクセスポイントをスキャン

# ARP キャッシュ
ip neigh show                              # エントリの状態: REACHABLE/STALE/DELAY/FAILED

操作

# インターフェースのオン/オフ
ip link set wlan0 up / down

# IP アドレス
ip addr add 192.168.1.100/24 dev enp14s0
ip addr del 192.168.1.100/24 dev enp14s0

# ルーティング
ip route add default via 192.168.31.1 dev wlan0
ip route add 10.0.0.0/8 via 192.168.1.1 dev enp14s0
ip route replace default via 192.168.31.7     # replace: 存在しない場合は add、存在する場合は update
ip route del 10.0.0.0/8

# NetworkManager (nmcli)
nmcli device status
nmcli device wifi list
nmcli device wifi connect "SSID" password "xxx"
nmcli connection show "接続名"                 # 特定の接続の詳細設定を表示
nmcli connection modify "接続名" ipv4.method manual \
  ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1
nmcli connection up "接続名"                   # 変更を適用
systemctl restart NetworkManager              # 注意して使用 — 全接続が一時的に切断される

# ブリッジ
ip link add br0 type bridge
ip link set enp14s0 master br0
ip link set br0 up
ip link set enp14s0 nomaster                 # ブリッジからインターフェースを削除

# VLAN
ip link add link enp14s0 name enp14s0.10 type vlan id 10

トラブルシューティング

# インターフェースが down → 物理状態を確認
ip link show wlan0 | grep state
dmesg | tail -50 | grep -iE 'error|fail|link'

# WiFi の頻繁な切断
iw dev wlan0 link | grep -E 'signal|freq'
# → 信号が弱い → AP に近づく
# → 5GHz DFS チャネル (52/56/60/64) → 149 以降を使用
# → ドライバーの問題 → modprobe -r mt7925e; modprobe mt7925e

# ルーティング不通
ip route get <target>                        # どのインターフェース/ゲートウェイを使用するか確認
ping -c 3 <gateway>                          # ゲートウェイは応答するか?

# パフォーマンス低下/パケットドロップ
ip -s link show wlan0 | grep -E 'errors|dropped'
ethtool -S enp14s0 | grep -v ': 0$'          # ゼロ以外のカウンタ

# ARP 解決が固まる → キャッシュをクリア
ip neigh flush dev wlan0