Docker 容器指定 IP 172.18.0.52 并将流量转发到网关 192.168.123.39
可以使用 iptables 来实现这个需求。
首先,需要在 Docker 新建的网卡上设置 IP 地址,可以使用以下命令:
docker network connect --ip 172.18.0.52 [网络名] [容器名]
接着,需要在容器内安装 iptables 工具:
apt-get update
apt-get install iptables
然后,使用以下命令设置 iptables 规则:
iptables -t nat -A POSTROUTING -s 172.18.0.52 -o eth0 -j SNAT --to-source [eth0的IP地址]
iptables -t nat -A PREROUTING -i eth0 -d 172.18.0.52 -j DNAT --to-destination 192.168.123.39
其中,[eth0的IP地址]需要替换为 eth0 的实际 IP 地址。
这些规则的作用是:将从容器内发出的流量的源 IP 地址改为 eth0 的 IP 地址,然后将目的 IP 地址改为 192.168.123.39。这样,流量就会经过 eth0 并被转发到网关 192.168.123.39,然后由 proxy 处理。
原文地址: https://www.cveoy.top/t/topic/oare 著作权归作者所有。请勿转载和采集!