net-toolsからiproute2へ移行する際、iproute2のどのコマンドが、今まで使っていたnet-toolsのどのコマンドに相当するのかがわからない人も多いだろう。
以下のサイトでその対応表を記述していたので、今回はそれを翻訳してまとめてみることにした。

1.各コマンドごとの対応表

オプションを考えない、各コマンドごとの対応表を以下に示す。
なお、()の付いているコマンドは省略形。()内が正式なコマンド構文となる。

net-tools iproute2
arp ip n (ip neighbor)
ifconfig ip a (ip addr) ip link ip -s (ip -stats)
iptunnel ip tunnel
iwconfig iw
nameif ip link, ifrename
netstat ss ip route (for netstat-r) ip -s link (for netstat -i) ip maddr (for netstat-g)
route ip r (ip route)

基本、ipコマンドさえ覚えれば大体の事には対応出来そうだ。
以下、net-toolsの各コマンドのオプションごとに対して、どのiproute2のコマンドで対応すればよいかも記述する。

2.arp

arpコマンドのiproute2での代替コマンドは以下の通り。

net-tools iproute2 コマンドの概要
arp -a [ホスト名] (arp -all [ホスト名]) ip n (ip neighbor) ip n show 指定したホスト名の情報を表示する。ホスト名を指定しない場合は、すべてを表示する。
arp -d [ホスト名] (arp --delete [ホスト名]) ip n del [ホスト名] ip n f [ホスト名] (ip n flush [ホスト名]) 指定したホスト名を削除する。
arp -D (arp --use-device) - (同一機能は非提供) MACアドレスではなく、ハードウェア、アドレスを利用する。
arp -e - (同一機能は非提供) arpの内容をBSD形式ではなく、Linux形式で出力させる。
arp -f [ファイル名] (arp --file [ファイル名]) - (同一機能は非提供) 指定したファイルの指定アドレス情報を利用する。
arp -H [ハードウェアタイプ] (arp --hw-type [ハードウェアタイプ]) arp -t [ハードウェアタイプ] - (同一機能は非提供) HWタイプを指定して出力させる。
arp -i [インターフェイス名] (arp --device [インターフェイス名]) ip n show?dev [インターフェイス名] 指定したインターフェイスの情報を出力させる。
arp -n (arp --numeric) - (同一機能は非提供) ホスト名,ポート名,ユーザー名を解決せずに数値のまま表示する
arp -s [IPアドレス] [MACアドレス] arp --set [IPアドレス] ip n add [IPアドレス] lladdr [MACアドレス] dev [デバイス名] nud [パラメータ値] 指定したホスト名・MACアドレスのエントリーを追加する。 設定するパラメータ値については後述。
arp -v ip -s n (ip -stats n) 詳細情報を表示する。

ホスト名、MACアドレスを手動で追加する際、nudで追加するパラメータ値には以下のようなものが存在する。

  • noarp:エントリーは有効であり、このエントリーを検証しない。しかし、存続期間の満了後はそれを除去することができる。
  • permanent:エントリーは永続的に有効であり、管理者のみが削除出来る。
  • reachable:タイムアウトになるまでエントリーは有効である。
  • stale:エントリーは有効だが、信用出来ない情報である。

3.ifconfig

ifconfigコマンドのiproute2での代替コマンドは以下の通り。

