RHEL CentOS 8 でネットワーク ブリッジを作成する 3 つの方法
ネットワーク ブリッジは、複数のネットワークを接続して、リソースの共有やデバイス間の通信に使用できる大規模なネットワークを作成できるようにするソフトウェア コンポーネントです。 Red Hat Enterprise Linux (RHEL) および CentOS 8 では、ニーズや好みに応じて、いくつかの方法でネットワーク ブリッジングを実現できます。
この記事では、例と詳しい手順を使用して、RHEL/CentOS 8 でネットワーク ブリッジを作成する 3 つの方法を検討します。仮想マシンを接続する必要がある場合でも、物理デバイスを接続する必要がある場合でも、これらの方法は、要件を満たすブリッジをセットアップするのに役立ちます。
方法 1: nmcli コマンド ライン ツールを使用する
nmcli コマンド ライン ツールは、RHEL/CentOS 8 でネットワーク接続を管理するための強力なユーティリティです。これを使用して、ネットワーク ブリッジを含むネットワーク接続を作成、変更、削除できます。 nmcli を使用してネットワークブリッジを作成する方法は次のとおりです-
ステップ 1 - ネットワーク インターフェースを確認する
ネットワーク ブリッジを作成する前に、ブリッジするネットワーク インターフェイスを特定する必要があります。次のコマンドを使用して、システム上で利用可能なすべてのネットワークインターフェイスを一覧表示できます-
nmcli device status
このコマンドは、ネットワーク インターフェイスのリストと、その接続ステータスおよびデバイス タイプを表示します。
ステップ 2 - 新しいブリッジ接続を作成する
新しいブリッジ接続を作成するには、次のコマンドを使用します-
sudo nmcli connection add type bridge ifname br0
このコマンドは、br0 という名前の新しいブリッジ接続を作成します。 br0 は任意の名前に置き換えることができます。このコマンドはまだネットワーク インターフェイスをブリッジに割り当てていないことに注意してください。
ステップ 3 - ネットワーク インターフェースをブリッジに追加します
ネットワークインターフェイスをブリッジに追加するには、次のコマンドを使用します-
sudo nmcli connection add type bridge-slave ifname eth0 master br0
eth0 をブリッジに追加するネットワーク インターフェイスの名前に置き換えます。このコマンドを複数回実行し、毎回インターフェイス名を変更することで、複数のネットワーク インターフェイスをブリッジに追加できます。
ステップ 4 - ブリッジ接続をアクティブにする
ブリッジ接続をアクティブにするには、次のコマンドを使用します-
sudo nmcli connection up br0
このコマンドはブリッジ接続を起動し、アクティブにします。これで、ブリッジに追加したネットワーク インターフェイスに接続されたデバイスは、同じネットワーク上の他のデバイスと通信できるようになります。
方法 2: NetworkManager GUI を使用する
コマンドラインよりグラフィカルユーザーインターフェイス(GUI)を好む場合は、NetworkManager GUIを使用してRHEL/CentOS 8でネットワークブリッジを作成できます。その方法は次のとおりです-
ステップ 1 - NetworkManager GUI を開きます
システム トレイのネットワーク アイコンをクリックし、[ネットワーク設定] オプションを選択して、NetworkManager GUI を開きます。
ステップ 2 - 新しいブリッジ接続を作成する
NetworkManager GUI で、「+」ボタンをクリックして新しい接続を追加します。 「ブリッジ」オプションを選択し、「作成」をクリックします。
ステップ 3 - ブリッジ接続を構成する
ブリッジ接続設定で、ブリッジに名前 (br0 など) を付け、ブリッジに追加するネットワーク インターフェイスを選択します。必要に応じて、IP アドレスや DNS サーバーなどの他の設定を構成することもできます。
ステップ 4 - ブリッジ接続をアクティブにする
トグルボタンをクリックしてブリッジ接続を有効にします。これで、ブリッジに追加したネットワーク インターフェイスに接続されたデバイスは、同じネットワーク上の他のデバイスと通信できるようになります。
方法 3: firewalld ネットワーク ゾーンを使用する
ファイアウォールでも保護されるネットワーク ブリッジを作成する場合は、RHEL/CentOS 8 の firewalld ネットワーク ゾーン機能を使用できます。
firewalldを使用してネットワークブリッジを作成する方法は次のとおりです-
ステップ 1 - ネットワーク インターフェースを確認する
方法 1 と同様に、ブリッジするネットワーク インターフェイスを特定する必要があります。次のコマンドを使用して、利用可能なすべてのネットワークインターフェイスを一覧表示します-
nmcli device status
ステップ 2 - 新しいネットワーク ゾーンを作成する
ブリッジを含む新しいネットワークゾーンを作成するには、次のコマンドを使用します-
sudo firewall-cmd --permanent --new-zone=brzone
このコマンドは、brzone という新しいネットワーク ゾーンを作成します。 brzone は任意の名前に置き換えることができます。
ステップ 3 − 新しいゾーンにブリッジを追加する
新しいネットワークゾーンにブリッジを追加するには、次のコマンドを使用します-
sudo firewall-cmd --permanent --zone=brzone --add-interface=br0
このコマンドは、brzone ネットワーク ゾーンにブリッジ接続 (br0) を追加します。
ステップ 4 − 新しいゾーンのファイアウォール ルールを構成する
新しいネットワークゾーンのファイアウォールルールを構成するには、次のコマンドを使用します-
sudo firewall-cmd --permanent --zone=brzone --add-service=http
sudo firewall-cmd --permanent --zone=brzone --add-service=https
これらのコマンドは、http サービスと https サービスを brzone ネットワーク ゾーンに追加します。必要に応じて、他のサービスやポートを追加できます。
ステップ 5 − firewalld を再ロードする
ファイアウォールルールを構成した後、firewalldをリロードして変更を適用します-
sudo firewall-cmd --reload
これで、ブリッジに追加した (そして brzone ネットワーク ゾーンに割り当てた) ネットワーク インターフェイスに接続されているデバイスはすべてファイアウォールによって保護され、同じネットワーク上の他のデバイスと通信できるようになります。
方法 4: ネットワーク スクリプトを使用する
RHEL/CentOS 8 でネットワーク ブリッジを作成するもう 1 つの方法は、ネットワーク スクリプトを使用することです。この方法では、設定ファイルを手動で編集してブリッジを作成し、それにネットワーク インターフェイスを割り当てます。以前の方法よりも複雑になる可能性がありますが、ブリッジ構成の制御性と柔軟性も向上します。
ステップ 1 - Bridge-utils をインストールする
ネットワーク スクリプトを使用してブリッジを作成する前に、bridge-utils パッケージをインストールする必要があります。次のコマンドを使用してインストールします-
sudo dnf install bridge-utils
ステップ 2 − ifcfg ファイルを編集する
ifcfg ファイルは、ネットワーク スクリプトによってネットワーク インターフェイスを構成するために使用されます。ブリッジを作成するには、ブリッジするネットワーク インターフェイスの ifcfg ファイルを編集し、ブリッジ自体の新しい ifcfg ファイルを作成する必要があります。
まず、元の ifcfg ファイルのバックアップを作成します-
sudo cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.backup
sudo cp /etc/sysconfig/network-scripts/ifcfg-eth1 /etc/sysconfig/network-scripts/ifcfg-eth1.backup
次に、ブリッジ用の新しい ifcfg ファイルを作成します-
sudo vi /etc/sysconfig/network-scripts/ifcfg-br0
次の行をファイルに追加します-
makefile
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
IP アドレス、ネットマスク、ゲートウェイをネットワークに適した値に置き換えます。
次に、ブリッジするネットワーク インターフェイスの ifcfg ファイルを編集します。たとえば、eth0とeth1をブリッジするには、次のようにファイルを編集します-
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
次の行をファイルに追加します-
makefile
DEVICE=eth0
ONBOOT=yes
BRIDGE=br0
eth1のプロセスを繰り返します-
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth1
次の行をファイルに追加します-
makefile
DEVICE=eth1
ONBOOT=yes
BRIDGE=br0
ステップ 3 - ネットワークスクリプトを再起動します
ifcfg ファイルを編集した後、ネットワークスクリプトサービスを再起動して変更を適用します-
sudo systemctl restart NetworkManager.service
これで、ブリッジが起動して実行され、指定したネットワーク インターフェイスに接続されているはずです。次のコマンドを使用してブリッジのステータスを確認できます-
sudo brctl show
このコマンドは、システム上のすべてのブリッジのステータスを表示します。出力には、ブリッジがアクティブであり、指定されたネットワーク インターフェイスに接続されていることを示す br0 の行が含まれている必要があります。
結論
RHEL/CentOS 8 では、ニーズや好みに応じて、ネットワーク ブリッジを作成する方法がいくつかあります。 nmcli コマンド ライン ツール、NetworkManager GUI、または firewalld ネットワーク ゾーン機能を使用して、複数のネットワークとデバイスを接続するブリッジを作成できます。
どの方法を選択するかに関係なく、ブリッジと、ファイアウォール ルールや IP アドレスなどの関連設定を慎重に構成し、適切かつ安全に機能するようにすることが重要です。これらの方法を使用すると、要件を満たし、ネットワーク上のデバイス間の効果的な通信とリソース共有を可能にするネットワーク ブリッジを作成できます。