|
发表于 2003-6-2 22:40:31
|
显示全部楼层
这跟DNS没关系。
在3号机上,通过域名和IP都可以访问到内部网(192.168.8和192.168.9),而外部就一个也不行。
如果是这样的话,那么证明NAT2设置失败,因为实际1号机控制着整个内网的路由,3号机能访问内网只是作为一个与2号机等同的网内工作站被1号机控制,即2号和3号机此时的地位是等同的,而我们现在要做的是将3号机的所以数据包能过NAT2伪装成2号机的数据包去接收1号机路由(还有一种方式就是对所有访问外网的数据包进行伪装而不管访问内网的数据包,不过这种方式实现起来太复杂)。
所以错误应该出现在下面的规则中:
#iptables -t nat -A POSTROUTING -s 192.168.9.0/24 -o eth0 -j SNAT eth0
#iptables -t nat -A PREROUTING -o eth1 -j SNAT eth1
我理解这两条规则的意思是:
对所有从192.168.9.0的eth0发出的数据包进行一个源NAT转换
对所有路由经过192.168.9.0的eth1的数据包进行一个源NAT转换
但我不清楚你对源NAT进行了什么转换。
建议你将所有192.168.9.0的数据包进行IP伪装,这样更简单:
#iptables -t nat -A POSTROUTING -p DROP
#iptables -t nat -A POSTROUTING -o eth1 -j MASQUREADE
由于网络需要具体情况具体分析,以上提供了一条思路,如果该命令行不通,可以问一下公司的总工做适当调整。
祝你好运 |
|