知っておくとちょっと便利!nmcli コマンドの使い方 ~デバイス編~

今号では、nmcli コマンドの使い方やオプションについてご紹介します!

nmcli コマンドとは

nmcli コマンドは、NetworkManager の機能をコマンドライン上から使用できるコマンドです。
GUI が利用できないサーバーやリモートマシンでよく使用されます。

nmcli を使用することで、各ネットワークインターフェースの状態の確認、接続の作成や削除、
IP アドレスの設定などを実行できます。

なお、nmcli コマンドは非常に多機能であり、多くのサブコマンドとオプションがあります。
そのため、数回に分けて各サブコマンド、オプションについて紹介していきます。

今回の記事では、物理デバイスに関するサブコマンド、オプションをご紹介します。

基本の書式

サブコマンドに “device” もしくは “dev” を指定すると、物理デバイスの情報を表示します。
なお、これはオプションに “status” を指定した時と同じ動作になります。

# nmcli device
DEVICE  TYPE      STATE                   CONNECTION
eth0    ethernet  connected               System eth0
lo      loopback  connected (externally)  lo

nmcli device コマンドのオプション

よく使用されると考えられるオプションを抜粋してご紹介します。

オプションに “show”、その後に対象となるデバイスを指定すると、当該デバイスの
詳細情報を表示します。

# nmcli device show eth0
GENERAL.DEVICE:                         eth0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         06:EC:94:58:92:9D
GENERAL.MTU:                            9001
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     System eth0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/2
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         172.31.7.153/20
IP4.GATEWAY:                            172.31.0.1
IP4.ROUTE[1]:                           dst = 172.31.0.0/20, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 172.31.0.1, mt = 100
IP4.DNS[1]:                             172.31.0.2
IP4.DOMAIN[1]:                          ap-northeast-1.compute.internal
IP6.ADDRESS[1]:                         2406:da14:ac9:2100:8fc0:6d84:a95b:fc9b/128
IP6.ADDRESS[2]:                         fe80::4ec:94ff:fe58:929d/64
IP6.GATEWAY:                            fe80::809:7dff:fec0:1
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024
IP6.ROUTE[2]:                           dst = 2406:da14:ac9:2100::/64, nh = ::, mt = 100
IP6.ROUTE[3]:                           dst = ::/0, nh = fe80::809:7dff:fec0:1, mt = 100
IP6.ROUTE[4]:                           dst = 2406:da14:ac9:2100:8fc0:6d84:a95b:fc9b/128, nh = ::, mt = 100

GENERAL.DEVICE: デバイス名
GENERAL.TYPE: デバイスの種類
GENERAL.HWADDR: MAC アドレス
GENERAL.MTU: 1回に送信できる最大のデータサイズ
GENERAL.STATE: デバイスの状態 (connected は接続済みであることを示す)
GENERAL.CONNECTION: 接続の名前
GENERAL.CON-PATH: NetworkManager 上での接続のパス
WIRED-PROPERTIES.CARRIER: 信号の状態 (on は接続がアクティブであることを示す)
IP4.ADDRESS[1]: IPv4 アドレス、およびサブネットマスク
IP4.GATEWAY: IPv4 のデフォルトゲートウェイ
IP4.ROUTE[1]~[2]: IPv4 のルーティング情報
IP4.DNS[1]: IPv4 の DNS サーバ
IP4.DOMAIN[1]: ドメイン名
IP6.ADDRESS[1]: IPv6 アドレス
IP6.ADDRESS[2]: IPv6 アドレス (ローカルアドレス)
IP6.GATEWAY: IPv6 のデフォルトゲートウェイ
IP6.ROUTE[1]~[4]: IPv6 のルーティング情報

オプションに “connect”、その後に対象となるデバイスを指定すると、当該デバイスに
接続します。

# nmcli device connect eth0
Device 'eth0' successfully activated with '5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03'.

オプションに “disconnect”、その後に対象となるデバイスを指定すると、当該デバイスから
切断します。

# nmcli device disconnect eth0
Device 'eth0' successfully disconnected.

オプションに “modify”、その後に対象となるデバイス、対象となるパラメータを指定すると、
当該パラメータの設定内容を変更できます。
例えば、eth0 の MTU (Maximum Transmission Unit) サイズを変更したい場合、下記の様に実行します。

# nmcli device modify eth0 mtu 5000
Connection successfully reapplied to device 'eth0'.

nmcli device show eth0 コマンドで各パラメータの内容を確認すると、MTU サイズが
上記で変更した 5000 に変更されています。

# nmcli device show eth0
GENERAL.DEVICE:                         eth0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         06:EC:94:58:92:9D
GENERAL.MTU:                            5000
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     System eth0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/4
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         172.31.7.153/20
IP4.GATEWAY:                            172.31.0.1
IP4.ROUTE[1]:                           dst = 172.31.0.0/20, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 172.31.0.1, mt = 100
IP4.DNS[1]:                             172.31.0.2
IP4.DOMAIN[1]:                          ap-northeast-1.compute.internal
IP6.ADDRESS[1]:                         2406:da14:ac9:2100:8fc0:6d84:a95b:fc9b/128
IP6.ADDRESS[2]:                         fe80::4ec:94ff:fe58:929d/64
IP6.GATEWAY:                            fe80::809:7dff:fec0:1
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024
IP6.ROUTE[2]:                           dst = 2406:da14:ac9:2100::/64, nh = ::, mt = 100
IP6.ROUTE[3]:                           dst = ::/0, nh = fe80::809:7dff:fec0:1, mt = 100
IP6.ROUTE[4]:                           dst = 2406:da14:ac9:2100:8fc0:6d84:a95b:fc9b/128, nh = ::, mt = 100

次号は、接続 (コネクション) に関するサブコマンド、オプションをご紹介します。

ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

3人がこの投稿は役に立ったと言っています。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です