请教iptables SNAT的问题
centos udp服务器上,我想通过SNAT修改其udp响应包的源地址,但是没达到改变源地址的效果;
而如果在该机上用udp客户端发udp包给其它主机,源地址却是变了的.
具体点就是,地址A服务器上做了SNAT将包中的源地址A改为虚拟地址B,我以地址C主机发包给A,我希望A返回包的时候源地址是B也就是理论上C应该收不到响应包因为响应包源地址与C自己的目的地址不同,但实际上A的响应包里的源地址并没有改B,C还是收到了响应包。
更简单说,就是我希望是C --> A, B--> C,应用场景其实是C的地址经过透明代理B透传到了A,A收到了源地址C的请求包,A响应的时候,需要将源地址改B的,C才能正常接收。B是nginx。
而在A上主动发包给其它主机时,却发现,源地址是改成了B。
似乎SNAT只对主动发出包时才有用,对响应包没用,不知是不是ip连接追踪影响的,不懂。