分享

Ubuntu做网关上网

 逗咳嗽 2012-09-13
Ubuntu做网关上网
2009-11-22 20:52

用Ubuntu做网关上网比windows麻烦点儿,主要涉及到三个文件:

/etc/network/interfaces  /proc/sys/net/ipv4/ip_forward  /etc/rc.local

1、先说interfaces文件,这是Ubuntu的网卡配置文件,里面包括IP、gateway、网络接口号等,先看一个例子:

  auto lo

  iface lo inet loopback

  auto eth0

  iface eth0 inet static

  address 192.168.0.1

  netmask 255.255.255.0

  auto eth1

  iface eth1 inet dhcp

  address 192.168.137.5

  netmask 255.255.255.0

  gateway 192.168.137.2

这就是我的电脑上的interfaces,这里我有两张网卡:eth0、eth1,三个网络接口:eth0、eth1、lo,其中lo是本地回环接 口,也就是当你在你的电脑上输入ping 127.0.0.1时的网络接口,它是用来测试你的网卡能不能正常工作的。注意:一张网卡可能有多个网络接口,也就是可以有多个IP地址。里面的参数没什 么好说的,能看懂英文就行。重要的地方有

“iface eth1 inet dhcp”这里的dhcp也就是本网络接口获得IP的方式,“static”表示静态配置的,“dhcp”表示动态获取的。gateway后填上网关。

2、第二个文件其实就起到一个开关的作用,一般用“echo 1 > /proc/sys/net/ipv4/ip_forward”修改它,这条命令的意思是把ip_forward的内容设为“1”,表示开启路由转功能, 若为“0”,则表示关闭路由转发功能。若把Ubuntu做为网关,则需要开启路由转发功能。

3、第三个文件是开机启动脚本,可以把linux命令写到它里边,表示开机时自动执行该命令。

好了,下面进入正题,开始把Ubuntu配置成路由器:

1、正确配置IP,若你有两张网卡,则网卡代号分别是eth0、eth1。把对外的那张网卡的获得IP方式配置成dhcp方式;对内的那张网卡的 IP设置成static方式,并给它分配一个IP。网关地址填上你的网关。可以参考上面的文件。(修改此文件需要 root权限,推荐使用vi修改,简单好用的nano也行)

2、启动Ubuntu的路由转发功能,终端模式下输入:echo 1 > /proc/sys/net/ipv4/ip_forward

3、设置NAT规则,终端模式下:/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

注意:这里的“192.168.0.0/24”是你的对内网卡所在的网络号。“eth1”是你的对外的网卡的网卡代号。根据自己配置的修改。

这样之后Ubuntu应该能上网了,然后再设置开机自动启动,把

echo 1 > /proc/sys/net/ipv4/ip_forward

/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

这两条命令添加进/etc/rc.local文件中

下面是客户机的配置:

我以河南网通为例,河南网通的DNS地址是202.102.224.68和202.102.227.68,ip设为内网ip,也就是Ubuntu上对内的那张网卡的ip所在的网段,网关设为Ubuntu对内的那张网卡的ip。以我的配置为例,就是:

IP地址:192.168.0.2

子网掩码:255.255.255.0

网关:192.168.0.1

首选DNS服务器:202.102.224.68

备用DNS服务器:202.102.227.68

然后就上网吧……

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多