红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Ubuntu

NAT网关终于搞定(Ubuntu双网卡)

发布时间:2007-11-30 01:03:53来源:红联作者:Fedoraai
花了3个晚上的时间终于把我们实验室的网关翻整一新,在那堆废铜烂铁里整出来点东西还是很有成就感滴

首先说下环境,实验室局域网192.168.0.*,网关192.168.0.1
实验室公用一个外网IP:202.120.0.219,网关202.120.0.254

给实验室局域网的网关装了Ubuntu 7.10,两块网卡(一个主板自带的,一个插槽的)的IP分别设置为192.168.0.1和202.120.0.219

首先在/etc/network/interfaces文件中设置两块网卡的IP:
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1

auto eth1
iface eth1 inet static
pre-up ifconfig eth1 hw ether AA:BB:CC:DD:EE:FF
address 202.120.0.219
netmask 255.255.255.0
broadcast 202.120.0.255
gateway 202.120.0.254

其中pre-up ifconfig eth1 hw ether AA:BB:CC:DD:EE:FF是更改网卡的MAC地址,实验室公网的IP是和MAC绑定的

这里要注意的是,网上盛传的在interfaces中添加hwaddress是错误的,会让ipv4地址丢失

然后在修改/etc/rc.local文件,在其中添加
iptables -F
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

就是设置iptables防火墙的简单规则,放在rc.local中开机就会自动运行的

第一句是清除掉之前所有的iptables规则,第二第三句是允许接收和发送数据包,第四句是在eth1网口上做NAT

我为了简单就直接在rc.local中写了,其实应该另开一个root权限的脚本,而在rc.local中调用,方便整理

另外,iptables-save和iptables-restore也不好用啊,有熟悉的人么,有机会给我讲解下。

这次第一次亲眼见证了一台电脑寿终正寝的过程。

原先那做网关的电脑开始的时候多插一块硬盘就带不动了,再接下来插个USB上去就会重启动,到最后因为重启动次数多了硬盘也坏掉了,到今天晚上开机就一直反复在自检的画面重新启动...

自己着手整理新的网关也是迫不得已,借用某位大帅哥的话来说,就是我都对那个网关有偏见了

这下整个实验室的网速都感觉快好多,接下来还有一些小的工作要做,比如给大家分配帐号、建VPN、设置网络打印机,以及开一些端口映射。
文章评论

共有 1 条评论

  1. niutao0602 于 2007-12-15 10:51:46发表:

    呵呵,谢谢你的讲解,以后我们实验室的网络不形了就不用请别人了。