可以使用 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 处理。

Docker 容器指定 IP 172.18.0.52 并将流量转发到网关 192.168.123.39

原文地址: https://www.cveoy.top/t/topic/oare 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录