English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Linux ipコマンド

Linux コマンド全書

Linux ipコマンドと ifconfig コマンドは類似していますが、ifconfigコマンドよりも強力で、主にネットワークデバイスの表示や設定に使用されます。

ipコマンドはLinuxの強化版のネットワーク設定ツールで、ifconfigコマンドに代わります。

语法

ip [ OPTIONS ] OBJECT { COMMAND | help }

OBJECTは常用オブジェクトで、以下の値のいずれかです:

 
OBJECT={ link | addr | addrlabel | route | rule | neigh | ntable | tunnel | maddr | mroute | mrule | monitor | xfrm | token }

常用オブジェクトの値の意味は以下の通りです:

  • link:ネットワークデバイス
  • address:デバイス上のプロトコル(IPまたはIPv6)アドレス
  • addrlabel:プロトコルアドレス選択のタグ設定
  • route:ルーティングテーブルのエントリ
  • rule:ルーティングポリシーデータベースのルール

OPTIONSは常用オプションで、以下の値のいずれかです:

OPTIONS={ -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] | -h[uman-readable] | -iec | -f[amily] { inet | inet6 | ipx | dnet | link } | -o[neline] | -t[imestamp] | -b[atch] [filename] | -rc[vbuf] [size] }

常用オプションの値の意味は以下の通りです:

  • -V:コマンドのバージョン情報を表示します;
  • -s:より詳細な情報を出力します;
  • -f:指定されたプロトコル族を強制的に使用します;
  • -4:使用するネットワークレイヤープロトコルをIPv指定します4プロトコル;
  • -6:使用するネットワークレイヤープロトコルをIPv指定します6プロトコル;
  • -0:出力情報は、1行に1件の記録を出力し、内容が多い場合でも改行せずに表示します;
  • -r:ホストを表示する際に、IPアドレスではなくドメイン名を使用します。
  • help は、このコマンドのヘルプ情報です。

    オンラインサンプル

    ip link show                     # ネットワークインターフェース情報を表示
    ip link set eth0 up             # ネットワークインターフェースをオンに
    ip link set eth0 down            # ネットワークインターフェースをオフに
    ip link set eth0 promisc on      # ネットワークインターフェースの混信用モードをオンに
    ip link set eth0 promisc offi    # ネットワークインターフェースの混信用モードをオフに
    ip link set eth0 txqueuelen 1200 # ネットワークインターフェースのキュー長を設定
    ip link set eth0 mtu 1400        # ネットワークインターフェースの最大トランスポートユニットを設定
    ip addr show     # ネットワークインターフェースのIP情報を表示
    ip addr add 192.168.0.1/24 dev eth0 # eth0のネットワークインターフェースのIPアドレスを設定192.168.0.1
    ip addr del 192.168.0.1/24 dev eth0 # eth0のネットワークインターフェースのIPアドレスを削除
    ip route show # システムルートを表示
    ip route add default via 192.168.1.254   # システムのデフォルトルートを設定
    ip route list                 # ルート情報を表示
    ip route add 192.168.4.0/24  via  192.168.0.254 dev eth0 # 設定192.168.4.0のネットワークセグメントのゲートウェイは192.168.0.254,データがeth0インターフェースを通じて行く
    ip route add default via  192.168.0.254  dev eth0        # デフォルトゲートウェイを設定192.168.0.254
    ip route del 192.168.4.0/24   # 削除192.168.4.0のネットワークセグメントのゲートウェイ
    ip route del default          # デフォルトルートを削除
    ip route delete 192.168.1.0/24 dev eth0 # ルートを削除

    ipコマンドを使用してネットワークデバイスの運行状態を表示:

    [root@localhost ~]# ip link list
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
        link/ether 00:16:3e:00:1e:51 brd ff:ff:ff:ff:ff:ff
    3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
        link/ether 00:16:3e:00:1e:52 brd ff:ff:ff:ff:ff:ff

    表示より詳細なデバイス情報を表示:

    [root@localhost ~]# ip -s link list
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        RX: bytes  packets  errors  dropped overrun mcast   
        5082831    56145    0       0       0       0      
        TX: bytes  packets  errors  dropped carrier collsns
        5082831    56145    0       0       0       0      
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
        link/ether 00:16:3e:00:1e:51 brd ff:ff:ff:ff:ff:ff
        RX: bytes  packets  errors  dropped overrun mcast   
        3641655380 62027099 0       0       0       0      
        TX: bytes  packets  errors  dropped carrier collsns
        6155236    89160    0       0       0       0      
    3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
        link/ether 00:16:3e:00:1e:52 brd ff:ff:ff:ff:ff:ff
        RX: bytes  packets  errors  dropped overrun mcast   
        2562136822 488237847 0       0       0       0      
        TX: bytes  packets  errors  dropped carrier collsns
        3486617396 9691081  0       0       0       0    
    

    コアルートテーブルを表示:

    [root@localhost ~]# ip route list 
    112.124.12.0/22 dev eth1  proto kernel  scope link  src 112.124.15.130
    10.160.0.0/20 dev eth0  proto kernel  scope link  src 10.160.7.81
    192.168.0.0/16 via 10.160.15.247 dev eth0
    172.16.0.0/12 via 10.160.15.247 dev eth0
    10.0.0.0/8 via 10.160.15.247 dev eth0
    default via 112.124.15.247 dev eth1

    隣接テーブルを表示:

    [root@localhost ~]# ip neigh list
    112.124.15.247 dev eth1 lladdr 00:00:0c:9f:f3:88 REACHABLE
    10.160.15.247 dev eth0 lladdr 00:00:0c:9f:f2:c0 STALE

    ホストのすべてのネットワークインターフェースを取得する:

    ip link | grep -E '^[0-9]' | awk -F: '{print $2

    Linux コマンド全書