こんにちは、こえじまです。
メインPCをLinuxからMacに変えた時、ipコマンドが使えないことに気づきました。
UbuntuやLinux系は基本的に最初からiptablesがインストールされているのでipコマンドが使えるのですが、Macでは入っていないようです。
インストール方法
HomeBrewが入っている場合
brew tap brona/iproute2mac brew install iproute2mac
HomeBrewが入っていない場合
curl --remote-name -L https://github.com/brona/iproute2mac/raw/master/src/ip.py chmod +x ip.py mv ip.py /usr/local/bin/ip
確認
インストール出来ているのかの確認をするためにipと打ってみましょう。
% ip Usage: ip [ OPTIONS ] OBJECT { COMMAND | help } ip -V where OBJECT := { link | addr | route | neigh } OPTIONS := { -4 | -6 } iproute2mac Homepage: https://github.com/brona/iproute2mac This is CLI wrapper for basic network utilities on Mac OS X inspired with iproute2 on Linux systems. Provided functionality is limited and command output is not fully compatible with iproute2. For advanced usage use netstat, ifconfig, ndp, arp, route and networksetup directly.
以上のように表示されれば成功です。
Macでそれぞれのインターフェースに何が当たっているか知る方法
en0, en1って何?
LinuxでのIPアドレスに少しでも慣れている人だとeth0がethernetだから有線でwlan0がWifiなんだろうという予想が出来るのですが、Macではこれらが何故かen0やen1になっています。それぞれのインターフェースに何が当たっているかのコマンドが有ったので紹介します。
% networksetup -listnetworkserviceorder An asterisk (*) denotes that a network service is disabled. (1) Bluetooth DUN (Hardware Port: Bluetooth DUN, Device: Bluetooth-Modem) (2) FT232R USB UART (Hardware Port: FT232R USB UART, Device: usbserial-AJ035H88) (3) FT232R USB UART 2 (Hardware Port: FT232R USB UART, Device: usbserial-AJ035GSQ) (4) USB Ethernet (Hardware Port: USB Ethernet, Device: en4) (5) Wi-Fi (Hardware Port: Wi-Fi, Device: en0) (6) ZTE Technologies MSM (Hardware Port: ZTE Technologies MSM, Device: en5) (7) Bluetooth PAN (Hardware Port: Bluetooth PAN, Device: en3) (8) Thunderbolt Bridge (Hardware Port: Thunderbolt Bridge, Device: bridge0)
これとip addrの対比をすることでどれがどのインターフェースに当たっているかを知ることが出来ます。
ipコマンドの簡単な使い方
これだけでは少し物足りないのでipコマンドの使い方を紹介します。
ip addr
ip addrと入力することでIPアドレスの詳細を知ることが出来ます。ip aと省略することも出来ます。
IPアドレスの追加や削除、変更はこのコマンドから行うことが出来ます。ifconfigと対応しています。
ip route
ip routeと入力することでゲートウェイなどのルーティングの設定を見ることが出来ます。ip rと省略することも出来ます。
ルーティングの追加や削除、変更はこのコマンドから行うことが出来ます。routeと対応しています。
ip list
ip linkと入力することでリンクの状態を確認できます。ip lと省略することも出来ます。
リンクの追加や削除、変更はこのコマンドから行うことが出来ます。ifconfigと対応しています。
ip neigh
ip neighと入力することで隣接している端末の状態を確認できます。ip nと省略することも出来ます。
隣接情報の追加や削除、変更はこのコマンドから行うことが出来ます。arpと対応しています。
参考にしたサイト
brona/iproute2mac – github
ip command in Mac OS X terminal – StackExchange
RHEL7/CentOS7でipコマンドをマスター – めもめも
コメント
[…] このサイトを参考にしてみました。 https://koejima.com/archives/283/ […]
[…] Mac に ip コマンドをインストールする | one more step […]