将 eth0 移至新命名空间后,在 docker 容器内为 eth0 分配 ip 地址

将 eth0 移至新命名空间后,在 docker 容器内为 eth0 分配 ip 地址

尝试使用本教程实现 WireGuard VPN 终止开关新的命名空间解决方案

但是在我将 eth0 从 init 命名空间移动到第二个命名空间后,它丢失了分配的 IP 地址:

ip netns add physical
ip link set eth0 netns physical
4030df9c72c3:/# ip netns exec physical ip addr
1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0
3: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1000
    link/tunnel6 :: brd :: permaddr 42b1:64fa:917a::
60: eth0@if61: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default
    link/ether 02:42:c0:a8:b0:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0

教程中提供的步骤不适用于我的场景,它是一个 docker 和 alpine 镜像,他们假设我从物理机器上工作:

# ip netns exec physical dhcpcd wlan0
# ip netns exec physical wpa_supplicant -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf
# ip -n physical addr add 192.168.12.52/24 dev eth0

所以,我的问题是,在我的情况下,在将 IP 地址eth0从命名空间移动init到新的命名空间后,如何重新分配它。physical

相关内容