我有一个公共nat实例和私有实例,只有私有ip。在nat实例中没有iptables,私有实例正在上网。但是在nat实例中添加iptable规则后,私有实例却没有上网。我添加了iptable规则,包括输出丢弃,输入丢弃,前向丢弃链。添加此规则后,nat无效。
我是否需要将任何预路由或路由后规则添加到我的iptable规则列表中。
答案 0 :(得分:0)
可以通过分配security group在AWS Web Admin Console中完成aws实例中的路由。这些组处理可插入实例的iptables规则集。您最多可以将500个安全组附加到classic-ec2实例。
在任何可用的de SDK中使用cli,您都可以以编程方式配置实例。
另一方面,如果您的实例是ec2-VPC或ec2-classic,则会产生很大的不同。 EC2-VPC组在概念上略有不同,因此具有不同的定义和设置。
如果您想自己处理ec2实例中的iptables,请查看this评论。
答案 1 :(得分:0)
感谢您的更新。
我可以通过在iptables中添加转发规则来解决问题。
最初在iptables中有这样的前瞻性规则。
iptables -A FORWARD -i eth0 -o eth0 -j f_reflected
现在我为eth0添加了正向规则
iptables -A FORWARD -i eth0 -j ACCEPT
之后,来自网络的所有nat请求都被路由并且工作正常。
这是我对nat的后悔规则
iptables -t nat -A POSTROUTING -o eth0 -s 172.30.37.0/24 -j MASQUERADE