在我的AWS AMI Centos服务器中,我已经部署了带有互联网网关的2个子网eth0 10.0.0.1和带有NAT网关的eth1 10.10.0.1的VPC,通过公共IP,我的问题是我已经将我的NAT网关公共IP提供给客户端进行交互,或者我们可以使用该子网推送数据。有几个客户端连接到同一服务器,我不想添加路由来定义 ip shd 推送数据的子网,我想更改默认值或说来自 eth1 子网的所有传出流量。 ..到目前为止,我已经尝试过 iptables 并在网络脚本中更改网关,以获取下面的完整详细信息。
/etc/sysctl.conf
net.ipv4.ip_forward =1
sysctl net.ipv4.ip_forward = 1
sudo iptables -t nat -A POSTROUTING --out-interface eth1 -j MASQUERADE
sudo iptables -A FORWARD --in-interface eth0 -j ACCEPT
有了这个,我无法 ping 或 telnet 到客户端 ip,因为客户端已打开其 eth1 子网的连接,但是当我将流量从 eth0 转发到 eth1 时,它不会更改源地址,而是采用客户端网络未知的 eth0 子网 ip。
甚至尝试更改默认eth1
**/etc/sysconfig/network
GATEWAY=x.x.x.x
GATEWAYDEV=eth1**
这里所有流量都会被阻止,甚至传入流量也会更改为 eth1。
我的要求是传入流量来自 eth0 子网 10.0.0.1,传出流量来自 eth1 子网 10.10.0.1。添加路线将使我的过程更加忙碌我想要一些东西自动添加一个命令或脚本来完成这一切..
答案1
这对我来说毫无意义……但是……
我的要求是传入流量来自 eth0 子网 10.0.0.1,传出流量来自 eth1 子网 10.10.0.1。添加路线将使我的过程更加忙碌我想要一些东西自动添加一个命令或脚本来完成这一切..
该盒子不控制网卡网络流量来自哪个网卡,它到达网卡然后盒子对其进行处理...因此任何试图掩盖流量来自哪个网卡的尝试都是一项任务...
但是,您可以告诉盒子将流量发送到哪个网卡(前提是您没有将流量发送到通过另一个网卡建立的 TCP 连接)...即,如果流量源自有问题的盒子...
去做这个;
/etc/sysconfig/网络脚本/route-eth0
default via 10.10.0.1 dev eth1
iptables 不适用于在 nic 之间移动流量,并使用 DNAT / SNAT,而不是静态 IP 的 MASQUERADE。
请重新构造或澄清您的问题,因为它似乎不清楚......