单网卡多IP多路由的配置

包含网卡/无线网的网络问题和ADSL/校园网/宽带拨号支持及代理/共享等网络使用问题
回复
头像
dailu
帖子: 4
注册时间: 2009-02-11 18:47

单网卡多IP多路由的配置

#1

帖子 dailu » 2009-02-13 14:42


我们用一台ubuntu 7.10服务器为企业客户提供语音服务,由于语音占用带宽较多,有客户打算从一根adsl扩到两根adsl。

首先规划网络,两个路由器带两个子网,比如192.168.1.0/24,192.168.3.0/24,路由器分别是192.168.1.1,192.168.3.1,把两个子网接到同一个switch上。

然后修改IP,原来eth0 = 192.168.1.160,现在加上一个 eth0:1 = 192.168.3.160。
root@dailu-ubuntu:~# vi /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.160
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
auto eth0:0
iface eth0:0 inet static
address 192.168.3.160
netmask 255.255.255.0
network 192.168.3.0
broadcast 192.168.3.255
gateway 192.168.3.81

程序本身也是很好改的,原来bind socket的时候,ip_addr = 0,让系统自己去填IP,反正也只有一个IP,没什么好选的。现在指定bind 192.168.1.160或192.168.3.160。

配好了一运行,才发现大谬不然,不管是以哪个为source IP,包都发到192.168.1.1去了。

分析下来,我们是受到以前多网卡多IP思路的影响了。以前是两块网卡,各配一个IP,各接一个路由器,两个子网互相不通,这样只要指定IP,就指定了网卡,就必然会通过对应的路由器出去了。

但现在我们只有一块网卡,就无法通过硬件来选择,只有配置路由了。

费了好大的力气,终于配成 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1,192.168.3.0 netmask 255.255.255.0 gw 192.168.3.1,结果发现仍然是所有的包都从192.168.1.1出去。

man route一看,哑然失笑,route表是以destination IP为依据作路由的,我的destination IP是外网IP,既不是.1网段也不是.2网段,它自然要用default gw,也就是.1.1了。

于是又上网一查,终于查到了ip route 和 ip rule,最后配置如下:
修改/etc/iproute2/rt_tables,加入自己的路由表:
251 subnet3

设置路由表subnet3:使用192.168.3.1作为gateway。
ip route add default via 192.168.3.1 table subnet3 proto static

设置ip rule,凡是192.168.3.0/24网段发出的包,都使用路由表subnet3。
ip rule add from 192.168.3.0/24 pref 15001 table subnet3
配置后:
root@dailu-ubuntu:~# ip rule
0: from all lookup local
15001: from 192.168.3.0/24 lookup subnet3
32766: from all lookup main
32767: from all lookup default
该rule优先级为15001,必须排在main和default这两条rule之前。

再试验,两个IP就大路朝天,各走一边了。

以上是自己摸出来的配置办法,请高手指正。
gothicane
帖子: 157
注册时间: 2006-08-29 10:31

Re: 单网卡多IP多路由的配置

#2

帖子 gothicane » 2009-07-09 15:53

LZ的经验值得分享,顶+收藏
头像
Stupid kid
帖子: 416
注册时间: 2006-10-18 12:57

Re: 单网卡多IP多路由的配置

#3

帖子 Stupid kid » 2009-07-09 18:08

有点不太明白楼主的硬件规划是怎么一回事!

两个路由、两个子网、一个交换机、一个adsl和一台单网卡的电脑;

想实现什么样的目的,各种设备之间如何连接?

请教……
http://twitter.com/nothining
Mail: bjdfzster@gmail.com
南京的开源活动几乎是0,希望能有人组织下(也可以拉我入伙^_^)
最近在从零开始学习Linux程序设计,加油……
头像
AngelMAX
帖子: 2228
注册时间: 2009-02-25 18:18

Re: 单网卡多IP多路由的配置

#4

帖子 AngelMAX » 2009-07-09 20:46

为什么不把两个网络分开,这样有人会偷着用对方的网络。
在中国搞IT的谁不知道Ctrl+C,Ctrl+V啊~
头像
nuanhuai
帖子: 7813
注册时间: 2009-03-10 13:04

Re: 单网卡多IP多路由的配置

#5

帖子 nuanhuai » 2009-07-09 21:11

留个记号
dorado
帖子: 23
注册时间: 2006-10-31 10:02
联系:

Re: 单网卡多IP多路由的配置

#6

帖子 dorado » 2010-03-17 14:15

楼主的好文章,建议加精

更改完了,别忘了 /etc/init.d/networking restart 才能生效 :em01
blog:http://windfall.blogbus.com
系统管理员责任大呀
头像
hcym
帖子: 15634
注册时间: 2007-05-06 2:46

Re: 单网卡多IP多路由的配置

#7

帖子 hcym » 2010-03-17 15:08

顶+收
头像
黄美姬
帖子: 8428
注册时间: 2009-10-08 11:15
来自: 大城市铁岭

Re: 单网卡多IP多路由的配置

#8

帖子 黄美姬 » 2010-03-17 16:02

个人用户申请电信20M光纤230元/月
我们是命运的妓女,它把我们都嫖了

N卡驱动:http://www.nvidia.cn/Download/index.aspx?lang=cn
极品飞车:http://www.geforce.cn/optimize/optimal- ... ts-450-ops
孤岛危机优化设置:http://www.geforce.cn/optimize/optimal- ... tx-450-ops
:cp /etc/skel/.bashrc ~/
PS1="\[\e]2;\u@\H \w\a\e[32;1m\]\T$\[\e[0m\] "
http://cdimage.ubuntu.com/
http://releases.ubuntu.com/
792316975
帖子: 6
注册时间: 2010-10-15 14:36

Re: 单网卡多IP多路由的配置

#9

帖子 792316975 » 2010-10-18 15:59

单网卡多IP多路由的配置。 楼主是否可以再详细点啊。没有详细的网络拓扑,看的不是很明白。
头像
josephhuang
帖子: 92
注册时间: 2010-06-11 19:29

Re: 单网卡多IP多路由的配置

#10

帖子 josephhuang » 2010-10-18 21:42

mark
回复