Networking 在主机网络上使用docker容器而不共享主机';s ip

Networking 在主机网络上使用docker容器而不共享主机';s ip,networking,docker,Networking,Docker,我的docker主机是本地网络的一部分192.168.178.0/24 是否有办法运行成为主机网络一部分的容器,但是否与主机共享同一ip?因此,例如,如果主机具有ip 192.168.178.5,我希望在不干扰docker主机网络配置的情况下为容器提供192.168.178.8。由于docker容器本质上必须使用其主机的网络堆栈,因此它还必须共享主机ip以与网络通信。对于单容器设置,唯一的解决方案应该是向主机添加第二个NIC,并将该第二个NIC和提供的IP专用于docker。。。但除此之外,我看

我的docker主机是本地网络的一部分
192.168.178.0/24


是否有办法运行成为主机网络一部分的容器,但是否与主机共享同一ip?因此,例如,如果主机具有ip 192.168.178.5,我希望在不干扰docker主机网络配置的情况下为容器提供192.168.178.8。

由于docker容器本质上必须使用其主机的网络堆栈,因此它还必须共享主机ip以与网络通信。对于单容器设置,唯一的解决方案应该是向主机添加第二个NIC,并将该第二个NIC和提供的IP专用于docker。。。但除此之外,我看不到任何解决方案不会严重破坏主机网络堆栈的OSI模型,从而包括一些主要的副作用:-/

我相信这就是您想要的:[给docker容器一个可路由的ip地址][1][1]:@HatemJaber谢谢,但我不希望容器使用NAT或不同的子网(至少在阅读您链接的答案时我了解到这一点),您的意思是将第二个NIC用于Docker主机还是仅用于容器?如果有可能将网络接口分配给容器,那么我应该能够为它分配一个带有第二个IP的虚拟接口,不是吗?你说你不希望NAT参与其中。所以不,任何类型的虚拟接口都不能做到这一点,因为它仍然需要通过物理接口公开,而物理接口需要通过NAT之类的东西来分离它的真实端点和虚拟NIC之间的流量。要么获得第二个物理适配器,要么必须使用某种NAT机制使主机能够识别网络流量的目标