静态路由效率高。
DNAT SNAT 端口转发肯定不如路由。
其实你不需要iptables DNAT,A做静态路由,把C网段的路由指向B,B做源地址路由(策略路由)把A来的请求指向C。这是三层转发(路由),能访问C的任何端口、任何协议,而且性能好。如果用iptables 做DNAT端口转发就是四层的,只能每个端口+协议的组合单独配置,性能也打折扣。
回程最简单是B开 masquerade,C看到的是B发来的请求回给B,B的masquerade机制回给A,iptables的masquerade本质是SNAT四层转发。
如果能在C上配静态路由就更好了,直接把A的网段指向B,B知道C在哪儿,不需要四层转发了,B什么都不用做回程就通了。
【 在 hyoga 的大作中提到: 】
: A机需要从B机跳转到C机,在B上做了一条DNAT,把从A访问B的特定端口转发到C。
: 那么回程的两种方式:
: 1)在C上添加静态路由,所有访问A IP的走B路由;
: ...................
--
FROM 123.126.43.*