如何根据特定目标从多个虚拟 IP 中选择源 IP

如何根据特定目标从多个虚拟 IP 中选择源 IP

我有两个私有IP连接到一个接口。

inet 10.255.0.127/24 brd 10.255.0.255 scope global eth1
inet 10.255.0.153/24 brd 10.255.0.255 scope global secondary eth1

当流量离开 eth1 接口时,它使用 10.255.0.127(主)作为源 IP。

如何根据特定目标更改源 IP 以使用 10.255.0.153(辅助)。例如,如果目标是 10.11.0.0/24,则对于同一接口 eth1,它应该使用 10.255.0.153,对于其他所有接口,则使用 10.255.0.127。

答案1

除了静态路由之外,您还可以使用 iptables 来获取所需的源地址:

iptables -t nat -I POSTROUTING -o eth0 -d 10.11.0.0/24 -s 10.255.0.127 -j SNAT --to-source 10.255.0.153

相关内容