どーも!marusukeです!
ipアドレスの確認やネットワーク設定を行うコマンドip
について説明します!
ipコマンドでできること
ip [ OPTIONS ] OBJECT サブコマンド [または help ]
ip
コマンドは、Linuxシステムでネットワーク設定やネットワークインターフェースの管理を行うためのコマンドです
再起動後はip
コマンドで変更した内容は消えてしまうので注意が必要です
ip
コマンドは、従来のifconfig
コマンドの代替としてip
コマンド推奨されており、ネットワークに関する情報の確認や設定を行うことができます
主に以下のようなことができます
- ネットワークインターフェースの状態確認と設定
- IPアドレスの表示や設定
- ルーティングテーブルの表示や設定
- ネットワークデバイスの有効化/無効化
- ARPテーブルの管理
- マルチキャスト設定
ipコマンドのオプションとオブジェクト
以下は、ip
コマンドで使用できる主なオプションと対象オブジェクトです
オブジェクト | 説明 |
---|---|
link | ネットワークインターフェース(リンクデバイス)の管理を行います |
addr | IPアドレスの表示、追加、削除を行います |
route | ルーティングテーブルの表示、追加、削除を行います |
neigh | ネイバー(ARPテーブルやNDP)の表示と管理を行います |
netns | ネットワーク名前空間の管理を行います |
maddr | マルチキャストアドレスの設定を行います |
monitor | ネットワークイベント(アドレス変更、リンク状態変更など)を監視します |
help | コマンドやオブジェクトに関するヘルプを表示します |
オブジェクトのサブコマンド
linkオブジェクトの場合
ip link [サブコマンド]
サブコマンド | 説明 |
---|---|
show | インターフェースの状態を表示する(デフォルト動作)。 |
set | インターフェースの設定を変更する。 |
add | 新しいリンクデバイスを追加する(仮想デバイスなど)。 |
del | リンクデバイスを削除する。 |
up | インターフェースを有効化する。 |
down | インターフェースを無効化する。 |
使用例
# ネットワークインターフェースの状態を表示する
ip link show
# インターフェースを有効化する
sudo ip link set enp0s3 up
# インターフェースを無効化する
sudo ip link set enp0s3 down
addrオブジェクトの場合
ip addr [サブコマンド]
サブコマンド | 説明 |
---|---|
show | インターフェースのIPアドレスを表示する(デフォルト動作) |
add | IPアドレスをインターフェースに追加する |
del | IPアドレスをインターフェースから削除する |
flush | 全てのIPアドレスをインターフェースから削除する |
使用例
# IPアドレスを表示する
ip addr show
# IPアドレスを追加する
sudo ip addr add 192.168.1.100/24 dev enp0s3
# IPアドレスを削除する
sudo ip addr del 192.168.1.100/24 dev enp0s3
routeオブジェクトの場合
ip route [サブコマンド]
サブコマンド | 説明 |
---|---|
show | ルーティングテーブルを表示する(デフォルト動作) |
add | ルートを追加する |
del | ルートを削除する |
replace | ルートを置き換える |
使用例
# ルーティングテーブルを表示する
ip route show
# 新しいデフォルトルートを追加する
sudo ip route add default via 192.168.1.1
# ルートを削除する
sudo ip route del default via 192.168.1.1
neighオブジェクトの場合
ip neigh [サブコマンド]
サブコマンド | 説明 |
---|---|
show | ネイバーテーブルを表示する(デフォルト動作) |
add | ネイバーを追加する |
del | ネイバーを削除する |
replace | ネイバーを置き換える |
使用例
# ARPテーブルを表示する
ip neigh show
# 新しいネイバー(ARPエントリ)を追加する
sudo ip neigh add 192.168.1.200 lladdr 00:11:22:33:44:55 dev enp0s3
# ネイバーを削除する
sudo ip neigh del 192.168.1.200 dev enp0s3
netnsオブジェクトの場合
ip netns [サブコマンド]
サブコマンド | 説明 |
---|---|
add | 新しいネットワーク名前空間を作成する |
del | ネットワーク名前空間を削除する |
list | 名前空間の一覧を表示する |
exec | 指定した名前空間でコマンドを実行する |
使用例
# ネットワーク名前空間を作成する
sudo ip netns add test-ns
# 名前空間内でコマンドを実行する
sudo ip netns exec test-ns ip addr show
# 名前空間を削除する
sudo ip netns del test-ns
maddrオブジェクトの場合
ip maddr [サブコマンド]
サブコマンド | 説明 |
---|---|
show | マルチキャストアドレスを表示する |
add | マルチキャストアドレスを追加する |
del | マルチキャストアドレスを削除する |
使用例
# マルチキャストアドレスを表示する
ip maddr show
# マルチキャストアドレスを追加する
sudo ip maddr add 224.0.0.1 dev enp0s3
# マルチキャストアドレスを削除する
sudo ip maddr del 224.0.0.1 dev enp0s3
monitorオブジェクトの場合
ip monitor [サブコマンド]
サブコマンド | 説明 |
---|---|
all | 全てのネットワークイベントを監視する(デフォルト) |
link | インターフェースに関するイベントを監視する |
addr | IPアドレスの変更イベントを監視する |
route | ルーティングテーブルの変更イベントを監視する |
使用例
# ネットワーク全体のイベントを監視する
ip monitor all
# IPアドレスの変更イベントを監視する
ip monitor addr
注意点
ip
コマンドで行った設定はデフォルトでは一時的で、再起動するとリセットされます。永続化するには、ネットワーク設定ファイルを編集する必要があります- 権限が必要な操作(例: IPアドレスの追加や削除)を行う際には、
sudo
を付けてコマンドを実行してください
以上です!
ここまで読んでいただきありがとうございました!
コメント