免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: lgjchina
打印 上一主题 下一主题

[网络管理] linux 双网卡双线路由方案的问题? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2012-01-29 17:23 |只看该作者
也想知道你那个源路由是如何实现的

论坛徽章:
0
12 [报告]
发表于 2012-02-01 17:39 |只看该作者
本帖最后由 lgjchina 于 2012-02-01 17:46 编辑

回复楼上的
这几天又研究了一下,发现一个非常简便的方案。
若主机A linux eth0为电信,电信网关为192.168.0.30,eth1为联通,联通网关为192.168.1.30

eth0  IPADDR=192.168.0.10
          NETMASK=255.255.255.0

eth1  IPADDR=192.168.1.10
          NETMASK=255.255.255.0
修改IP转发文件
   # vi /etc/sysctl.conf
     net.ipv4.ip_forward = 1
   增加2个路由表,电信和联通
      # vi /etc/iproute2/rt_tables
      251 dianxin
      252 liantong

  1.  设置电信和联通的路由
      ip route add default via 192.168.0.30 dev eth0 table dianxin
      ip route add default via 192.168.1.30 dev eth1 table liantong

  2.  添加策略路由
     ip rule add from 192.168.0.10 table dianxin
     ip rule add from 192.168.1.10 table liantong
注: 我没有添加默认路由,所以主机自己主动访问外部的时候 是没有路由,不通的,不过可以响应外部的请求。
配置完成。

下面是虚拟机的实验。
在虚拟机上实验了一下基本可行,不过没有在生产环境上使用。

模拟环境:
主机A LINUX
          net1 (vmware虚拟网卡1)
          eth0  IPADDR=192.168.0.10
          NETMASK=255.255.255.0

          net2 (vmware虚拟网卡2)
          eth1  IPADDR=192.168.1.10
          NETMASK=255.255.255.0

主机B  windows 2003 系统,充当电信网关的
          网卡1,net1 (vmware虚拟网卡1)
          ip 192.168.0.30
              255.255.255.0

         网卡2, net3 (vmware虚拟网卡3) 接客户机
         ip  192.168.3.30
              255.255.255.0
        启用了路由和远程访问,就相当于一台路由器。

客户机C  windows 2003 系统
         网卡1  net3 (vmware虚拟网卡3)
                   ip  192.168.3.50
                         255.255.255.0
                  网关: 192.168.3.30   指向了B
linux 上的操作
修改IP转发文件
   # vi /etc/sysctl.conf
     net.ipv4.ip_forward = 1
   增加2个路由表,电信和联通
      # vi /etc/iproute2/rt_tables
      251 dianxin
      252 liantong

  1.  设置电信和联通的路由
      ip route add default via 192.168.0.30 dev eth0 table dianxin
      ip route add default via 192.168.1.30 dev eth1 table liantong
在我做到这一步后,我在 客户机上ping 192.168.0.10 的时候,ping不通。然后我添加了下面的策略路由之后,通了。
(虽然linux的 网卡2 192.168.1.10 没有测试,不过该网卡是活动的)

  2.  添加策略路由
     ip rule add from 192.168.0.10 table dianxin 注意是 linux主机的网卡ip地址
     ip rule add from 192.168.1.10 table liantong 注意是 linux主机的网卡ip地址

若有错误之处请指出。




论坛徽章:
0
13 [报告]
发表于 2012-02-06 16:40 |只看该作者
目前我们在用这个方案,前面还需加个域名智能解析,让网通用户走网通ip,电信用户走电信ip

论坛徽章:
0
14 [报告]
发表于 2012-02-07 14:29 |只看该作者
回复楼上的,的确是要做智能dns,解析到相应的ip上。

论坛徽章:
0
15 [报告]
发表于 2012-05-16 15:43 |只看该作者
以前知道有策略路由和源地址路由,一直不知道怎么配的,看了此帖终于知道了,要实现“电信来电信出,联通来联通出”,按12楼的方法就对了。

1楼所贴配置错误之处在于192.168.0.1和10.0.0.1是网关地址,其既不是源地址,也不是目的地址。
源地址是对于回应的数据包来说的,请求的目的地址是192.168.0.2,则回应的源地址就是192.168.0.2,
所以:
ip rule add from 192.168.0.1 table tel
ip rule add from 10.0.0.1 table cnc
应改为
ip rule add from 192.168.0.2 table tel
ip rule add from 10.0.0.2 table cnc

论坛徽章:
0
16 [报告]
发表于 2012-05-16 17:28 |只看该作者
围观一下 工作上会用到双卡 不过我们的简单
route add default gw 10.10.10.254 dev eth0
route add -net 88.88.129.0 netmask 255.255.255.0 gw 88.88.129.1 dev eth1

论坛徽章:
0
17 [报告]
发表于 2012-07-11 20:50 |只看该作者
我也遇到同样问题,不知道哪位高手能把完美的解决办法贴出来。我简单设了静态路由。
可以ping通,但跑程序就出错了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP