欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

双网卡双IP实现双线路共用的实际应用

程序员文章站 2022-07-03 08:09:53
双网卡双IP实现双线路共用的实际应用...
——让你实现:访问电信服务器自动使用电信线路,而访问网通服务器时自动使用网通线路  上网的朋友基本都清楚,北方网通与南方电信的互联网通信存在瓶颈,且不去说具体是什么原因造成的,但这确实给互联网的应用造成了很大的障碍。所以,从服务器以及idc运营的角度来说,出现了很多双线路机房,通过部署电信、网通双线路,满足用户对双线路的实际使用需求。
 
一般来说,有双ip双线路,单ip双线路,cdn双线路,bgp单ip双线路这样的几种双线路接入解决方案。
简单的介绍一下:
1、双ip双线路。服务器配置2块网卡,分别配置电信、网通不同的ip地址。在服务器上配置路由表,实现服务器访问电信和网通各自不同的ip的时候,分别走不同的通道。另一方,用户通过唯一的域名来访问服务器,而域名解析的时候,通过实施对不同的ip地址请求返回不同的服务器ip的方法来实现,网通用户请求域名时返回网通的ip,电信用户请求域名时返回电信的ip,这也就是所谓的智能dns解析。
 
2、单ip双线路。服务器配置1块网卡1个ip,或者是电信的ip、或者是网通的ip。通过路由器上配置路由表来实现双线路访问,这样做的好处是不用对服务器进行配置,而缺点是这样的配置,实际上只解决了半边通信的双线路访问,无法对用户在访问服务器时提供正确的路由通道。所以这样的方案一般只是过渡方案。
 
3、cdn双线路。记得我当年还加入过一个cdn的联盟呢。呵呵。cdn(content delivery network)也就是互联网内容分发网络,基本的概念就是制作大量的站点镜像,比如北京有服务器,这时候在南京放个镜像服务器,广州也放一个镜像服务器,然后通过智能dns解析让北京的用户访问北京的服务器,南京的用户访问南京的服务器缓存,以此类推。貌似新浪之类的大型门户网站就是这么做的。cdn的好处是容易部署,可扩展性强,缺点就是镜像缓存技术对于静态页面方式的网站,比如门户网站支持度是非常高的,但对于基于动态更新的网站,基本就无用武之地了。
 
4、bgp单ip双线路。bgp(border gateway protocol)边界网关协议。bgp具体的功能就是控制路由的传播和选择最佳路由。这个双线路的实现必须是idc机房运营商与电信、网通能够达成合作协议,通过骨干网络的路由器来给予最优路由选择,所有的一切,对于服务器和用户都无任何负担。服务器仅需单ip且效果最佳。但是这样的合作谈判又怎么会那么容易。所以目前这样的基于bgp的解决方案基本都是针对绝对的高端用户提供的。
 
上面给大家介绍了双线路的问题,那么今天具体想和大家说的是什么呢。
其实就是双线路联网的另一个重要的网络应用。也就是针对客户端群体的双线路访问。在实际使用中,有很多情况下,公司、网吧或者个人在家里,常常因为申请了电信的上网线路,就会导致网通的访问变慢,而申请了网通,则访问电信又会很慢。干脆申请两条线路,一条电信宽带,一条网通宽带吧。又不知道怎么把它们接起来。其实在这样的应用中,通过双网卡双ip的方式就可以实现双线路自动识别。
 
下面来说说具体如何操作。以我的电脑为例给大家做个演示。
我使用了2条宽带,一条电信线路,一条网通线路,带宽分别是1m。
我自己呢也有两个网卡,一个有线网卡连接网通,一个无线网卡连接电信线路。
连接网通的网卡,ip设置为:192.168.1.111,网关设置为192.168.1.1
连接电信的网卡,ip设置为:192.168.0.111,网关设置为192.168.0.1   上面给大家介绍了双线路的问题,那么今天具体想和大家说的是什么呢。 其实就是双线路联网的另一个重要的网络应用。也就是针对客户端群体的双线路访问。在实际使用中,有很多情况下,公司、网吧或者个人在家里,常常因为申请了电信的上网线路,就会导致网通的访问变慢,而申请了网通,则访问电信又会很慢。干脆申请两条线路,一条电信宽带,一条网通宽带吧。又不知道怎么把它们接起来。其实在这样的应用中,通过双网卡双ip的方式就可以实现双线路自动识别。   下面来说说具体如何操作。以我的电脑为例给大家做个演示。 我使用了2条宽带,一条电信线路,一条网通线路,带宽分别是1m。 我自己呢也有两个网卡,一个有线网卡连接网通,一个无线网卡连接电信线路。 连接网通的网卡,ip设置为:192.168.1.111,网关设置为192.168.1.1 连接电信的网卡,ip设置为:192.168.0.111,网关设置为192.168.0.1 双网卡双IP实现双线路共用的实际应用 我在命令行下,用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属性——高级 双网卡双IP实现双线路共用的实际应用双网卡双IP实现双线路共用的实际应用 找到默认网关,将默认网关的跃点数设为1。
这时候我们再route print看看
双网卡双IP实现双线路共用的实际应用 注意看最下面一行: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。 双网卡双IP实现双线路共用的实际应用     2、接下来,我只开启网通线路,进行网络测速,分别从中国电信和中国网通节点下载,可以看到:
从电信下载的速度每秒6.3k左右,从网通下载的速度86.5k。 双网卡双IP实现双线路共用的实际应用   3、最后,是当我启用了双线路策略之后,两条线路同时打开进行测速的结果: 从电信下载的速度每秒103.3k左右,从网通下载的速度88.8k。 双网卡双IP实现双线路共用的实际应用 最后的结果很明显了,我就不废话了:)