Linux nmcli コマンド

Linux コマンド大全


nmcli とは

nmcli は NetworkManager のコマンドラインツールで、Linux システムでネットワーク接続を設定・管理するために使用します。NetworkManager の公式クライアントであり、GUI よりも強力で柔軟なネットワーク管理機能を提供します。

nmcli の主な特徴

  • 全機能サポート:NetworkManager のほぼすべての機能を網羅
  • スクリプトに優しい:自動化スクリプトやリモート管理に最適
  • 依存関係なし:GUI 不要、純粋なコマンドライン操作
  • リアルタイムフィードバック:コマンド実行結果を即座に表示

nmcli 基本構文

nmcli の基本コマンド形式は次のとおりです:

nmcli [OPTIONS] OBJECT { COMMAND | help }

よく使う OBJECT タイプ

  • general:ネットワーク全体の制御
  • networking:無線ネットワークのオン/オフ
  • radio:ネットワーク接続設定
  • connection:ネットワークデバイス管理
  • device:ネットワークデバイス管理

よく使う OPTIONS オプション

オプション 説明
-t 簡潔な出力(スクリプト処理に適する)
-p 見やすい出力(より読みやすい)
-h ヘルプ情報を表示する
-v バージョン情報を表示する

よく使う nmcli コマンドの詳細

1. ネットワーク状態の確認

NetworkManager 全体の状態を確認:

例

nmcli general status

出力例:

STATE      CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
connected  full          enabled  enabled  enabled  enabled

2. ネットワーク接続の管理

すべてのネットワーク接続を一覧表示:

例

nmcli connection show

接続の有効化/無効化:

例

nmcli connection up 「接続名」
nmcli connection down 「接続名」

3. ネットワークデバイスの管理

すべてのネットワークデバイスを一覧表示:

例

nmcli device status

出力例:

DEVICE  TYPE      STATE      CONNECTION 
eth0    ethernet  已连接    有线连接 1 
wlan0   wifi      已断开    --         
lo      loopback  未托管    --

デバイスの詳細情報を確認:

例

nmcli device show eth0

無線ネットワーク管理

利用可能な WiFi ネットワークのスキャン

例

nmcli device wifi list

WiFi ネットワークへの接続

例

nmcli device wifi connect 「SSID名」 password 「パスワード」

新しい WiFi 接続設定の作成

例

nmcli connection add type wifi ifname wlan0 con-name 「マイWiFi」 ssid 「SSID名」
nmcli connection modify 「マイWiFi」 wifi-sec.key-mgmt wpa-psk
nmcli connection modify 「マイWiFi」 wifi-sec.psk 「パスワード」

有線ネットワーク設定

静的 IP 接続の作成

例

nmcli connection add type ethernet ifname eth0 con-name 「静的接続」 \
ip4 192.168.1.100/24 gw4 192.168.1.1
nmcli connection modify 「静的接続」 ipv4.dns "8.8.8.8,8.8.4.4"

既存の接続を DHCP に変更

例

nmcli connection modify 「接続名」 ipv4.method auto

上級の使い方

VPN 接続の作成

例

nmcli connection add type vpn vpn-type openvpn \
con-name 「マイVPN」 ifname tun0 \
vpn.data "remote=vpn.example.com, username=user, password=pass"

ブリッジの作成

例

nmcli connection add type bridge ifname br0 con-name 「マイブリッジ」
nmcli connection add type bridge-slave ifname eth0 master br0

VLAN の作成

例

nmcli connection add type vlan ifname eth0.100 con-name "VLAN100" \
dev eth0 id 100 ip4 192.168.100.100/24

よくある問題の解決

1. ネットワークデバイスに「未管理」と表示される

例

# NetworkManager.conf を確認する
cat /etc/NetworkManager/NetworkManager.conf

# unmanaged-devices 設定がある場合は、関連する行をコメントアウトする
# その後、NetworkManager を再起動する
systemctl restart NetworkManager

2. 接続パスワードを忘れた場合

例

nmcli connection show 「接続名」 | grep psk

3. ネットワーク設定のリセット

例

nmcli connection reload

実践演習

  1. nmcli を使用して自分の WiFi ネットワークに接続する
  2. 静的 IP の有線接続を作成する
  3. 利用可能なすべての WiFi ネットワークをスキャンして一覧表示する
  4. 現在アクティブな接続の詳細情報を確認する

まとめ

nmcli は Linux システムのネットワーク管理における強力なツールです。この記事の学習を通じて、次のことができるようになります:

  • nmcli の基本概念と構文構造を理解する
  • nmcli を使用して有線および無線ネットワーク接続を管理する
  • 静的 IP と DHCP 接続を設定する
  • よくあるネットワーク接続の問題に対処する

nmcli を習得することで、GUI のないサーバー環境でも効率的にネットワークを管理できます。これは Linux システム管理者にとって重要なスキルの一つです。

Linux コマンド大全

その他の拡張