net-tools iproute2 コマンドの概要
ifconfig ip a (ip addr) ネットワークインタフェースの情報を表示する。
ifconfig [インターフェイス名] ip a show dev [インターフェイス名] 指定したネットワーク・インターフェイスの情報を表示する。
ifconfig [アドレスの種類] ip -f [アドレスの種類] a アドレスの種類を指定して情報を表示する。 出力出来る種類はifconfigではinet、inet6、ax25、ddp、ipx、netrom。 ipではinet、inet6。
ifconfig [インターフェイス名] add [IPアドレス/サブネットマスク] ip a add [IPアドレス/サブネットマスク(CIDR)] dev [インターフェイス名] 指定したインターフェイスにIPアドレスを設定する。
ifconfig [インターフェイス名] address [IPアドレス]
ifconfig [インターフェイス名] allmulti (無効時:ifconfig [インターフェイス名] -allmulti) ip mr iif [インターフェイス名] (ip mroute iif [インターフェイス名]) すべてのマルチキャストパケットの受信を有効にする。
ifconfig [インターフェイス名] arp (無効時:ifconfig [インターフェイス名] -arp) ip link set arp on (無効時:ip link set arp off) ARPの利用を有効にする。
ifconfig [インターフェイス名] broadcast [IPアドレス] ip a add broadcast [IPアドレス] ip link set dev [インターフェイス名] broadcast [MACアドレス] 指定したIPアドレスをブロードキャストアドレスとして設定する。アドレスを省略した場合、ブロードキャストの利用のみを指定したことになる。
ifconfig [インターフェイス名] del [IPアドレス/サブネットマスク] ip a del [IPアドレス] dev [インターフェイス名] 指定したIPアドレスを削除する。
ifconfig [インターフェイス名] up ip link set [インターフェイス名] up 指定したインターフェイスを有効にする。
ifconfig [インターフェイス名] down ip link set [インターフェイス名] down 指定したインターフェイスを無効にする。
ifconfig [インターフェイス名] hw [ハードウェアタイプ] [IPアドレス] ip link set dev [インターフェイス名] address [MACアドレス] 指定したインターフェイスのハードウェアクラスとアドレスを指定する。
ifconfig [インターフェイス名] io_addr [IOアドレス] - (同一機能はethtoolで提供) インターフェイスドライバのI/O開始アドレスを指定する
ifconfig [インターフェイス名] irq [割り込み番号] - (同一機能はethtoolで提供) インターフェイスドライバの割り込み番号を指定する。
ifconfig [インターフェイス名] mem_start [共有メモリ利用アドレス] - (同一機能はethtoolで提供) インターフェイスドライバの共有メモリ利用アドレスを指定する。
ifconfig [インターフェイス名] media [type] - (同一機能はethtoolで提供) インターフェイスが使用するメディアの種類を指定する。「auto(自動認識)」「10baseT」「10base2」などが指定できる。
ifconfig [インターフェイス名] mtu [転送サイズ] ip link set dev [インターフェイス名] mtu [転送サイズ] インターフェイスのMTU(Maximum Transfer Unit:Ethernetフレームの最大転送サイズ)を指定する。
ifconfig [インターフェイス名] multicast ip link set dev [インターフェイス名] multicast on (無効時:ip link set dev [インターフェイス名] multicast off) マルチキャストの利用を有効(無効)にする。
ifconfig [インターフェイス名] netmask [サブネットマスク] - (同一機能は非提供) このインターフェイスが使用するサプネットマスクを設定する。
ifconfig [インターフェイス名] pointopoint (無効時:ifconfig [インターフェイス名] -pointopoint) - (同一機能は非提供ながら、ipppd [インターフェイス名] で対応している。) 指定したIPアドレスとの間のみで通信を行う(ポイント間通信の設定)。PLIP(Parallel Line Interface Protocol)などで使用する。
ifconfig [インターフェイス名] promisc (無効時:ifconfig [インターフェイス名] -promisc) ip link set dev [インターフェイス名] promisc on (無効時:ip link set dev [インターフェイス名] promisc off) 自身向け以外のすべてのパケットの受信を有効にする。
ifconfig [インターフェイス名] txqueuelen [転送サイズ] ip link set dev [インターフェイス名] txqueuelen [転送サイズ] (無効時:ip link set dev [インターフェイス名] txqlen [転送サイズ]) パケットの送信キューのサイズを指定する。
ifconfig [インターフェイス名] tunnel [IPアドレス] ip tunnel mode sit IPv6 over IPv4トンネルのための相手先アドレスを指定する。
PartitionID = 2
(amd64 or x86)_Microsoft-Windows-Setup_neutral\ImageInstall\OSImage InstallToAvailablePartition = false
WillShowUI = OnError
(amd64 or x86)_Microsoft-Windows-Setup_neutral\ImageInstall\OSImage\InstallTo DiskID = 0
PartitionID = 2
(amd64 or x86)_Microsoft-Windows-Setup_neutral\UserData AcceptEula = true
(amd64 or x86)_Microsoft-Windows-Setup_neutral\UserData\ProductKey Key =
WillShowUI = OnError
7 oobeSystem (amd64 or x86)_Microsoft-Windows-Deployment_neutral\Reseal ForceShutdownNow = false
Mode = Audit
(amd64 or x86)_Microsoft-Windows-Shell-Setup_neutral\OOBE HideEULAPage = true
ProtectYourPC = 3

