このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
ネットワークの設定:nmcliコマンド
nmcliコマンドの概要
nmcli
コマンドは、NetworkManagerをコマンドラインから操作するためのツールです。nmcli
では、オブジェクトと呼ばれる操作対象を指定し、そのオブジェクトに対してコマンドを実行します。オブジェクトには、NetworkManagerが管理するさまざまなネットワーク設定や状態を操作するためのカテゴリーが含まれており、全部で8つのオブジェクトがあります。
nmcliコマンドのオブジェクト
以下に、nmcli
コマンドのオブジェクトとそのコマンド例、および簡単な説明を表にまとめます。
オブジェクト | コマンド例 | 説明 |
---|---|---|
help | nmcli help | nmcli の使い方やオプションについてのヘルプを表示します。 |
general | nmcli general status | NetworkManagerの全般的な状態を確認します。 |
nmcli general hostname | 現在設定されているホスト名を表示します。 | |
networking | nmcli networking [on|off] | ネットワークを有効/無効にします。 |
radio | nmcli radio | Wi-FiおよびBluetoothのラジオ状態を表示します。 |
nmcli radio wifi | Wi-Fiの状態を表示します(有効/無効)。 | |
nmcli radio wifi [on|off] | Wi-Fiを有効/無効にします。 | |
connection | nmcli connection show | 接続の一覧を表示します。 |
nmcli connection modify NIC名 パラメータ | 指定されたネットワークインターフェースの設定を変更します。 | |
device | nmcli device status | ネットワークデバイスの一覧と状態を表示します。 |
nmcli device modify NIC名 パラメータ | 指定されたネットワークデバイスの設定を変更します。 | |
nmcli device wifi list | 周辺のWi-Fiネットワークの一覧を表示します。 | |
agent | nmcli agent | NetworkManagerの動作エージェントを制御します。 |
monitor | nmcli monitor | NetworkManagerの状態変化をリアルタイムで監視します。 |
コマンドの使用例と解説
以下に、nmcli
コマンドの使用例を示し、それぞれのコマンドについて解説します。
1.ネットワークの状態を確認する。
・「nmcli general status
」コマンドを実行します。
このコマンドは、NetworkManagerの全般的な状態を確認します。具体的には、NetworkManagerが動作しているかどうか、ネットワークが有効かどうか、接続されているネットワークの種類(有線、無線、VPNなど)を表示します。
user01@ubuntu-vm:~$ nmcli general status
STATE CONNECTIVITY WIFI-HW WIFI WWAN-HW WWAN
接続済み 完全 有効 有効 有効 有効
2.ホスト名を表示する。
・「nmcli general hostname
」コマンドを実行します。
このコマンドは、現在設定されているホスト名を表示します。システムのホスト名はネットワークでデバイスを識別するために重要です。
user01@ubuntu-vm:~$ nmcli general hostname
ubuntu-vm
3.ネットワークを無効にする。
・「nmcli networking off
」コマンドを実行します。
このコマンドは、NetworkManagerを通じてシステムのネットワーク機能を無効にします。on
オプションを使用することで、ネットワークを有効にすることもできます。
user01@ubuntu-vm:~$ nmcli networking off
4.ネットワークを有効にする。
・「nmcli networking on
」コマンドを実行します。
このコマンドは、NetworkManagerを通じてシステムのネットワーク機能を有効にします。off
オプションを使用することで、ネットワークを無効にすることもできます。
user01@ubuntu-vm:~$ nmcli networking on
5.Wi-Fi接続の状態を確認する。
・「nmcli radio wifi
」コマンドを実行します。
このコマンドは、Wi-Fi接続の状態(有効/無効)を表示します。Wi-Fiを有効/無効にするには、nmcli radio wifi on
またはnmcli radio wifi off
を使用します。
user01@ubuntu-vm:~$ nmcli radio wifi
enabled
6.接続の一覧を表示する。
・「nmcli connection show
」コマンドを実行します。
このコマンドは、現在NetworkManagerが管理しているすべてのネットワーク接続を一覧表示します。接続名、UUID、タイプ(有線、無線など)、デバイス名などが表示されます。
※注意:[NIC名]は、NICにつけられる識別名を表します。VirtualBoxでは、1つ目のNICにはenp0s3が設定されます。一般的なディストリビューションでは、eth0が設定されます。
user01@ubuntu-vm:~$ nmcli connection show
NAME UUID TYPE DEVICE
有線接続 1 0c65a36c-ab29-3b81-b6f7-8996af420cc2 ethernet enp0s3
7.周辺のWi-Fiネットワークを一覧表示する。
・「nmcli device wifi list
」コマンドを実行します。
このコマンドは、現在検出されている周辺のWi-Fiネットワークの一覧を表示します。SSIDや信号強度、セキュリティ情報などが確認できます。ここでは、無線接続がないため何も表示されていませんが、無線接続があれば表示されます。
user01@ubuntu-vm:~$ nmcli device wifi list
8.NetworkManagerの状態をリアルタイムで監視する。
・「nmcli monitor
」コマンドを実行します。
このコマンドは、NetworkManagerの状態変化をリアルタイムで監視します。例えば、ネットワーク接続が確立されたり、切断されたりした際に、その変化をすぐに確認できます。
user01@ubuntu-vm:~$ nmcli monitor
・ターミナル(端末)をもう一つ、起動します。
新しく起動したターミナル(端末)で以下のコマンドを実行します。
- 「
nmcli networking off
」コマンド - 「
nmcli networking on
」コマンド
user01@ubuntu-vm:~$ nmcli networking off
user01@ubuntu-vm:~$ nmcli networking on
・もとのターミナル(端末)を確認します。
user01@ubuntu-vm:~$ nmcli monitor
Networkmanager の状態は '休止中' です
enp0s3: 停止中
enp0s3: 切断済み
プライマリー接続がありません
enp0s3: 管理無し
接続性は '制限付き' です
接続性は 'なし' です
enp0s3: 利用不可
Networkmanager の状態は '切断済み' です
enp0s3: 切断済み
enp0s3: 接続 '有線接続 1' を使用中
enp0s3: 接続中 (準備)
Networkmanager の状態は '接続中' です
enp0s3: 接続中 (設定中)
enp0s3: 接続中 (IP 設定を取得中)
enp0s3: 接続中 (IP の接続性チェック)
'有線接続 1' はプライマリー接続です
enp0s3: 接続中 (セカンダリー接続を開始)
enp0s3: 接続済み
Networkmanager の状態は '接続完了 (サイトのみ)' です
接続性は '制限付き' です
Networkmanager の状態は '接続済み' です
接続性は '完全' です
・「Ctrl」+「C」キーを押します。
モニターを終了させます。
^Cエラー: nmcli がシグナル 割り込み (2) で終了しました
(null): 不明
(null): 不明
user01@ubuntu-vm:~$
まとめ
nmcli
コマンドは、NetworkManagerを効率的に管理するための強力なツールであり、コマンドラインからさまざまなネットワーク設定を操作することができます。オブジェクトごとに異なるコマンドを使用することで、ネットワークの状態確認や設定変更を柔軟に行うことが可能です。Linuxシステムにおいて、nmcli
コマンドを習得することは、ネットワーク管理の効率を高めるために非常に重要です。