双网卡Linux机器配置NAT,让内网用户可以访问互联网
步骤一:安装系统
安装Linux系统前,检查一下机器上网卡的MAC地址,确定一下哪块网卡是公网,哪块网卡是内网。确认好以后正常安装系统即可。当安装进度进行到配置网卡的界面时,选择“编辑”,然后根据之前确认好的网卡地址,为2块网卡手工配置上相应的IP、子网掩码。退出网卡的编辑界面后,在配置上网关、DNS即可。
友情提示:本步骤也可以省略,在步骤2中完成,另外如果将来机器上要安装VMWARE虚拟机,建议在安装的时候去掉“虚拟化”前面的对号
安装完成后重启进入系统时,请选择禁用防火墙。
步骤二:配置网卡
系统安装好进入系统,点击任务栏上的“系统”-“管理”-“网络”,进入网络配置界面,如下图:
依次选中相应的网卡,然后双击进行编辑,检查并填写相应信息(每块网卡都配置上网关),配置好后的网卡如下图:
两块网卡的地址、掩码、网关都填写完成后,点击“文件”下的“保存”,然后依次“取消激活”,“激活网卡”即可。
步骤三:增加路由并开启IP转发
网卡配置完成并重新激活后,需要把路由信息和IP转发功能开启写入到启动文件中,这样每次系统启动后都可以自动执行。在root用户执行vi /etc/rc.d/rc.local,在最后面增加如下2行:
route add -net xxx.xxx.xxx.xxx netmask yyy.yyy.yyy.yyy gw zzz.zzz.zzz.zzz
echo 1 > /proc/sys/net/ipv4/ip_forward
友情提示:xxx用你自己的IP段替代,yyy用相应的255和0替代,zzz是你的某块网卡的网关。
例如我的其中一块网卡是内网的网卡,IP是170.224.9.100,内网的网关是170.224.9.1,我想让所有内网的访问都走这个网关,那我的路由就是如下格式:
route add -net 170.224.0.0 netmask 255.255.0.0 gw 170.224.9.1(0对应0,数字对应255)
步骤四:配置IPTABLES
以root用户执行如下命令:
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F -t nat
iptables -X -t nat
iptables -F
iptables -X
iptables -t nat -A POSTROUTING -s 172.224.0.0/255.255.0.0 -o eth1 -j MASQUERADE
注:eth1替换成你的公网网卡
service iptables save
service iptables restart
配置完成后,内网的机器把网关设置为该服务器的内网网卡的地址,就可以内外双修了!