侧边栏壁纸
博主头像
ayou

中年互联网混子,现居苏州,曾经技术型宅男一个,
爱好吃,爱好睡,体制外,爱岗敬业,
遵纪守法,头发短,见识短,伪Geek,毫无城府。

  • 累计撰写 1590 篇文章
  • 累计收到 12 条评论

一些关于路由表的...

2012-9-6 / 0 评论 / 572 阅读
温馨提示:
本文最后更新于 2012-9-6,已超过半年没有更新,若内容或图片失效,请留言反馈。

    家里有两条单独的宽带线,一条是中国电信的,另一条是中国网通的,自己的计算机有两块网卡,还有两个Modem。想把两条宽带线路都利用起来,这样就可以保证访问网通和电信线路的地址速度都比较快。
    想把两条线路合并到一起,并且可以实现访问电信网络通过电信ADSL,而访问网通网络则通过网通ADSL。这种需求和应用在实际使用中比较常见。
    如果简单的通过一些网卡合并软件将两块网卡绑定到一起是无法满足这种智能选择路由的目的。实际上这位读者需要解决的和我们之前曾经介绍过的利用策略路由让网络数据包智能传输有类似之处,但是由于该读者只有一台计算机,而且通过ADSL拨号上网,所有以前介绍过的通过策略路由选择不同线路的方法就不行了。
    在单机网络环境下是否也有诸如策略路由这样的解决技术和方案呢?答案是肯定的,我们可以通过计算机自身的路由表功能实现。对于每个连接到网络的计算机来说自身都有一个路由表,它类似于路由器的路由表,帮助计算机发送网络请求到指定的IP地址。可以通过“开始。运行”进人命令行窗口,然后执行"route print"来查看本机的路由表信息。
    计算机中的路由表和路由器上的一样,也可以由我们根据需要添加或删除。这样解决读者问题的关键就放到了如何更合理的规划路由信息,让电信网络访问走电信网卡,让网通网络访问走网通网卡。
    第一步:
    计算机中连接网通的网卡,IP设置为192:168.1.111,网关设置为192.168.1.1;连接电信的网卡,IP设置为192:168.0:111,网关设置为192.168.0.1。
    第二步:
    通过"route print"命令查询当前计算机的默认网关(显示在Default Gateway后面的就是默认网关地址)。如果显示为192.168.1.1则说明默认以网通线路为出口,如果是192.168.0.1则说明默认以电信线路为出口。
    第三步:
    这里假设默认网关是电信出口.网通IP段为61.156.0.0,那么我们需要手工添加网通线路的地址段路由信息。进入到命令行模式输人route add -p 61.156.0.0 mask255.255.0.0 192.168.1.1,这句指令将规定凡是传输到61.156.0.0这个地址段的数据都发送到192.168.1.1这个网通出口网卡。
    第四步:
    依次添加所有网通地址段到本机路由表,设置完毕后我们访问网通线路和电信线路的速度都将有所保障。

-------------------------------------

下面来说说具体如何操作。以我的电脑为例给大家做个演示。
我使用了2条宽带,一条电信线路,一条网通线路,带宽分别是1M。
我自己呢也有两个网卡,一个有线网卡连接网通,一个无线网卡连接电信线路。
连接网通的网卡,ip设置为:192.168.1.111,网关设置为192.168.1.1
连接电信的网卡,ip设置为:192.168.0.111,网关设置为192.168.0.1
我在命令行下,用route print命令查看一下当前默认的路由表:
注意看最下面一行:Default Gateway:192.168.1.1
这句的意思就是默认网关,一台电脑只有一个默认网关,所有的数据包都是先发往这个网关地址。
根据显示,192.168.1.1代表我的网通的那条线路,也就是所有的数据包都会自动优先从网通线路走。
可能有线网卡比无线网卡的优先级高的原因吧,系统默认将有线的网通通道的地址设置为默认网关了。
暂停一下,整理一下思路。
要通过双网卡双ip方式实现双线路,我们需要修改电脑中的路由表,可以用以下两种规则。
1、默认网关设置为网通线路的ip,然后将电信网络的网段路由手工添加到路由表记录中,
让访问电信ip时,根据路由表规则,让这些访问都通过电信线路出去,达到目的。
2、默认网关设置为电信线路的ip,然后将网通的网段路由手工添加到路由表记录中,当访问网通ip时,
则根据路由表规则,让这些访问都通过网通线路出去,达到目的。
由于电信的网段数量比网通的多的多,所以我们用第二种规则,
也就是:默认网关设为电信,其它访问网通ip的时候,通过路由表控制,迫使数据从网通通道出去。
整理完思路之后,我们就面临第一个问题,就是如何将默认网关设置成电信网络的192.168.0.1这个地址,而不是
网通的192.168.1.1这个地址。
这样操作:
网卡,我找到无线网卡(电信线路的那个),右键属性——TCP/IP属性——高级
找到默认网关,将默认网关的跃点数设为1。
这时候我们再route print看看
注意看最下面一行:Default Gateway:192.168.0.1
看看默认网关,已经变成192.168.0.1,也就是电信线路了。下面我们开始继续工作。
接下来要把网通的网段添加到路由表里面咯。
用这样的命令
route add 61.156.0.0 mask 255.255.0.0 192.168.1.1
比如这条命令,就指定了将61.156.0.0 这个网段的通讯全部设置为从192.168.1.1 网通线路走。
网通的段虽然比电信的少,但写出来也是呼啦一堆。所以这里准备了一个批处理文件,2000/xp/2003直接运行就ok。
对了,route add命令是添加临时的路由记录,重启后,就清空了,如果想永久生效,用下面的命令:
route -p add 61.156.0.0 mask 255.255.0.0 192.168.1.1
当然,你下载之后呢可以自己修改批处理文件。
删除路由记录也非常方便。用下面的命令:
route delete 61.156.0.0
添加网通网段路由的批处理文件 删除网通网段路由的批处理文件
最后我们来看看实际效果对比吧。首先说明,我地处南京,属于南方用户,电信、网通线路带宽均申请
的是1M 线路,也就是说,最佳下载速度在120k左右。
1、当我只开启电信线路时,进行网络测速,分别从中国电信和中国网通节点下载,可以看到:
从电信下载的速度每秒82.1k,从网通下载的速度20.3k。
2、接下来,我只开启网通线路,进行网络测速,分别从中国电信和中国网通节点下载,可以看到:
从电信下载的速度每秒6.3k左右,从网通下载的速度86.5k。
3、最后,是当我启用了双线路策略之后,两条线路同时打开进行测速的结果:
从电信下载的速度每秒103.3k左右,从网通下载的速度88.8k。
最后的结果很明显了,我就不废话了:)

评论一下?

OωO
取消