GNU/Linux >> Linux の 問題 >  >> Linux

Linuxipコマンドと例

ip コマンドは、Linuxシステム管理者が知っておくべきネットワークインターフェイスを構成するための強力なツールです。これは、インターフェイスの起動または停止、アドレスとルートの割り当てと削除、ARPキャッシュの管理などに使用されます。

この記事では、実際の例と最も一般的なオプションの詳細な説明を通じて、ipコマンドの使用方法を説明します。

ipコマンドの使用方法#

ip ユーティリティは、すべての最新のLinuxディストリビューションにインストールされているiproute2パッケージの一部です。

ipの構文 コマンドは次のとおりです:

ip [ OPTIONS ] OBJECT { COMMAND | help }

OBJECTは、管理するオブジェクトタイプです。最も頻繁に使用されるオブジェクト(またはサブコマンド)は次のとおりです。

  • linkl )-ネットワークインターフェイスを表示および変更します。
  • addressa )-IPアドレスを表示および変更します。
  • router )-ルーティングテーブルを表示および変更します。
  • neighn )-隣接オブジェクト(ARPテーブル)を表示および操作します。

オブジェクトは、完全な形式または省略形(短い)形式で記述できます。各オブジェクトのコマンドと引数のリストを表示するには、ip OBJECT helpと入力します。 。

ネットワークインターフェイスを構成するときは、rootまたはsudoprivilegesを持つユーザーとしてコマンドを実行する必要があります。それ以外の場合、コマンドはRTNETLINK answers: Operation not permittedを出力します 。

ipで設定された構成 コマンドは永続的ではありません。システムを再起動すると、すべての変更が失われます。変更を永続的にするには、ディストリビューション固有の構成ファイルを編集するか、起動スクリプトにコマンドを追加する必要があります。

IPアドレスの表示と変更#

addrで操作する場合 コマンドが次の形式をとるオブジェクト:

ip addr [ COMMAND ] ADDRESS dev IFNAME

addrの最も頻繁に使用されるコマンド オブジェクトは次のとおりです:showadd 、およびdel

すべてのIPアドレスに関する情報を表示する#

すべてのネットワークインターフェイスと関連するIPアドレスのリストを表示するには、次のコマンドを入力します。

ip addr show

出力は次のようになります:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0
       valid_lft 2900sec preferred_lft 2900sec
    inet6 fe80::5054:ff:fe8c:6244/64 scope link 
       valid_lft forever preferred_lft forever

showを省略して入力すると、同じ出力が得られます。 コマンドとタイプ:ip addr

IPv4のみを表示したい場合 またはIPv6 IPアドレス、ip -4 addrを使用 またはip -6 addr

単一のネットワークインターフェースに関する情報を表示する#

特定のネットワークインターフェースに関する情報を取得するには、ip addr show devを使用します その後にデバイス名が続きます。たとえば、eth0をクエリするには 、次のように入力します:

ip addr show dev eth0

IPアドレスをインターフェースに割り当てます#

インターフェイスにIPアドレスを割り当てるには、次の構文を使用します。

ip addr add ADDRESS dev IFNAME

IFNAMEの場所 はインターフェース名であり、ADDRESS インターフェイスに割り当てるIPアドレスです。

アドレスを追加するには192.168.121.45 ネットマスク24を使用してデバイスeth0 、次のように入力します:

sudo ip address add 192.168.121.45/24 dev eth0

成功すると、コマンドは出力を表示しません。インターフェースが存在しない場合は、Cannot find device "eth0"が表示されます。 。

同じインターフェースに複数のIPアドレスを割り当てます#

ipを使用 、同じインターフェイスに複数のアドレスを割り当てることができます。例:

sudo ip address add 192.168.121.241/24 dev eth0sudo ip address add 192.168.121.45/24 dev eth0

IPが割り当てられていることを確認するには、タイプip -4 addr show dev eth0 またはip -4 a show dev eth0

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0
       valid_lft 3515sec preferred_lft 3515sec
    inet 192.168.121.45/24 scope global secondary eth0
       valid_lft forever preferred_lft forever

インターフェースからIPアドレスを削除/削除します#

インターフェイスからIPアドレスを削除するための構文は次のとおりです。

