Linuxネットワーク管理の強い味方!nmcliコマンドの使い方を徹底解説

Linux環境でネットワークの設定や接続を管理する際、GUIがないサーバー環境ではコマンドラインの操作が不可欠です。そんなときに役立つのが「nmcli」コマンドです。
nmcliはNetworkManagerを操作するためのCLI(コマンドラインインターフェース)ツールで、接続の一覧表示、IPアドレス設定、Wi-Fi接続、VPN管理など、ネットワークに関する幅広い操作が可能です。
この記事では、nmcliの基本から応用まで、実用的な使い方をわかりやすく解説していきます。ネットワーク管理を効率化したい方、Linux初心者から中級者まで、必見の内容です。


nmcliとは何か?

nmcliは「NetworkManager Command Line Interface」の略で、Red Hat系ディストリビューション(例:RHEL、CentOS、Fedora)を中心に、多くのLinuxディストリビューションで使われています。

NetworkManagerは、Linuxにおけるネットワーク設定を一元的に管理するデーモンです。GUIのツール(たとえばnmtuiやGNOMEのネットワーク設定)と連携して動作しており、nmcliはそのCLI版です。

nmcliを使うことで、以下のような操作が可能です。

  • ネットワーク接続の確認
  • IPアドレスやDNSの設定変更
  • Wi-Fiネットワークへの接続
  • VPNの設定・接続
  • ネットワークの有効化・無効化 など

ネットワークの状態を確認する

まずはネットワークの基本的な状態を確認してみましょう。

デバイス一覧を表示

nmcli device

このコマンドで、ネットワークデバイスの一覧が確認できます。出力例は以下の通りです:

DEVICE  TYPE      STATE      CONNECTION         
eth0 ethernet connected Wired connection 1
wlan0 wifi disconnected --
lo loopback unmanaged --

ここでSTATEがconnectedであれば、ネットワークに接続中ということになります。

接続情報の表示

nmcli connection show

これは現在保存されている接続プロファイルの一覧を表示します。各プロファイルには名前がついており、それを使って設定や削除ができます。


有線接続の設定と管理

有線接続は多くのサーバー環境で使用されます。nmcliを使って静的IPアドレスの設定やプロファイルの管理が可能です。

静的IPの設定方法

nmcli connection modify "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns 8.8.8.8
nmcli connection up "Wired connection 1"

これにより、Wired connection 1というプロファイルに対して、IPアドレス・ゲートウェイ・DNSを手動で設定し、接続を再起動しています。

DHCPに戻す場合

nmcli connection modify "Wired connection 1" ipv4.method auto
nmcli connection up "Wired connection 1"

Wi-Fiに接続する

ラップトップや一部のサーバーでWi-Fiを使いたい場合も、nmcliで簡単に接続できます。

使用可能なWi-Fiネットワークを表示

nmcli device wifi list

ここでSSID一覧が表示されます。

Wi-Fiに接続する

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

接続が成功すると、接続プロファイルが自動で作成されます。


ネットワーク接続の有効化・無効化

特定のネットワーク接続やデバイスを無効化・有効化することも可能です。

デバイスを無効化

nmcli device disconnect eth0

デバイスを有効化

nmcli device connect eth0

または、NetworkManager自体を制御することもできます。

nmcli networking off
nmcli networking on

新しい接続プロファイルの作成

手動で新しい接続を作成することも可能です。たとえば、新しい有線接続で静的IPを設定する場合:

nmcli connection add type ethernet ifname eth0 con-name my-static-eth ip4 192.168.1.200/24 gw4 192.168.1.1

作成後は以下のようにして有効化できます。

nmcli connection up my-static-eth

接続プロファイルの削除

不要な接続プロファイルを削除したいときには次のようにします。

nmcli connection delete "接続名"

接続名は nmcli connection show で確認した名前です。


スクリプトでの自動化に便利

nmcliはスクリプトからの実行にも向いています。たとえば、起動時に特定のIP設定を行いたい、VPNを自動接続したいといった場合にも活用できます。

標準出力が整っているため、grepやawkなど他のコマンドとの連携もしやすく、シェルスクリプトとの相性が抜群です。


エラーが出たときの対処法

nmcliを使っていて「接続できない」「反映されない」などのトラブルが起きた場合には以下の点を確認しましょう。

  • NetworkManagerが起動しているか: bashコピーする編集するsystemctl status NetworkManager
  • 設定の正確性(スペルミスやネットワーク範囲など)
  • nmcli general logging level debug でログ出力を確認

また、どうしても接続できない場合には、ifconfigip コマンドを併用してネットワーク状況をチェックするのも有効です。


まとめ

nmcliはLinux環境でネットワークを効率よく管理するための非常に強力なツールです。GUIが使えないサーバー環境やリモート環境でも、柔軟にネットワーク接続を操作できる点が最大のメリットです。

本記事で紹介した内容をベースに、自分の環境に合わせてさらに細かい設定を加えていくことで、より安全で安定したネットワーク管理が実現できるはずです。Linuxのネットワーク操作を深めたい方は、ぜひnmcliを積極的に使いこなしてみてください。

タイトルとURLをコピーしました