借助AD实现WOC集群(双活)部署
  

Windroid 15307

{{ttag.title}}
本帖最后由 Windroid 于 2018-8-2 18:34 编辑

项目背景
客户项目前期采购了WOC单臂模式部署用来与分支构建Sangfor VPN隧道并为内网视频会议加速以及传输分支大量视频流备份,之后因项目分支数急剧增加以及扩容,再次购买了相同型号的WOC准备采用双机部署实现高可用。
现有拓扑
电信移动双ISP进线,出口使用AD网关部署,下接NGAF透明部署,WOC单独一个VLAN,单臂部署。
问题
WOC双机目前只支持“主备”模式,对于大量分支接入的场景,最终还是只有一台能实现用户接入显然并不能有效解决问题,且备机的计算资源又浪费掉了
对于这个问题,提出了两种解决方案:
【方案一】将大量用户均分成两部分,然后两台WOC使用不同的WebAgent端口来实现将分支人为地分担到两台设备上接入
优点:初步解决了单台负载过高,并利用了所有计算资源(相对于主备模式双机),分担了WOC负载。
缺点:并没有实现真正地负载均衡以及高可用,如果接入用户恰好集中在一台,还是会造成资源浪费,当其中一台设备宕机时或不可用时,依然需要人工干预;已有地大量分支设备配置需要调整,工作量大,需要借助SC等其他设备。
【方案二】使用出口AD的应用负载功能,将两台WOC作为资源池中的两个节点,利用AD的智能调度功能,实现对WOC的负载均衡
优点:实现了多台WOC的“集群”功能,并有效分担接入负载,当其中一台WOC出现故障或离线时,隧道能够重新建立,保证业务的高可用;实现了WOC节点的简易横向扩展,当分支数继续增加时,理论上可以再增加同样的WOC进入“WOC池”,使WOC或其他VPN设备更容易应对大量分支或高并发场景。
缺点:由于WOC并非真正意义上的了解到自己在“集群”当中,因此关于类似抢占性等高可用特性均不能实现,在发生切换后,除非且换后设备也发生故障,否则隧道将一直在切换后设备上保持;由于WOC目前不支持OSPF等高级动态路由特性(仅有限支持RIPv2),因此VPN路由的问题将成为一大挑战。

方案二拓扑

方案二实现步骤
先按WOC单臂部署流程正常配置WOC
1、确认硬件型号,固件版本等基本信息,一致后从一台设备中导出配置并在另一台设备上导入,保证两个WOC“节点”配置一致。
2、分别修改LAN口地址(注意:LAN口地址必须为标准的有类地址,RIP无法在采用了VLSM或CIDR的子网内运行,如:172.16.5.0/24这样的子网,但172.16.5.0/16则可以),以及设备名称,以方便辨认。
3、配置VPN服务端;填写需要宣告给分支的本地子网列表。

4、添加接入用户,接入ACL策略等(略)

现在开始配置AD
先按AD标准网关部署流程,正常配置AD,确保多链路接入均正常,内网正常访问Internet
5、在【应用负载】内分别新建类型为TCP和UDP的服务Sangfor VPN,端口号即WebAgent端口,原因是VPN接入时既可以使用TCP也可以使用UDP,在不清楚分支接入方式时,可以在WOC VPN状态里查看


6、配置地址组,这部根据需要配,没啥好说的
7、配置会话保持,这里选择SoureIP(或单独一个针对接下来虚拟服务的其他会话保持策略),考虑到隧道不应当轻易改变,因此时间调到最大了,也可根据需要调整其他合适的值
8、新建一个针对WebAgent的节点监视器,让其监视WebAgent端口就行了,其他保持默认
9、新建结点池,并将两个WOC作为节点加入结点池,关联上监视器。其中:节点选择策略选择哈希,哈希字段为源IP地址(SRC_IP),会话保持选择源IP地址(sourceip)


10、新建前置调度策略,将对应的服务与结点池关联

11、最后新建要发布的虚拟服务,考虑到VPN隧道建立只是单纯的下四层应用,因此我选择了“四层服务”,其他两种可行性没有尝试。注意,不要使用自动SNAT,否则由于AD的代理特性,WOC上的VPN状态所获得的对端公网IP将全部为AD内网口地址。此外,这里实际测试发现即使不勾选前置调度策略也不影响。

以上配置全部完成后,隧道将会建立。此时可以通过在AD上查看对应的节点会话数或WOC上的VPN接入状态检查调度情况和接入情况。但是,问题并没有就此结束,由于WOC设备和其他要访问的业务服务器跨越了三层环境,因此隧道的建立并不能保证业务可以正常访问。分析如下:
由于隧道建立的WOC不确定,因此每个WOC从各个分支学习到的VPN路由均不相同,对于核心交换来说,其并不知道具体的VPN路由信息,因此无法使用静态路由将到VPN分支的路由指向某个具体的WOC,在中心端访问分支时,会出现问题。即使VPN分支的网段已规划并容易汇总,但是哪怕使用汇总后的路由,核心交换也不能确定指向,若使用优先级相同的“浮动路由”——即将到汇总后的VPN路由分别指向两台WOC的LAN口地址,则会导致所有接入分支间歇性丢包。
因此这种集群部署的场景,静态路由将无能为力,而WOC支持RIPv2动态路由协议,下面就用该协议解决路由问题。

