ネットワーク管理者とFedora 31とopenvswitchブリッジング...できませんか?

ネットワーク管理者とFedora 31とopenvswitchブリッジング...できませんか?

Fedora-31は、ネットワークスクリプトパッケージが廃止されたと見なします(すでにインストールは可能ですが、Network Managerに移行するように警告されます)。だから私はNetwork-Manager(もちろんovsプラグインがインストールされている)を使って最初にopenvswitchにブリッジを作成し、enp1s0をポートとして追加しました。

ovs-vsctl add-br bridge0
ovs-vsctl add-port bridge0 enp1s0

次に、次のコマンドを実行します。

nmcli connection add type ovs-bridge conn.interface-name bridge0 ipv4.method auto
nmcli connection add type ovs-port connection.interface-name port0 master bridge0
nmcli connection add type ovs-interface slave-type ovs-port connection.interface-name enp1s0 master port0

動的アドレスを持つポート(enp1s0)を持つbridge0が必要です。古典的なLinuxブリッジを使用するのは簡単です。再起動後、bridge0にIPはありません!私もこれをやる

dhclient -v bridge0

ただし、タイムアウトを入力してください。 selinuxとファイアウォールを無効にしようとしましたが、役に立ちませんでした。 Nmcliはこれを報告します。

enp1s0              7d27e505-7931-4838-bea1-08c9fbf759ae  ethernet       enp1s0  
virbr0              0fc3c827-9649-4ef6-a96e-31a24228f7d9  bridge         virbr0  
ovs-bridge-bridge0  12abce0d-488a-444e-99b3-390cbb4edebd  ovs-bridge     bridge0 
ovs-slave-port0     247757ec-76e0-425c-8484-311b48e4de01  ovs-port       port0  

ovs-slave-port0 接続を除くすべてが緑色です。

私の構成にはどのような問題がありますか?

ベストアンサー1

NetworkManagerを使用すると、ovs-vsctlNMが実際に外部で生成されたOVSデバイスを引き継ぐのを防ぐことができます(したがって不要なだけでなく有害です)。

dhclientまた、NetworkManagerが管理しているデバイスでは直接実行されません。つまり、いくつかの一時テストではこれを行うことができますが、全体的にはNetworkManagerを妨げます。

また、の説明に従って、man nm-openswitchNetworkManagerとNetworkManagerの間に違いがありますovs-vsctl。引用:

  • 設定はブリッジ、ポート、インターフェイスで構成されます。インターフェイスは常にポートに依存し、ポートは常にブリッジに依存します。

  • NetworkManagerは必要なブリッジ、ポート、およびインターフェイスのみを生成します。 ovs-vsctlとは異なり、ローカルインターフェイスとそのポートは自動的に生成されません。

つまり、ovs-vsctl add-brNetworkManagerを使用すると、そのための設定ファイルを明示的に有効にする必要がありますが、インターフェイスも作成されます。これがうまくいかない理由です。そのようなインタフェースが存在しないからです(そして明示的に実行してはdhclient bridge0いけません)。dhclient

つまり、anとanをnmcli device見る前に。ただし、これらのデバイスは完全にOVS()内にあります。そのエントリは表示されず、IPアドレスを設定することもできません。カーネルはこれらのインタフェースについて知らない。ユーザー(またはNetworkManager)は、IPアドレスを設定できる「実際の」インターフェースに依存する必要があります。ovs-bridgeovs-portovs-vsctl showip linkovs-port

ここでは2つのことができます。

  • またはスレーブイーサネットデバイス
    nmcli con add type ethernet slave-type ovs-port master port0 interface-name enp1s0 ...
    
  • または、ovsインターフェースを作成します。
    nmcli con add type ovs-interface slave-type ovs-port master port0 interface-name bridge0-if0 ...
    

これらのインターフェイスでは、対応する設定ファイルでIP設定を指定してIPアドレスを設定します。

いつものように、NetworkManager接続プロファイルとデバイスの違いを知っておく必要があります。 NetworkManagerは適切な設定ファイルを有効にしてデバイスを設定(および作成)します。

私はあなたにアイデアを与えるために思い出からこれらの例を書きました。man nm-openvswitchそこにある例を読んでフォローしてください。頑張ってください。

おすすめ記事