网站首页 | 控制面板 | 短消息 | 搜索 | 会员 | 帮助 | 社区 | 首页 | 无图版


常州五颜六色网络技术有限公司 -> 技术文档 -> freebsd 下双网卡冗余的解决方法 转到动态网页

--> 本页主题: freebsd 下双网卡冗余的解决方法 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题
deserts


头衔:大客部大客部

级别: 总版主
精华: 0
发帖: 327
威望: 2 点
金钱: 605 RMB
贡献值: 0 点
在线时间:328(小时)
注册时间:2006-01-01
查看作者资料 发送短消息 发送邮件 推荐此帖 引用回复这个帖子


freebsd 下双网卡冗余的解决方法

环境:两台中心交换机,开启vrrp双机热备模式,服务器 freebsd4.11,安装两块intel千兆网卡,分别接两台交换机的同一个vlan内的端口。
目的:一台交换机故障后,自动切换到备用交换机,服务器网卡随着切换到备用交换机,不中断网络。
实现方法,利用freebsd的ng_one2many 模块实现,具体方法如下:
__________________________________________________________
/sbin/kldload netgraph
/sbin/kldload ng_ether
/sbin/kldload ng_one2many
#/sbin/kldload ng_socket
/sbin/ifconfig em0 up
/sbin/ifconfig em1 up
/usr/sbin/ngctl mkpeer em0: one2many upper one
/usr/sbin/ngctl connect em0: em0:upper lower many0
/usr/sbin/ngctl connect em1: em0:upper lower many1
/usr/sbin/ngctl msg em1: setpromisc 1
/usr/sbin/ngctl msg em1: setautosrc 0
#failAlg=1 为负载均衡模式,不能实现容错; failAlg=2可以自动检测链路状态,自动切换
/usr/sbin/ngctl msg em0:upper setconfig "{ xmitAlg=1 failAlg=2 enabledLinks=[ 1 1] }"
/sbin/ifconfig em0 inet 10.140.202.13 netmask 0xffffff00
/sbin/route add default 10.140.202.1
__________________________________________________________
xmitAlg=1 两块网卡轮流发包,理论上可以增加输出带宽,实际上还是有些问题,在同一个网段不会有问题,经过路由器后会丢包,不知道什么原因
xmitAlg=2 两块网卡同时发同样的包,在数据传输上没有任何问题,但这样只会增加服务器和交换机的负担,达到的目的是两块网卡可以冗余。大流量的时候最好不用。
将/etc/rc.conf中的
defaultrouter=
ifconfig_em0=
等网卡设置注释掉,开机执行one2many.sh即可实现双网卡的冗余,正常情况下,两个网卡同时工作,负载均衡,当其中一个网卡链路不通时,自动转到另一个网卡工作。


常州电信/网通机房,100M共享/10M独享/1000M共享/100M独享/电信+网通双线路服务器托管

Tel:0519-86605212 QQ:8732391   5y6s Inc.
[楼 主] Posted:2007-06-01 20:56| 顶端


 常州五颜六色网络技术有限公司 -> 技术文档


快速发帖 顶端
内容
HTML 代码不可用

使用签名
Wind Code自动转换

[查看帖子长度]
标题:
表情:


     按 Ctrl+Enter 直接提交   


[ 常州五颜六色网络技术有限公司 ]
Copyright © 2005-2007 5y6s Inc. 苏ICP备05001866号 Powered by PHPWind 5.0.1

☏:0519-6605212 QQ: 点击这里给我发消息 /点击这里给我发消息 /点击这里给我发消息