4.iptunnel

iptunnnelコマンドのiproute2での代替コマンドは以下の通り。

net-tools iproute2 コマンドの概要
iptunnel [add change del show] ip tunnel a (ip tunnel add) ip tunnel chg (ip tunnel change) ip tunnel d (ip tunnel del) ip tunnel ls (ip tunnel show) IPトンネルの作成、変更、削除、表示を行う。
iptunnel add [名前] [mode {ipip gre sit} ] remote [IPアドレス] local [IPアドレス] ip tunnel add [名前] [mode {ipip gre sit isatap ip6in6 ipip6 any }] remote [IPアドレス] local [IPアドレス] IPトンネルの追加を行う。
iptunnel -V (iptunnel --version) - (同一機能は非提供) iptunnelコマンドのバージョンを表示する。

5.iwconfig

iwconfigコマンドのiproute2での代替コマンドは以下の通り。

net-tools iproute2 コマンドの概要
iwconfig iw dev [インターフェイス名] link 無線LANインタフェースの状態の確認を行う。
iwconfig [インターフェイス名] ap [MACアドレス] - (同一機能は非提供) 接続するアクセス・ポイントのMACアドレスを指定する。
iwconfig commit - (同一機能は非提供) 設定が即座に反映されないアダプタに対し、設定を反映させる。
iwconfig [インターフェイス名] essid [SSID] iw [インターフェイス名] connect [SSID] ESSIDを指定する。anyと指定すると特定のESSIDに固定しない。
iwconfig [インターフェイス名] frag [パケット数] - (同一機能は非提供) 最大フラグメンテーションのパケット・サイズを指定する。
iwconfig [インターフェイス名] freq 周波数 iw dev [インターフェイス名] set freq [周波数] [HT20 HT40+ HT40-] 無線の周波数を指定する。
iwconfig [インターフェイス名] channel [チャンネル数] iw dev [インターフェイス名] set channel [チャンネル数] [HT20 HT40+ HT40-] 無線のチャンネル数を指定する。
iwconfig [インターフェイス名] key [WEPキー] iw [インターフェイス名] connect [接続名] keys [WEPキー] WEPキーを指定する。指定は16進数で8けた(XXXXXXXX)または16けた(XXXX-XXXX-XXXX-XXXX)で指定する。
iwconfig [インターフェイス名] mode [モード名] - (同一機能は非提供) 接続モードを指定する。アドホック接続なら「Ad-Hoc」,インフラストラクチャ接続するなら「Managed」と指定する。
iwconfig [インターフェイス名] modu [modulation] - (同一機能は非提供) 直交変調を行うかどうかを指定する。
iwconfig [インターフェイス名] nick [ニックネーム] - (同一機能は非提供) ニックネームを指定する。
iwconfig [インターフェイス名] nwid [ネットワークID] - (同一機能は非提供) ネットワークIDを指定する。
iwconfig [インターフェイス名] power [オプション] iw dev [インターフェイス名] set power_save on iw dev [インターフェイス名] get power_save 出力パワーの制限などを指定する。
iwconfig [インターフェイス名] rate/bit [ビットレート] iw [インターフェイス名] set bitrates legacy-2.4 12 18 24 ビット・レートを指定する。
iwconfig [インターフェイス名] retry [option] [ミリ秒] - (同一機能は非提供) MACアドレスを転送する際のリトライ時間を指定する。
iwconfig [インターフェイス名] rts [ノード数] - (同一機能は非提供) RTS/CTS(Request To Send/Clear To Send)のノード数を指定する。
iwconfig [インターフェイス名] sens [デジベル数] 感度しきい値を指定する。 感度しきい値を指定する。
iwconfig [インターフェイス名] txpower [出力パワー(dBM)] iw dev [インターフェイス名] set txpower [auto fixed limit] [出力パワー(mBm)] 出力パワーを指定する。
iwconfig --help iw help ヘルプを表示させる。
iwconfig --version iw --version バージョンを表示させる。

