- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第PAGE6页
在
在TC/BSD系统下使用CARP实现IP地址冗余
作者:关春雨
职务:华北区风电技术工程师
公司:BECKHOFF中国
邮箱:cy.guan@
日期:2024-04-02
摘要:
在工程实践中,通讯冗余配置情况下,会遇到通讯冗余的主机和备用机需要使用统一的IP地址对系统外的设备进行通讯。
本文介绍了在TC/BSD系统下,使用CARP实现通讯冗余的方法。
附件:
序号
文件名
备注
历史版本:
免责声明:
我们已对本文档描述的内容做测试。但是差错在所难免,无法保证绝对正确并完全满足您的使用需求。本文档的内容可能随时更新,如有改动,恕不事先通知,也欢迎您提出改进建议。
参考信息:
目录
TOC\o1-3\h\z\u1. CARP介绍 3
2. 系统方案 3
3. 控制器A的配置 3
3.1. 核心配置文件中添加对CARP的支持 3
3.2. 防火墙设置 4
3.3. 设置IP及共享IP 4
3.4. 系统设置 4
3.5. 配置信息查询 5
4. 测试步骤 5
4.1. 对共享IP地址11通讯测试 5
4.2. 主机故障通讯冗余切换测试 6
4.3. 故障恢复通讯切换 6
5. 附录 7
5.1. 倍福TC/BSD手册 7
5.2. FreeBSD手册 7
CARP介绍
通用地址冗余协议TheCommonAddressRedundancyProtocol(CARP)允许多个主机共享相同的IP地址和虚拟主机ID(VHID),以便为一个或多个服务提供高可用性。这意味着一个或多个主机可能会发生故障,而其他主机将透明地接管,以便用户不会看到服务故障。
系统方案
此系统有二个主机(控制器A/B)除了共享IP地址(11)外,每个主机都有自己的IP地址用于管理和配置。共享IP地址的所有计算机都具有相同的VHID(vhid1)。每个虚拟IP地址的VHID在网络接口的广播域中必须是唯一的。
笔记本电脑
笔记本电脑
IP地址:10
子网掩码:
控制器A
操作系统:TC/BSD
IP地址:1
11
子网掩码:
控制器B
操作系统:TC/BSD
IP地址:1
11
子网掩码:
控制器A的配置
核心配置文件中添加对CARP的支持
通过在/boot/loader.conf中为carp.ko内核模块添加一个条目来启用对CARP引导的支持:doasee/boot/loader.conf
在配置文件中,添加carp_load=YES。保存修改,重启生效后使用kldstat查看内核:
防火墙设置
通过在/etc/pf.conf中为CARP的支持,
doasee/etc/pf.conf
passinquickonigblinetprotocarpkeepstate(no-sync)
保存,使防火墙生效。
可以使用如下命令操作
doasservicepfstop关闭防火墙
doasservicepfstart打开防火墙
doaspfctl-sinfo查看信息
设置IP及共享IP
主机名、管理IP地址和子网掩码、共享IP地址和VHID都是通过向/etc/rc.conf添加条目来设置的。
doasee/etc/rc.conf
保存并生效。
系统设置
在/etc/sysctl.conf添加系统设置。
doasee/etc/sysctl.conf
添加net.inet.carp.preempt=1#(default0)
配置信息查询
控制器A:
控制器B:
测试步骤
对共享IP地址11通讯测试
IP-t:连续对IP地址执行ping命令:
发现可以在二个控制器中使用同一个IP不会产生冲突。
此时查询控制器A和控制器B状态,可以看到控制A(1)处于Master状态,控制器B(1)处于Backup状态。
主机故障通讯冗余切换测试
拔出主机控制器A(11)的网线,查看ping的状态及控制器的CARP的状态信息:
可以看到通讯快速恢复,在backup状态的控制器B(11)状态变为Master接管了通讯。
故障恢复通讯切换
插回主机控制器A(11)的网线,查看ping的状态及控制器的CARP的状态信息:
可以看到通讯几乎没有中断切快速恢复,在Master状态的控制器B(11)状态变为backup,控制器A重新变为Master接管了通讯服务。
附录
倍福TC/BSD手册
BeckhoffInformationSystem-English
您可能关注的文档
- 使用AND_THEN与OR_ELSE为内存安全增设防护.docx
- 使用AX5000 Digital IO输出功能.pdf
- 使用C#实现WINCE系统下的ADS通讯.docx
- 使用C++实现WINCE系统下的ADS通讯.docx
- 使用Check function定位出错代码(TwinCAT 3).docx
- 使用CheckBounds定位出错代码.pdf
- 使用CU2508实现EtherCAT冗余(TC3)(带IO)v1.41.docx
- 使用EK9160通过Mqtt通讯实现“云IO”.docx
- 使用EL6631开启KUKA机器人外部自动运行功能.docx
- 使用FB_EcSoeReadWrite修改AX5000的PID参数.docx
文档评论(0)