nmcli を使用した RHEL/AlmaLinux 8.x でのネットワークアクセスの設定

この付録では、次の項について説明します。

nmcli を使用した RHEL/AlmaLinux 8.x でのネットワークアクセスの設定

NetworkManager コマンドラインツール(nmcli)は、NetworkManager を制御してネットワークを設定するためのコマンドラインの方法を提供します。この項では、nmcli を使用して仮想アプライアンスでネットワークアクセスを設定する方法を学習するのに役立ついくつかの例を挙げて、概要のみを紹介します。

ネットワークインターフェイス構成の従来のアプローチとは異なり、NetworkManager は接続とインターフェイス(デバイスとも呼ばれる)の両方を処理します。接続は IP アドレス、ゲートウェイ、DNS サーバで設定され、インターフェイス(デバイス)に適用されます。

一般的に役立つ 2 つの nmcli コマンドがあります。

  • nmcli d コマンドは、使用可能なすべてのネットワークインターフェイス(デバイス)を一覧表示します。

  • nmcli c コマンドは、使用可能なすべての構成を一覧表示します。

nmcli を使用するようになるにしたがい、上記の 2 つのコマンドを頻繁に使用します。

仮想アプライアンスのインターフェイスの IP アドレスを設定するには、次のステップに従います。通常、これらのコマンドは仮想アプライアンスのコンソールに直接入力します。すでにネットワーク経由で接続している場合(たとえば ssh を使用)、ネットワークインターフェイスの構成を変更すると、プロセスの任意の時点でネットワーク接続が失われる可能性があるため、問題が発生することがあります。

Procedure


Step 1

インターフェイスが nmcli をブロックしていないことを確認します。nmcli d コマンドは、既存のインターフェイスを一覧表示します。設定するインターフェイスが管理対象外としてリストされている場合、NetworkManager はこのインターフェイスの設定を明示的にブロックされています。このブロックを解除するまで、nmcli コマンドはこのインターフェイスに影響を与えません。インターフェイスが管理対象外として記載されている場合を除き、この手順を実行する必要はありません。NetworkManager で管理できるようにするには、次のステップに従います。

  1. ファイル /etc/sysconfig/network-scripts/ifcfg-interface から NM_CONTROLLED-no 行を削除します。ここで、interfacenmcli d コマンドにリストされているインターフェイス名です。この名前のファイルがない場合は、この手順を実行する必要はありません。

  2. 次のコマンドを使用して、構成ファイルを再度読み取るように NetworkManager に指示します。

    nmcli connection reload
    

Note

 
ifcfg ファイルへの手動変更は、nmcli connection reload コマンドが発行されるまで NetworkManager によって通知されません。

Step 2

設定するインターフェイスの現在の構成がないことを確認します。作成した構成をインターフェイスのデフォルトにし、インターフェイスに複数の設定が関連付けられている場合は、システムの再起動時に混乱が生じる可能性があります。nmcli c コマンドは、既存の構成を一覧表示します。既存の構成がある場合は、それらを調べて、設定するインターフェイスに適用されるかどうかを確認します。これを簡単に行う方法は、次のコマンドを使用することです。

nmcli con show config | grep interface

出力が表示された場合は、次のコマンドを使用して構成 config を削除する必要があります。

nmcli con delete config

Note

 

多くの場合、「Wired connection 1」という構成を削除する必要があります。

Step 3

構成を作成し、1 つのコマンドでインターフェイス(デバイス)に関連付けます。このコマンドは、構成を作成してインターフェイスに関連付けるだけで、インターフェイスには適用されません。

nmcli con add type ethernet con-name config ifname interface ip4 ip/netmaskwidth gw4 gateway
ここで、config は構成の名前であり、任意(インターフェイスの名前を含む)です。interface はインターフェイス(デバイス)の名前、ip は IPv4 アドレス、netmaskwidth はネットワークマスクの幅、gateway は IPv4 ゲートウェイアドレスです。
例(1 行ですべて入力):
nmcli con add type ethernet con-name my-office ifname ens160 ip4 10.10.24.25/24 gw4 10.10.20.174

Step 4

インターフェイス(デバイス)の構成に DNS サーバを追加します。

nmcli con mod config ipv4.dns dnsip
dnsip は DNS サーバの IPv4 アドレスで、config は構成の名前です。
次に例を示します。
nmcli con mod my-office ipv4.dns 72.63.128.140
次の 2 つの DNS アドレスを追加できます。
nmcli con mod my-office ipv4.dns "72.63.128.140 72.63.111.120"

Note

 
これにより、以前に設定された DNS サーバが置き換えられます。以前に設定された DNS エントリに追加するには、次に示すように ipv4.dns の前に + を付加します。
nmcli con mod test-lab +ipv4.dns "72.63.128.140 72.63.111.120"

Step 5

インターフェイスに構成を適用します。インターフェイスがまだ実行されていない場合は、インターフェイスがアップします。

nmcli con up config

ここで、config は構成の名前です。

Step 6

接続に関する情報を調べるには、次のコマンドを使用します。

nmcli -p con show config
これは通常、コンソール画面をスクロールして、最初の部分を読み取れないようにします。前後に移動して出力を簡単に確認できるようにするには、次のコマンドを使用します。
nmcli -p con show config | less
これから、構成全体を確認できます。次のコマンドを使用して、構成の内容を変更できます。
nmcli con mod config something.other new-value
次に例を示します。
nmcli con mod my-office wifi-min.key-cntl wpa-psk

Step 7

set-hostname コマンドを使用して、システムのホスト名を設定します。

hostnamectl set-hostname hostname.domain

Note

 
これは、ローカルをリージョナルに登録する前に行う必要があります。それ以外の場合は、「localhost」がすでに存在するというエラーが発生します。

ここで、hostname は使用するホスト名、domain はドメイン名で .com や .org などで終わります。これは、DNS ルックアップのデフォルトとして使用されるため、ドメイン名を(.com、.org、または適切な末尾を加えて)含めることが重要です。

次に例を示します。
hostnamectl set-hostname my-server.gooddomain.com

Step 8

ネットワークを設定した後、Cisco Prime Network Registrar を再起動して、インターフェイスが Cisco Prime Network Registrar によって正しく検出されるようにする必要があります。再起動するには、次のコマンドを使用します。

  • ローカルクラスタの場合:

    # systemctl restart nwreglocal

  • リージョンクラスタの場合:

    # systemctl restart nwregregional

再起動に失敗すると、リージョナルでの登録が誤って設定されます。


nmcli の使用方法を完全に理解するには、nmcli と AlmaLinux 8.x のオンラインリソースでインターネットを検索してください。