ip addr dev ADDRESS dev IFNAME

IFNAMEはインターフェース名であり、ADDRESSはインターフェースから削除するIPアドレスです。

アドレス192.168.121.45/24を削除するには デバイスeth0タイプから:

sudo ip address del 192.168.121.45/24 dev eth0

ネットワークインターフェイスの表示と変更#

ネットワークインターフェースの状態を管理および表示するには、linkを使用します オブジェクト。

linkを使用する場合 オブジェクト、最も一般的に使用されるコマンドは次のとおりです。showsetadd 、およびdel

ネットワークインターフェースに関する情報を表示する#

すべてのネットワークインターフェイスのリストを表示するには、次のコマンドを入力します。

ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    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 fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff

ip addr showとは異なり 、ip link show デバイスに関連付けられているIPアドレスに関する情報は印刷されません。

特定のネットワークインターフェースに関する情報を取得するには、ip link show devを使用します その後にデバイス名が続きます。たとえば、eth0をクエリするには 次のように入力します:

ip link show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
インターフェースのステータスをUP/DOWNに変更します#

インターフェースを上下させるには、ip link set devを使用します その後にデバイス名と目的の状態が続きます:

ip link set dev {DEVICE} {up|down}

たとえば、インターフェースeth0を導入するには オンラインでは、次のように入力します:

ip link set eth0 up

オフラインの場合は持参する

ip link set eth0 down

ルーティングテーブルの表示と変更#

カーネルルーティングテーブルを割り当て、削除、および表示するには、routeを使用します 物体。ルートオブジェクトを操作するときに最も一般的に使用されるコマンドは次のとおりです。listadd 、およびdel

ルーティングテーブル番号を表示する#

カーネルルートエントリのリストを取得するには、次のいずれかのコマンドを使用します。

ip route
ip route list
ip route list SELECTOR

SELECTORなしで使用した場合 このコマンドは、カーネル内のすべてのルートエントリを一覧表示します。

ip route list
default via 192.168.121.1 dev eth0 proto dhcp src 192.168.121.241 metric 100 
192.168.121.0/24 dev eth0 proto kernel scope link src 192.168.121.241 
192.168.121.1 dev eth0 proto dhcp scope link src 192.168.121.241 metric 100 

特定のネットワークのルーティングのみを表示するには、たとえば、172.17.0.0/16 次のように入力します:

ip r list 172.17.0.0/16
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 

新しいルートを追加する#

ルーティングテーブルに新しいエントリを追加するには、route addを使用します コマンドの後にネットワーク名またはデバイス名が続きます。

192.168.121.1のゲートウェイを経由して192.168.121.0/24へのルートを追加します

ip route add 192.168.121.0/24 via 192.168.121.1

デバイスeth0で到達できる192.168.121.0/24へのルートを追加します。

ip route add 192.168.121.0/24 dev eth0

デフォルトルートを追加するには、キーワードdefaultを使用します 。次のコマンドは、ローカルゲートウェイ192.168.121.1を介したデフォルトルートを追加します デバイスeth0で到達できます 。

ip route add default via 192.168.121.1 dev eth0

ルートを削除する#

ルーティングテーブルからエントリを削除するには、route addを使用します 指図。ルートを削除するための構文は、追加する場合と同じです。

次のコマンドはデフォルトルートを削除します:

ip route del default

192.168.121.1のゲートウェイ経由で192.168.121.0/24のルートを削除します

ip route add 192.168.121.0/24 via 192.168.121.1

結論#

これで、Linuxのipの使用方法を十分に理解できたはずです。 指図。他のipの詳細については オプションについては、ipコマンドのmanページにアクセスするか、man ipと入力してください。 ターミナルで。

ご質問やご意見がございましたら、お気軽にコメントをお寄せください。


Linux
  1. 例を含むLinuxTeeコマンド

  2. 例を含むLinuxヘッドコマンド

  3. LinuxでのJQコマンドと例

  1. 例を含むwcLinuxコマンド

  2. Linuxのソートコマンドと例

  3. Linuxでのエコーコマンド(例付き)

  1. Linuxでのmanコマンドと例

  2. LinuxでのAWKコマンドと例

  3. LinuxでのCurlコマンドと例