6.nameif

nameifコマンドのiproute2での代替コマンドは以下の通り。

net-tools iproute2 コマンドの概要
nameif [新しいインターフェイス名] [MACアドレス] ip link set dev [インターフェイス名] name [新しいインターフェイス名] ifrename -i [インターフェイス名] -n [新しいインターフェイス名] ネットワークインターフェイスの名前を変更する。
nameif -c [設定ファイル] ifrename -c [設定ファイル] 通常読み込まれるファイル「/etc/mactab」ではなく、指定した設定ファイルを読み込む
nameif -s - (同一機能は非提供) 全てのエラーメッセージをsyslogに送るようにする。

7.netstat

netstatコマンドのiproute2での代替コマンドは以下の通り。

net-tools iproute2 コマンドの概要
netstat -a (netstat -all) ss -a (ss -all) 現在のネットワーク接続の一覧を表示する。
netstat -A?[プロトコル種別] netstat ?--protocol=[プロトコル種別] ss -f [プロトコル種別] ss ?family=[プロトコル種別] プロトコル種別(inet、inet6など)ごとに結果を表示する。
netstat -c netstat?--continuous - (同一機能は非提供) 指定された情報を 1 秒ごとに表示し続ける。
netstat -C ip route list cache 経路キャッシュからの経路情報を表示する。
netstat -e netstat?--extend ss -e ss?--extend さらに詳しい情報を表示する。 このオプションを 2 個指定すれば最も詳しい表示が得られる。
netstat -F - (同一機能は非提供) FIB からの経路情報を表示する。
netstat -g netstat --groups ip maddr ip maddr show [インターフェイス名] IPv4 と IPv6 のマルチキャストグループメンバーシップ情報を表示する。
netstat -i netstat --interface=[インターフェイス名] ip -s link 全ての (あるいは --interface で指定した) ネットワークインターフェースの状態テーブルを表示する。
netstat -l netstat --listening ss?-l ss?--listening 接続待ち (listen) 状態にあるソケットのみを表示する。
netstat -M netstat?--masquerade - (同一機能は非提供) マスカレードされた接続を表示する。
netstat -n netstat?--numeric ss?-n ss?--numeric ホスト・ポート・ユーザーなどの名前を解決せずに、数字のアドレスで表示する。
netstat --numeric-hosts - (同一機能は非提供) ホストアドレスを数値で表示する。 ただし、ポート名とユーザー名の解決は行う。
netstat --numeric-ports - (同一機能は非提供) ポート番号を数値で表示する。 ただし、ホスト名とユーザー名の解決は行う。
netstat --numeric-users - (同一機能は非提供) ユーザー ID を数値で表示する。 ただし、ホスト名とポート名の解決は行う。
netstat -N netstat?--symbolic ss -r ss?--resolve 数字表現の代わりにシンボリックホスト,ポート,ユーザー名を表示する。
netstat -o netstat --timers ss -o ss?--options ネットワーキングタイマーに関する情報が追加される。
netstat -p netstat --program ss -p 各ソケットが属しているプログラムの PID と名前が表示される。
netstat -r netstat --route ip route ip route show all カーネルの経路テーブルを表示する。
netstat -s netstat --statistics ss -s 各プロトコルの統計情報の一覧を表示する。
netstat -t netstat --tcp ss?-t ss?--tcp TCPだけを表示する。
netstat -T netstat?--notrim - (同一機能は非提供) トリミングロングアドレスを止める。
netstat -u netstat --udp ss?-u ss?--udp UDPだけを表示する。
netstat -v netstat --verbose - (同一機能は非提供) 詳細表示モードになり、起こっていることをユーザーに知らせる。 特に、設定されていないアドレスファミリー関する有用な情報をいくつか表示する。
netstat -w netstat --raw ss?-w ss?--raw rawソケットだけを表示する。
netstat -Z netstat?--context - (同一機能は非提供) SELinuxが有効であればSELinuxの情報を表示する。

