是否有可能使能够OpenVZ 容器内的 IP 转发但保留它已禁用在主机系统中?
我知道 OpenVZ 容器和主机共享内核,但我可以从容器内部和主机分别将其sysctl
设置为 1 或 0,它们也会保留这些值。但我还观察到,即使主机中的值读取为 0,容器中的值读取为 1,主机系统也会将 IP 数据包转发到不同的网络接口。ip_forward
ip_forward
共享内核是否也意味着共享内核参数?
答案1
对于第一个问题,答案是肯定的。对于第二个问题,答案是否定的。
自从引入命名空间以来,一些参数有所不同。这就是为什么我们可以在主机和容器中同时使用 eth0 而不会发生名称冲突,因为网络命名空间正在工作。
sudo unshare -n -- ifconfig -a
仅显示 lo。容器中的“ip_forward”是完全可能的,因为容器中的 ip 堆栈已与主机取消共享。