Linuxインフラ実践

ipコマンドでネットワーク設定を操作する【ifconfigの後継完全ガイド】

Linuxインフラ実践
記事内に広告が含まれています。

ifconfigは古いコマンドです。現代のLinuxではipコマンドが標準です。基本コマンドを学んだ次のステップとして、ネットワーク設定の操作方法を習得しましょう。

ip コマンドの基本構造

# 基本構文
$ ip [オブジェクト] [コマンド] [引数]

# 主なオブジェクト
# addr(address): IPアドレスの管理
# link          : ネットワークインターフェースの管理
# route         : ルーティングテーブルの管理
# neigh         : ARPテーブルの管理

IPアドレスの確認・設定(ip addr)

# 全インターフェースのIPアドレスを確認
$ ip addr show
$ ip a          # 短縮形

# 特定インターフェースのみ表示
$ ip addr show eth0

# IPアドレスを一時的に追加(再起動で消える)
$ sudo ip addr add 192.168.1.200/24 dev eth0

# IPアドレスを削除
$ sudo ip addr del 192.168.1.200/24 dev eth0

# 出力例
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
#   ↑IPv4アドレス/プレフィックス  ↑ブロードキャスト
    inet6 fe80::1/64 scope link
#   ↑IPv6リンクローカルアドレス

インターフェースの操作(ip link)

# インターフェース一覧を表示
$ ip link show

# インターフェースを有効化/無効化
$ sudo ip link set eth0 up
$ sudo ip link set eth0 down

# MACアドレスを確認
$ ip link show eth0 | grep "link/ether"

ルーティングの確認・設定(ip route)

# ルーティングテーブルを表示
$ ip route show
$ ip r          # 短縮形

# 出力例
default via 192.168.1.1 dev eth0     ← デフォルトゲートウェイ
192.168.1.0/24 dev eth0 proto kernel ← 直接接続のネットワーク

# デフォルトゲートウェイを追加(一時的)
$ sudo ip route add default via 192.168.1.1

# 特定のルートを追加
$ sudo ip route add 10.0.0.0/8 via 192.168.1.254

# ルートを削除
$ sudo ip route del 10.0.0.0/8

# 特定の宛先への経路を確認
$ ip route get 8.8.8.8

設定を永続化する

ipコマンドで設定した内容は再起動すると消えます。永続化するにはディストリビューションごとの設定ファイルを使います。

# Ubuntu/Debian: Netplan(/etc/netplan/)
$ cat /etc/netplan/00-installer-config.yaml
network:
  version: 2
  ethernets:
    eth0:
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]

# 設定を適用
$ sudo netplan apply

# RHEL/CentOS: NetworkManager
$ sudo nmcli connection show
$ sudo nmcli connection modify eth0 ipv4.addresses 192.168.1.100/24

まとめ

  • ip a でIPアドレス確認、ip r でルーティングテーブル確認が基本
  • ip addr add/del でIPアドレスを一時的に追加・削除できる
  • ip link set eth0 up/down でインターフェースを有効化・無効化
  • 設定の永続化はUbuntu/Debianは Netplan、RHEL/CentOS は NetworkManager を使う
  • ifconfig は非推奨。現代のLinuxは ip コマンドを使う

📋 Phase 3 ネットワーク基礎チートシートで全コマンドをまとめて確認できます。

コメント

タイトルとURLをコピーしました