【 ip 】コマンド(基礎編)――ネットワークデバイスのIPアドレスを表示するLinux基本コマンドTips(146)

本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ネットワークデバイスのIPアドレスなどを表示、変更する「ip」コマンドです。

» 2017年09月22日 05時00分 公開
[西村めぐみ@IT]
「Linux基本コマンドTips」のインデックス

Linux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ネットワークデバイスのIPアドレスなどを表示、変更する「ip」コマンドです。

ipコマンドとは?

 「ip」コマンドは、ネットワークデバイスやルーティング、ポリシーなどの表示と変更を行うコマンドです。従来は、ifconfigコマンドやnetstatコマンド、routeコマンドなど、net-toolsパッケージに収録されているコマンド群を使用していました。現在は、いずれもipコマンドへの移行が進んでいます。

 「ip addr」や「ip link」のように、「オブジェクト」と組み合わせて使用します。今回はIPアドレスを表示する「ip addr」を取り上げます。従来はifconfigコマンドを使って表示していました。



ip addrコマンドの書式

ip [オプション] オブジェクト [サブコマンド]

※[ ]は省略可能な引数を示しています。




ipコマンドのオブジェクト

オブジェクト 別名(省略形) 意味
link l ネットワークデバイス
addr a、address ネットワークデバイスのIPアドレス
addrlabel addrl アドレスラベル
route r ルーティングテーブルのエントリー
rule rul ルーティングポリシーデータベースに登録されているルール
neigh n、neighbour 近傍キャッシュエントリ(ARPまたはNDISCキャッシュエントリ)
ntable nt、ntb 近傍キャッシュの管理テーブル
tunnel t IPトンネル
tuntap tu トンネルデバイス
maddr m、ma、mad マルチキャストアドレス
mroute mr マルチキャストルーティングのキャッシュエントリ
mrule mru マルチキャストルーティングポリシーデータベースに登録されているルール
monitor mon ネットリンクメッセージの監視
xfrm x、xf IPsecポリシー
netns net ネットワーク名前空間
l2tp l2 L2TPv3(レイヤー2トンネリングプロトコル)
tcp_metrics tcp_m、tcp_metrics、tcpm TCPメトリック
token tok トークン

ipコマンドの主なオプション

短いオプション 長いオプション 意味
-f プロトコル -family プロトコル 使用するプロトコルファミリーをinet、inet6、bridge、ipx、dnet、linkから指定する
-4 IPv4を使用(-family inet相当)
-6 IPv6を使用(-family inet6相当)
-B ブリッジを使用(-family bridge相当)
-D DECnetを使用(-family decnet相当)
-I IPXを使用(-family ipx相当)
-0 データリンクプロトコルを使用(-family link相当)
-l 回数 -loops 回数 「ip addr flush」の試行回数(デフォルトは10、0を指定すると全てのアドレスが削除されるまで実行)
-b ファイル -batch ファイル ファイルからコマンドを読み込む
-force バッチモード(-bオプション使用時)、エラーで停止しない
-s -stats、-statistics 情報を詳しく表示する
-o -oneline 出力を1行にする(改行が"\"に置き換えられる)
-r -resolve アドレスの代わりにDNS名を表示する

ip addrの主なサブコマンド

コマンド 意味
add 指定したIPアドレスを付加する
change 指定したIPアドレスの設定を変更する
replace 指定したIPアドレスの設定を置き換える(change同様、ただし指定したアドレスがない場合は追加する)
del 指定したIPアドレスを削除する
list、show 設定されているIPアドレスを表示する(デフォルト)
save 設定を保存する(バイナリで出力されるのでリダイレクトで保存する)
flush デバイスに設定されている全てのIPアドレスを消去する
help 使い方(ip addr helpでip addrの使い方を表示する)


ネットワークデバイスの現在の設定を表示する

 「ip addr」で、ネットワークデバイスの現在の設定を表示します(画面1)。サブコマンドを指定していないため、デフォルトのサブコマンドであるshowを実行しています。「addr」部分は「a」と指定することも可能です。

 表示するデバイスを指定したい場合は「ip addr show dev デバイス名」のようにします。

コマンド実行例

ip addr show

(デバイスの設定を一覧表示する)

ip a

(デバイスの設定を一覧表示する。addrをaと省略表記、showサブコマンドを省略)

ip addr show dev デバイス名画面1

(指定したデバイスの設定を一覧表示する)


画面1 画面1 ネットワークデバイスの設定を一覧表示したところ


IPアドレスを追加、削除する

 ネットワークデバイスにIPアドレスを追加したい場合は「add」を使い、「ip addr add IPアドレス dev デバイス名」とします(画面2)。IPアドレスを削除するときは、「del」を使って同様に「ip addr del IPアドレス dev デバイス名」と指定します。

 追加や削除にはroot権限が必要です(連載第68回)。

コマンド実行例

ip addr add IPアドレス dev デバイス名

(指定したデバイスにIPアドレスを追加)

ip addr del IPアドレス dev デバイス名

(指定したデバイスからIPアドレスを削除)


画面2 画面2 ネットワークデバイスにIPアドレスを追加、削除したところ


訂正 2017年10月10日
初出時、第3段落で「『ip addr』や『ip list』のように」とありましたが、正しくは「『ip addr』や『ip link』のように」でした。お詫びして訂正いたします。

筆者紹介

西村 めぐみ(にしむら めぐみ)

PC-9801NからのDOSユーザー。PC-486DX時代にDOS版UNIX-like toolsを経てLinuxへ。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。


Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。