答netpat兄弟 电信网通双链路解决方案

答netpat兄弟 电信网通双链路解决方案

各位大虾所说的技术已经可以实现了.
大概情况如下:
某网站 ,如www.test.com,   电信接入链路一条, 网通一条, 电信给的IP是1.1.1.1 ,网通给的是2.2.2.2 处于不同网段
   要求实现 网通的用户从网通的链路 访问到 服务器, 而电信的用户用电信的链路访问到服务器.


解决方案:
   要从DNS下手
  某个用户从电信发起访问,过程如下
1 Client   
2 Client所指定的DNS服务器  根据Client的网络接入的方式不同,DNS服务器地址未知
3 test.com的
   Client 问自己的DNS www.test.com的IP是多少
   Client DNS 服务器通过递归或则迭代,访问到test。com的soa dns服务器。
     a, 如果是迭代,则最终向test。com询问谁是 www.test.com的 ,将是Client.
              这样,test.com的DNS服务器将得到Client的IP,再根据IP地址是网段是属于
         电信还是CNC的,决定返回www.test.com 的IP 1.1.1.1 还是 2.2.2.2
             如果是电信用户,则返回1。1。1。1,这样该电信Client最终得到www.test.com = 1.1.1.1 的A记录解析,从而通过电信网络访问www.test.com,这样就能达到我们所预期的目的。
       b,如果是递归查询,则比较麻烦, 因为最终向test.com 的dns服务器询问谁是www.test.com的,是Client DNS. 这样只能判定Client DNS是电信还是网通,而无法断定Client
是电信还是网通。   不过,由于网络接入的方式不一样,例如 网通的ADSL方式,其IP、DNS地址均由动态获取,这样此时 Client DNS服务器与Client应该是属于相同运营商IP,这样就能够通过判定Client DNS地址来大约断定Client所属运营商。
     但是假如某网通用户手工指定DNS,恰好又指定了一个电信的DNS服务器,这个时候,就比较麻烦了,因为将会从电信的链路上收到一个TCP连接,其源地址为网通IP。
     考虑此时是递归查询,所知Client DNS的IP地址为电信IP,则会返回1。1。1。1地址给与该 Client DNS,那么Client作为网通用户最终得到的IP将是 www.test.com=1.1.1.1 (该地址为电信地址) ,这样就会导致此用户得到错误的服务器地址。
     不过,好运的是,现在的大多数DNS服务器都是迭代查询,因为没有多少DNS服务器可以承受递归的流量,所以对于99%的用户来说,都能得到正确的地址解析,从而正确的访问服务器。

  目前手工配置DNS服务器来实现以上目的,好象只能有BIND能做到,不过需要自己开发一些相关工作流程,以及收集电信、网通IP地址段,工作内容比较复杂。
  好消息是,现在已经有相关的商业产品能够做到这一点。 如果网站的级别已经到达需要做链路负载均衡的话,我想这点钱BOSS还是会批准的吧:)

  有兴趣的话,可以跟我联系msn: moon_yagami@126.com  QQ11892426, 我们可以交流一下相关技术,也能提供完整的解决方案。

呵呵,不好不意思,AD一下,加入我的CDN联盟就可以了,免费的:)
对你这个很感兴趣,我的主机托管商提供是一个IP使用的方法...不知道可不可行..


QUOTE:
原帖由 imxae 于 2006-3-8 13:00 发表
对你这个很感兴趣,我的主机托管商提供是一个IP使用的方法...不知道可不可行..

网站内容如果不多,可以考虑.
具体联系我吧,再详谈.


QUOTE:
原帖由 imxae 于 2006-3-8 13:00 发表
对你这个很感兴趣,我的主机托管商提供是一个IP使用的方法...不知道可不可行..

呵呵,没有问题,有兴趣就跟我联系,MSN是 moon_yagami@126.com ,多多交流啊!
对于网站,我还看到过另外一种实现办法,做一个入口的网页比如www.test.com,在里面写一段代码,根据客户端的IP地址重定向到另外一个服务器上,比如可以用www1对应电信地址,www2对应网通地址。驱动之家就是这么做的。


QUOTE:
原帖由 japgone 于 2006-3-15 21:07 发表
对于网站,我还看到过另外一种实现办法,做一个入口的网页比如www.test.com,在里面写一段代码,根据客户端的IP地址重定向到另外一个服务器上,比如可以用www1对应电信地址,www2对应网通地址。驱动之 ...

这样做没有在DNS里做效率高,这样做势必有些用户开始打的时候慢些。
dns 服务器根据过来的数据源 选不同的结果回答
各种方法都有不同的好处,我这个方案最大的好处是可以提供与CDN的结合。
加油!