ipコマンド入門
ネットワークインターフェースを管理する
ipconfig(Windows)、ifconfig(macOS)、ipコマンド(Linux)を使って、IPアドレスやサブネットマスク、MACアドレスなどのネットワーク設定を確認・変更する方法を解説します。
こんな人向けの記事です
- 自分のIPアドレスやネットワーク設定を確認したい人
- DHCPの更新やDNSキャッシュのクリアを行いたい人
- ifconfigからipコマンドへの移行を理解したい人
Step 1OS別の基本コマンド
Windows:
ターミナル
ipconfig
macOS:
ターミナル
ifconfig
Linux(推奨):
ターミナル
ip addr show
ポイント: 最新のLinuxではifconfigはipコマンドに置き換えられつつあります。ipコマンドはより多機能でIPv6サポートも優れています。
Step 2出力の読み方
| 項目 | Windows表示 | Linux/macOS表示 | 意味 |
|---|---|---|---|
| IPv4アドレス | IPv4 アドレス | inet | コンピュータに割り当てられたIPアドレス |
| サブネットマスク | サブネット マスク | netmask / /24 | ネットワーク部とホスト部の区別 |
| ゲートウェイ | デフォルト ゲートウェイ | route -n で確認 | 外部通信用ルーターのIP |
| MACアドレス | ipconfig /all で表示 | ether | ネットワークインターフェースの物理ID |
| DNSサーバー | ipconfig /all で表示 | /etc/resolv.conf | 名前解決用サーバーのIP |
Step 3Windows(ipconfig)の応用
ターミナル
# 詳細情報の表示(MAC、DNS、DHCP情報含む)
ipconfig /all
# DNSキャッシュのクリア
ipconfig /flushdns
# DHCPリースの解放と再取得
ipconfig /release
ipconfig /renew
Step 4Linux(ipコマンド)の応用
ターミナル
# 特定インターフェースの情報表示
ip addr show dev eth0
# IPアドレスの設定
sudo ip addr add 192.168.1.10/24 dev eth0
# インターフェースの有効化/無効化
sudo ip link set eth0 up
sudo ip link set eth0 down
# ルーティングテーブルの表示
ip route show
Step 5トラブルシューティング
IPアドレスが割り当てられていない(169.254.x.x が表示される)場合:
ターミナル
# Windows
ipconfig /release
ipconfig /renew
# Linux
sudo dhclient -r
sudo dhclient
DNS問題(ドメイン名では接続できないがIPでは接続できる):
ターミナル
# Windows - DNSキャッシュクリア
ipconfig /flushdns
# Linux/macOS - DNS設定確認
cat /etc/resolv.conf
注意: ipconfig/ifconfigの出力にはMACアドレスやIPアドレスなどセンシティブな情報が含まれます。スクリーンショット共有時は注意してください。
Step 6ifconfigからipへの移行対応表
| 操作 | ifconfig | ip |
|---|---|---|
| アドレス表示 | ifconfig | ip addr show |
| インターフェース有効化 | ifconfig eth0 up | ip link set eth0 up |
| IPアドレス設定 | ifconfig eth0 192.168.1.10 | ip addr add 192.168.1.10/24 dev eth0 |
| IPアドレス削除 | ifconfig eth0 0.0.0.0 | ip addr del 192.168.1.10/24 dev eth0 |
| MACアドレス変更 | ifconfig eth0 hw ether XX:XX:XX:XX:XX:XX | ip link set dev eth0 address XX:XX:XX:XX:XX:XX |
| MTU設定 | ifconfig eth0 mtu 1492 | ip link set dev eth0 mtu 1492 |
| ルーティング表示 | route -n | ip route show |
ポイント: ipコマンドの基本構造は ip [OPTIONS] OBJECT { COMMAND } です。主なOBJECTはaddr(アドレス管理)、link(デバイス管理)、route(ルーティング管理)、neigh(ARP管理)です。