实现思路:
由于VPN路由所在设备的不确定性,使用静态路由已不能满足需求,而WOC唯一支持的动态路由协议仅有RIPv2,因此考虑在两台WOC开启RIP功能,并周期性将各自的VPN路由重分发到核心网络内,同时,RIPv2支持触发更新机制,当建立分支隧道的WOC发生变动或分支离线时,新的路由信息将被自动通告,此后,核心交换将会通过周期性发送的RIP通告,自动学习到去往VPN网段的下一跳接口(WOC 1或WOC 2)如图:
12、分别登录WOC,在【系统】-【路由设置】-【动态路由】内,勾选“启用路由信息协议(RIP)”。注意这里的IP地址应填写LAN口对端设备的地址,也就是RIP邻居的地址(如果填写0.0.0.0,RIP Repose报文将以广播报文发送,但RIPv2规定使用组播地址224.0.0.9,因此广播是不合理的)
勾选“触发定时更新”,这里默认的时间是20s,但RIPv2通常的更新周期是30s,因此这里最好使用30s。
到这里,需要400或者原厂工程师们协助一下,进入后台修改WOC RIP配置文件,将其中关于开销的值设置为其他值,因为WOC默认构造的RIP报文,Metric=0,对于RIP来说,使用跳数来作为Metric值,Metric应在1~15范围内,0显然是不合理的,并不会被对端设备采纳。配置完成后,单击【保存并生效】,重启设备路由。

13、接下来需要在核心交换上连WOC的vlan接口上也启动RIP,以华为三层交换机为例,配置命令如下

[Huawei-Vlanif] interface Vlanif xxx #进入对应的VLAN接口配置视图
[Huawei-Vlanif100] rip 1 #启动RIP进程
[Huawei-rip-1] version 2 #配置RIP版本为RIPv2
[Huawei-rip-1] undo summary #关闭路由自动汇总,这步骤很关键,防止WOC通告过来的分支路由被核心交换机自动汇总
[Huawei-rip-1]network xxx.xxx.xxx.xxx #在对应的接口上启动RIP,这里填写对应的VLAN接口地址(与WOC同网段的vlan子网

14、全部配置完成后,使用display ip routing-table protocol rip命令即可查看到交换机从WOC上学习到的RIP路由,如下图:
观察NextHop,发现这些路由都集中在两台WOC上,说明成功学习到了路由信息。以后分支与总部的访问,数据包到核心后,将会根据该路由表,决定具体应交由哪个WOC处理
至此,采用AD实现WOC集群部署就全部完成,现在可以登录AD查看节点状态,并检查中心与分支的通信情况了
AD:


WOC:


其他说明与建议
1、RIP是很古老的动态路由协议,在目前的组网方案中已几乎不再使用。且周期性地交换整张路由表,对设备性能和网络带宽的占用本身也不能被忽视。
2、基于1,希望未来的WOC或其他VPN产品也加入对现代动态路由协议(OSPF、BGP、IS-IS等)的支持,以便产品更好地适应中大型组网或高并发多分支组网的需要。
3、WOC的RIP配置文件关于开销的默认配置有误,导致在WebUI下即使全部正常配置,RIP也不能正常启动,需要借助原厂技术支持才能解决。
4、采用这种方案,WOC的加速功能可能会失效(并未做相关测试),因为对端需要配置中心的WOC内网地址,但由于集群的存在,该地址不确定,需要使用WOC加速功能的场景谨慎使用。

QQ截图20180716220857.png (74.94 KB, 下载次数: 324)

QQ截图20180716220857.png

30395b4ca77108b09.png (9.77 KB, 下载次数: 311)

30395b4ca77108b09.png

QQ截图20180716221245.png (69.19 KB, 下载次数: 350)

QQ截图20180716221245.png

打赏鼓励作者,期待更多好文!

打赏
5人已打赏

zjwshenxian 发表于 2024-10-10 19:39
  

这么好的干货帖,差点错过了!感谢楼主分享,辛苦了:爱你:
头像被屏蔽
新手741261 发表于 2020-3-7 10:19
  
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
新手780102 发表于 2020-3-4 10:09
  
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
司马缸砸了光 发表于 2020-2-25 12:02
  
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
新手031815 发表于 2020-2-25 11:50
  
提示: 作者被禁止或删除 内容自动屏蔽
秋水伊人 发表于 2019-4-5 22:34
  
谢谢分享
蓝海 发表于 2019-4-5 22:22
  
感谢分享
秋水伊人 发表于 2019-3-21 16:00
  
谢谢分享
蓝海 发表于 2019-3-20 17:20
  
通俗易懂,感谢分享!
发表新帖
热门标签
全部标签>
技术盲盒
西北区每日一问
安全效果
干货满满
每日一问
技术笔记
新版本体验
【 社区to talk】
产品连连看
功能体验
技术咨询
GIF动图学习
标准化排查
2023技术争霸赛专题
每周精选
信服课堂视频
通用技术
自助服务平台操作指引
秒懂零信任
技术晨报
安装部署配置
答题自测
原创分享
升级&主动服务
社区新周刊
POC测试案例
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
高手请过招
高频问题集锦
全能先锋系列
云化安全能力

本版达人

新手61940...

本周建议达人

zhao_HN

本周分享达人

ZSFKF

本周提问达人