
使っているとしましょうIPリンク(8)インターフェイスを作成しtest-macvlan
てアドレスを割り当てます10.11.12.13
。
# ip link add link eno1 name test-macvlan type macvlan
# ip address add 10.11.12.13 dev test-macvlan
# ip address show test-macvlan
10: test-macvlan@eno1: <BROADCAST,MULTICAST> mtu 1500 ...
link/ether d2:f7:32:3f:c9:4a brd ff:ff:ff:ff:ff:ff
inet 10.11.12.13/32 scope global test-macvlan
その後、使用します。IP-ネット(8)ネットワークネームスペースを作成しtest-netns
て使用するIPリンク(8)test-macvlan
新しい名前空間にインターフェイスを割り当てます。
# ip netns add test-netns
# ip link set test-macvlan netns test-netns
# ip netns exec test-netns ip address show test-macvlan
10: test-macvlan@if2: <BROADCAST,MULTICAST> mtu 1500 ...
link/ether d2:f7:32:3f:c9:4a brd ff:ff:ff:ff:ff:ff link-netns root
インターフェイスに IP アドレスがなくなりました。インターフェイスでも同じことが起こりますvlan
。おそらくこれが理由です。ルーティングとネットワーク名前空間の統合に関するWireGuardチュートリアルwireguard
割り当てられたIPアドレスをデバイスに割り当てるように要求します。後ろにネットワーク名前空間を変更します。
なぜこれが起こるのですか?示すsystemd-networkdには、ネットワークネームスペースで仮想ネットワークデバイスの作成をサポートする新しいコードが必要です。。ネットワークインターフェイスの設定がネットワークネームスペースを介して移植可能である場合、コンテナは独自のネットワークマネージャを実行する必要がないため、タスクは単純化されませんか?