2つの異なるマシンにあるVMをovsブリッジとVxLANトンネルで接続したいのですが、トポロジが図のようになっていると仮定します topology このように、ホストAでの構成(ホストBでの構成はほとんど同じです) remote_ipをホストA'eth0)のアドレスに変更します。
ovs-vsctl add-br ovs-br0
ovs-vsctl add-port ovs-br0 vtep -- set interface vtep type=vxlan options:remote_ip=172.168.1.200 options:key=5000
qemuでVMを起動しているときに、tap0が作成され、ブリッジovs-br0に自動的に追加されますが、VM1からVM2にpingできません。
私はまた、このようないくつかのリンクをグーグルで検索しました: http://networkstatic.net/configuring-vxlan-and-gre-tunnels-on-openvswitch/ 、残念ながら、2つのovs-bridgeを作成する必要があると言っています、これら2つのブリッジをリンクする必要があるかどうか(およびその方法)はわかりません。
Ovs-br0とeth0がどのように通信するのか、カーネルTCP/IPスタックがこのジョブの実行に役立つのか、または別のovs-bridgeを作成して、これら2つのブリッジをパッチポートに接続する必要があるのか混乱していますか?
ですから、私のトポロジーや構成が正しくない場合は訂正してください。よろしくお願いします。
私はこの問題を解決しました。
Ovsブリッジを使用したvxlanトンネルの構成は正しいです。VM1からVM2にpingできない理由は、ovsをインストールする際の間違った手順です。ビルドされた.koファイルをカーネルlibパスにインストールするためのmakemodules_installを忘れました。
1つのovsブリッジでovsvxlanトンネルを構築できます。VMからのパケットはvtepポートで外部ヘッダーでカプセル化され、ルーティングテーブルに従ってルーティングされ、物理ポートeth0に転送されます。物理ポートを明示的に接続する必要はありません。OSカーネルがそれを支援してくれます。