8.route

routeコマンドのiproute2での代替コマンドは以下の通り。 net-tools iproute2 コマンドの概要
route ip route FIB(フォワーディング・インフォメーション・ベース:静的ルーティング・テーブル)の経路情報を表示する。
route -A [プロトコル種別] route?--[プロトコル種別] ip -f [プロトコル種別] route プロトコル種別(inet、inet6など)を指定する。
route -C route --cache ip route show cache カーネルキャッシュでの情報を表示する。
route -e route?-ee ip route show netstatと同様のフォーマットで表示する。-eeはnetstat形式のデータも含めた詳細情報を表示する
route -F route --fib - (同一機能は非提供) FIB(Forwarding Information Base:Linuxにおけるルーティングテーブルの実装方式。宛先IPアドレスをキーに経路情報を効率的に配置して性能の向上を図っている)テーブルを用いる。
route -h route?--help ip route help ヘルプを表示する。
route -n - (同一機能は非提供) 出力をIPアドレスのみに抑制する(DNS逆引きを行わない)
route -v route?--verbose ip -s route 詳細モードで表示する。
route -V route?--version ip -V バージョンを表示する。
route add ... (route del ...) ip route [add chg repl del] [ネットワークアドレス] via [ゲートウェイアドレス] routeを追加、削除、変更する。
route add dev [インターフェイス名]... (route del dev [インターフェイス名]...) ip route [add chg repl del] dev [インターフェイス名] 経路が割り当てられるインターフェイス名を指定する。
route add [default] gw [ゲートウェイアドレス]... (route del [default] gw [ゲートウェイアドレス]...) ip route [add del] default via [ゲートウェイアドレス] 経路が使用するゲートウェイIPアドレスを指定する。
route add -host... (route del -host...) - (同一機能は非提供) ホストのための経路情報として登録する。
route add -irtt [ラウンドトリップ時間(ミリ秒)]... (route del -irtt [ラウンドトリップ時間(ミリ秒)]...) ip route [add chg repl del] rtt [ラウンドトリップ時間] 経路におけるTCPの初期ラウンドトリップ時間を指定する。ラウンドトリップ時間はTCPコネクションにおける通信途絶を判断するまでのタイムアウト時間である。単位はミリ秒。1~12000の範囲で指定する
route add?-net... (route del?-net...) - (同一機能は非提供) ネットワーク(サブネット)のための経路情報として登録する
route add [-net -host] netmask [サブネットマスク] (route del?[-net -host] netmask [サブネットマスク]) - (同一機能は非提供) サブネットマスクを設定する。
route add?metric [メトリック値]... (route del metric [メトリック値]...) ip route [add chg repl del] metric [メトリック値] ip route [add chg repl del] preference [メトリック値] 経路のメトリック値を指定する。
route add [mod dyn reinstate]... (route del [mod dyn reinstate]...) - (同一機能は非提供) ダイナミックルーティング時などに利用される診断用フラグを設定する。
route add mss [MSSサイズ(bytes)]... (route del mss [MSSサイズ(bytes)]...) ip route [add chg repl del] advmss [MSSサイズ] 経路におけるMSS(Maximum Segment Size:TCPパケットの最大データサイズ)を指定する。デフォルトはインターフェイスのMTU(ifconfigコマンドで指定)から導かれる。単位はバイト。
route add reject... (route del reject...) ip route add prohibit [ネットワークアドレス] ルーティングを拒否する経路を指定する。なお、この拒否はデフォルトゲートウェイより優先する。
route add?window [Windowサイズ(bytes)] (route del window [Windowサイズ(bytes)]) ip route [add chg repl del] window [Windowサイズ(bytes)] TCPにおけるwindowサイズを指定する。windowsサイズはTCPコネクションにおける最大連続転送サイズである。単位はバイト。

以上。こうしてみると、iproute2で全て1対1に対応している訳ではないようだ。