Ubuntu Server 20でQEMU-KVMとNetplanを使用してブリッジルーティングを設定するには?

Ubuntu Server 20でQEMU-KVMとNetplanを使用してブリッジルーティングを設定するには?

ここでスタック交換ユーザーが初めてなので、何らかの方法でプロトコルに違反した場合は事前にお詫び申し上げます。そして、まだLinuxとルーティングについて初心なので無知な点ご了承ください。

基本的な問題は、qemu-kvm、libvirt、およびnetplanを一緒に操作できないことです。私は彼らがお互いのネット​​ワーク構成を壊すように見えますが、私はそれらを正しく使用していないことを確認するために質問をしたいと思いました。

Ubuntu Server 20.04.3 LTSをインストールした後、ネットワークインターフェイスとパスは次のようになります(「ipルーティング」を介して)。

ここに画像の説明を入力してください。

qemu-kvm、libvirt-daemon-system、libvirt-clientsなどを正常にインストールしました。これにより、システムに仮想ブリッジと仮想インターフェイスが追加されます。

ここに画像の説明を入力してください。

次に、/etc/netplan/<default.yaml>でnetplan設定ファイルを編集します。これは私のファイルです:

ここに画像の説明を入力してください。

sudo netplangenerateを介して正常にコンパイルされ、sudo netplan tryを介して「成功的に」適用され、確認が入力されますが...何もありません。ネットワークインターフェイスを見ると、次のようになります。

ここに画像の説明を入力してください。

既存のIPアドレスはすべて失われます。ブリッジが作成されず、インターフェイスが接続されていません。

ルートを見てみましょう。

ここに画像の説明を入力してください。

仮想橋への道を除くすべての道は消えました。インターフェイスの状態を振り返ると、動作中のリンクレイヤがあるように見えますが、動作するルーティングはありません。

ネットワークプランを適用すると、私のルートが消えるのはなぜですか?

私がこの仕事をしっかりしているのか?それとも、QEMU-KVM、libvirt、およびnetplan間のネットワークインタフェースとIPルーティングの作成/管理に関する現在の問題を知っている人はいますか?

ちなみに、再インストールとは異なるインストールシーケンスを試して、nic#2でブリッジを正常に作成して解決し、qemu-kvmとlibvirtをインストールしました。その結果、netplanで実装されたブリッジが消え、上の図4に示すようにkvm仮想インターフェイスとブリッジが表示され、netplanを適用できますが、目に見える変更はなく、すべてのパスが失われます。

助けてくれてありがとう!

更新:これで起動スクリプトを作成してこの問題を解決しました。 Netplanを介してブリッジをインスタンス化することはできませんが、「ip link」を使用して事前に手動で作成すると機能するようです。

sudo ip link add br0 type bridge
sudo ip link set eno1 up
sudo ip link set eno2 up
sudo ip link set eno2 master br0
sudo ip link set br0 up
sudo netplan apply
sudo dhclient -v -r

サービスファイルは次のとおりです。

[Unit]
After=network.service
[Service]
ExecStart=/bin/bash /home/<username>/Scripts/netplanApply.sh
[Install]
WantedBy=default.target

また、新しいnetplan config.yamlファイルもあります。

network:
    ethernets:
        eno1:
            dhcp4: true
            dhcp6: false
        eno2:
            dhcp4: false
            dhcp6: false
    bridges:
        br0:
            interfaces: [eno2]
            macaddress: 11:41:14:11:41:14
            dhcp4: true
            dhcp6: false
    version: 2
    renderer: networkd

起動時に詳細な出力を見ると、「ネットワークサービス」サービスが開始できなかったこと(赤)がわかりますが、区別することは困難です。後でチェックするために起動時に詳細な出力をファイルにダンプする方法はありますか? qemu-kvmまたはlibvirtのインストールがデフォルトのネットワーク構成を壊したり、起動時にnetplanの実装を何らかの形で妨げるように感じます。

ベストアンサー1

おすすめ記事