分页: 1 / 2

ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-11-02 22:02
xxx9956
双网卡是成本比较低的双机共享方法,对于没有交换机的用户来说比较方便,在XP下双网卡共享比较简单,只需要ICS共享或者桥接即可,在ubuntu下略显麻烦,不过配置好以后和XP下一样轻松。

此方法参考多人经验,尽量把高手们容易忽略不说的地方都写下来,并多次测试完善,尽可能让每个新手都能看懂学会。

对新手来说,下面每个文件打开都需要root权限,否则不能保存,如果没有用root用户,也可以在终端输入
sudo gedit,然后加个空格,再把该文件拖到终端窗口,回车打开,即可修改保存。

1.设定IP

打开/etc/network/interfaces文件,这是Ubuntu的网卡配置文件,里面包括IP、gateway、网络接口号等,以我的主机为例,内网eth0为静态static,主机外网eth0为dhcp动态获得。主机内网无须设置网关,并且客户机也无须设置网关,不过客户机可以自行设置DNS。

  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.16.9

  netmask 255.255.255.0

  gateway 192.168.16.1

2.设置IP转发
修改/etc/sysctl.conf,在文件中加上下面一行:
net.ipv4.ip_forward = 1

3.设置NAT转发规则
设置NAT规则,终端模式下:sudo /sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE
这里的“192.168.0.0/24”是你的内网网卡卡所在的网络号。“eth1”是你的对外的网卡的网卡代号。根据自己配置的修改。

4.开机自动转发
/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE
这条命令添加进/etc/rc.local文件,添加到exit 0之前

5.客户机设置
以郑州电信为例,郑州电信DNS为219.150.150.150和219.150.32.132
那么客户机设置IP如下
IP地址:192.168.0.2

子网掩码:255.255.255.0

网关:192.168.0.1

首选DNS服务器:219.150.150.150

备用DNS服务器:219.150.32.132

如果客户机是也是ubuntu,也可以只用一个DNS

至此,应该可以上网了,如果仍不能上网,主机按照上面设置完成后重启以下即可。

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-11-06 20:45
LuckyLuk
very useful

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-11-06 20:48
wangdu2002
路由党路过学习一下有时暂无路由器条件下的紧急处理。。。 :em11

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-11-09 9:16
hnbear
我是来顶贴的 :em01 :em01

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-11-10 12:59
xyz50270
mark!
受益匪浅。。。同理搞定了无线网卡共享问题....

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-12-03 23:04
liqiuping812
能不能帮忙解释一下

  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.16.9

  netmask 255.255.255.0

  gateway 192.168.16.1
分别代表什么啊,我看不懂,急着要共享网络阿

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-12-03 23:12
liqiuping812
我现在用wlan0链接广电宽带
想用eth0局域网内共享
应该怎么办呢?
不会阿
教教我吧

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-12-04 10:42
xxx9956
liqiuping812 写了:能不能帮忙解释一下

  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.16.9

  netmask 255.255.255.0

  gateway 192.168.16.1
分别代表什么啊,我看不懂,急着要共享网络阿

  auto eth0 0号网卡,我这里是内网网卡,你的依你的情况而定

  iface eth0 inet static 设置为静态IP

  address 192.168.0.1 IP地址

  netmask 255.255.255.0 子网掩码

  auto eth1 1号网卡,我这里是外网网卡,你的依你情况而定

  iface eth1 inet dhcp DHCP动态获取

  address 192.168.16.9 IP地址

  netmask 255.255.255.0 子网掩码

  gateway 192.168.16.1 网管

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-12-05 19:14
liqiuping812
这个地方:
iface eth1 inet dhcp DHCP动态获取
  address 192.168.16.9 IP地址
  netmask 255.255.255.0 子网掩码
  gateway 192.168.16.1 网管
既然第一行已经设定了动态获取(DHCP)
那后面为什么还要写地址呢?

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2009-12-05 23:29
xxx9956
写上地址无需重新获取,开机联网速度会快一些!

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2010-01-07 14:40
zero-w
请问使用该方法时是否需要停用nm呢?

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2010-03-10 18:14
foxcl
192.168.0.0/24

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2010-03-10 18:17
foxcl
192.168.0.0/24
这个是什么意思?尤其是后面的/24,看不明白。谢谢解释下。现在的问题是装Ubuntu的主机能有线上网。但是无线连接的客户机却没地共享上网成功,但是能ping通有线网上地址。

求解

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2010-04-05 21:32
guyanqiu
只做前两步。
然后点击网络连接的那个图标(就是和一个电阻差不多的那个图标)
然后右键,编辑网络连接,然后选择要共享的网卡,点 编辑,然后在IPV4里,选择与其他计算机共享,应用。就OK了。

可是,用了一段时间以后,出现DNS错误,没有办法上网,但是能上QQ,于是我就把主机网卡的DNS(主DNS和辅DNS)记录下来,填写到共享机的DNS里面,结果正常上网了,呵呵,和Windows一样方便。共享机设置自动连接就可以了,不需要填写那些IP也能够正常上网。

把网线练好,没做一步就测试一下,就知道什么时候网络连好了。

Re: ubuntu做主机双网卡共享上网方法(9.04/9.10测试通过)

发表于 : 2010-04-20 9:13
lin147895
foxcl 写了:192.168.0.0/24
这个是什么意思?尤其是后面的/24,看不明白。谢谢解释下。现在的问题是装Ubuntu的主机能有线上网。但是无线连接的客户机却没地共享上网成功,但是能ping通有线网上地址。

求解
/24 是子网掩码长度,24位掩码也就是255.255.255.0