当前位置: 技术问答>linux和unix
NAT代理局域网访问INTERNET问题
来源: 互联网 发布时间:2015-05-27
本文导语: 背景如下: 内网:192.168.0.X网段 网关用linux作服务器,双网卡,其中eth0:192.168.0.1,eth1:220.10.10.2 eth0联接内部网,eth1联接internet,使用电信的固定IP地址 我用NAT转换实现居域网上网,即利用iptables设置了如下的规则: /sbin/iptables...
背景如下:
内网:192.168.0.X网段
网关用linux作服务器,双网卡,其中eth0:192.168.0.1,eth1:220.10.10.2
eth0联接内部网,eth1联接internet,使用电信的固定IP地址
我用NAT转换实现居域网上网,即利用iptables设置了如下的规则:
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j SNAT --to 220.10.10.2
居域网内30多台机器即可上网,同时可正常访问各类网站,可上QQ以及各类网罗游戏,但是我发现一个问题,系统运行一段时间以后,客户机会出现网站访问不了的情况,可是其它的应用都正常,也就是说可以上QQ,玩网络游戏,但是不能看网页,我在这里向各位有此经验的大虾求救,此问题如何引起,又该如何解决呢?
内网:192.168.0.X网段
网关用linux作服务器,双网卡,其中eth0:192.168.0.1,eth1:220.10.10.2
eth0联接内部网,eth1联接internet,使用电信的固定IP地址
我用NAT转换实现居域网上网,即利用iptables设置了如下的规则:
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j SNAT --to 220.10.10.2
居域网内30多台机器即可上网,同时可正常访问各类网站,可上QQ以及各类网罗游戏,但是我发现一个问题,系统运行一段时间以后,客户机会出现网站访问不了的情况,可是其它的应用都正常,也就是说可以上QQ,玩网络游戏,但是不能看网页,我在这里向各位有此经验的大虾求救,此问题如何引起,又该如何解决呢?
|
/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
|
extdev=eth0
intdev=eth1
extip=`/sbin/ifconfig $extdev | grep inet | cut -d : -f 2 | cut -d ' ' -f 1`
intranet=`/sbin/ifconfig $intdev | grep inet | cut -d : -f 2 | cut -d ' ' -f 1 | cut -d . -f 1-3`.0/24
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables -F
/sbin/iptables -F -t nat
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP
/sbin/iptables -A INPUT -s $intranet -i $extdev -j DROP
/sbin/iptables -A FORWARD -s $intranet -i ! $extdev -o $extdev -j ACCEPT
/sbin/iptables -A FORWARD -i $extdev -o ! $extdev -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -s $intranet -o $extdev -j SNAT --to-source $extip
这个一定可以。
intdev=eth1
extip=`/sbin/ifconfig $extdev | grep inet | cut -d : -f 2 | cut -d ' ' -f 1`
intranet=`/sbin/ifconfig $intdev | grep inet | cut -d : -f 2 | cut -d ' ' -f 1 | cut -d . -f 1-3`.0/24
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/iptables -F
/sbin/iptables -F -t nat
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP
/sbin/iptables -A INPUT -s $intranet -i $extdev -j DROP
/sbin/iptables -A FORWARD -s $intranet -i ! $extdev -o $extdev -j ACCEPT
/sbin/iptables -A FORWARD -i $extdev -o ! $extdev -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -s $intranet -o $extdev -j SNAT --to-source $extip
这个一定可以。