66
nmcliとターミナル経由でLinuxネットワーク接続を管理する方法

私たちはグラフィカルユーザーインターフェース(GUI)を当たり前のものと考えています。GUIは大抵「ただ動く」だけで、ほとんど何も考えずに仕事を進めることができます。LinuxのネットワークGUIは、まさにこのカテゴリーに属しています。Linuxでネットワークを構築するのが面倒だった時代、私たちはまさにその時代を生きていました。Linuxでモデム経由でインターネットに接続するためにPPPを設定したことを今でも覚えています!

何か問題が発生した場合、どうなるでしょうか?GUIが機能しなくなったり、Linuxターミナルだけになったりするのでしょうか?GUIのない​​サーバーにLinuxをインストールしているのかもしれません。このような状況では、nmcliコマンドを使用して接続を確立、切断、および構成する方法を理解する必要があります。

インターフェースの操作

インターフェースとは、接続ポイントのことです。イーサネットのように物理的なインターフェースの場合もあれば、Wi-Fiのように無線ベースのインターフェースの場合もあります。各インターフェースには、イーサネットかWi-Fiかを識別するための固有の名前が付けられています。以前は、これらの名前は一般的なもので、最初のイーサネット接続はeth0、Wi-Fiはwlan0といったものでした。近年、これらのインターフェース名はより具体的なものへと変更されています。

最初のタスクは、利用可能なインターフェースを識別することです。

1.ターミナルを開き、利用可能な接続/インターフェースをすべて一覧表示します。nmcliコマンドは単独でも使用できますが、-pオプションを指定すると、より見やすい出力が生成されます。

nmcli -p

nmcli

(画像提供:Future)

2. 前のコマンドの出力には、すべての接続/インターフェースが表示されます。アクティブなインターフェース接続のみを取得するには、このコマンドを使用します。ここでも、-p オプションを使用すると、出力がより明確に表示されます。

Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。

nmcli -p dev status

nmcli

(画像提供:Future)

3.特定の接続の詳細を取得するには、このコマンドを使用します。接続名は、前のコマンドの出力と一致するように変更してください。出力は大量にあるため、grepを使用してコマンドの出力をパイプ処理することで、特定の詳細のみを取得できます。

nmcli -p con show <CONNECTION NAME>

nmcli

(画像提供:Future)

4.このコマンドを使用して、接続のデフォルトゲートウェイを確認します。デフォルトゲートウェイは通常、インターネットへの接続を可能にするハードウェアである家庭用ルーターです。出力には、IPv4およびIPv6ゲートウェイの詳細が表示されます。

nmcli -p con show <CONNECTION NAME> | grep GATEWAY

nmcli

(画像提供:Future)

5.接続を切断(無効化/切断)するには、このコマンドを使用します。これにより、Linuxデバイスがネットワークから切断されます。接続名を実際の接続名に置き換えてください。

nmcli -p con down <CONNECTION NAME>

nmcli

(画像提供:Future)

6.接続を一覧表示すると、デバイスがネットワークに接続されていないことが示されます。

nmcli -p dev status

nmcli

(画像提供:Future)

7.このコマンドで接続を確立します。接続名を変更することを忘れないでください。

nmcli -p con up <CONNECTION NAME>

nmcli

(画像提供:Future)

静的IPアドレスの設定

多くの人にとって、ルーターから動的に割り当てられたIPアドレスがあれば、インターネットに接続できます。では、サーバーを作成したい場合はどうすればよいでしょうか?接続デバイスがサーバーを見つけられるように、サーバーには静的IPアドレスが必要です。

特定の IP アドレスを持つように、nmcli を使用して接続を変更します。

ここでは Ubuntu LTS を使用していますが、この手順は Raspberry Pi OS を実行している Raspberry Pi、またはその他の Debian / Ubuntu ベースのマシンでも機能します。

1.ターミナルを開き、nmcli を使用して接続の詳細を設定します。接続名は上記で使用したとおりです。必要なIPアドレスは必要に応じて設定しますが、デバイスが提供する範囲内である必要があります。ゲートウェイは通常、ルーターのIPアドレスです。DNSサーバーはルーターのIPアドレスでも構いません。

nmcli connection modify "CONNECTION NAME" \
ipv4.addresses REQUIRED IP ADDRESS/24 \
ipv4.gateway YOUR GATEWAY \
ipv4.dns YOUR DNS SERVER \
ipv4.method manual

2.接続を切断します。接続名を忘れずに入力してください。

nmcli -p con down <CONNECTION NAME>

3.接続を再開します。接続名を忘れずに入力してください。

nmcli -p con up <CONNECTION NAME>

4.接続が正しく行われていることを確認します。「状態」列に「接続済み」と表示されていることを確認してください。

nmcli -p dev status

nmcli

(画像提供:Future)

6. IPアドレスを確認します。connection showコマンドを使用して、出力をgrepにパイプし、「ipv4.addresses」を検索します。

nmcli -p con show <<CONNECTION>> | grep ipv4.addresses

nmcli

(画像提供:Future)

7.最後に、IPアドレスにpingを実行し、サーバーが外部にアクセスできることを確認します。数ミリ秒以内にpingが送信されるのを確認できるはずです。問題がある場合は、コマンドがエラーになります。Ctrl + Cを押してpingコマンドを終了します。通常はGoogleのDNSサーバーのIPアドレス8.8.8.8を使用しますが、CloudFlareの1.1.1.1やOpenDNSの208.67.222.123も使用できます。または、google.comなどのURLにpingを実行することもできます。

ping 8.8.8.8

nmcli

(画像提供:Future)

その他のLinuxチュートリアル

🐧 LinuxとWindows 11をデュアルブートする方法

🐧 Linux ブート用のカスタム Grub メニュー背景を作成する方法

🐧 Nohup を使って Linux スクリプトを無人実行する方法

🐧 Linuxで大きなファイルを見つける方法

🐧 Linuxでドライブをマウントおよびアンマウントする方法

🐧 Linuxでユーザーを管理する方法