CN117439968A - 一种虚拟ip地址跨网段部署的方法 - Google Patents

一种虚拟ip地址跨网段部署的方法 Download PDF

Info

Publication number
CN117439968A
CN117439968A CN202311382161.7A CN202311382161A CN117439968A CN 117439968 A CN117439968 A CN 117439968A CN 202311382161 A CN202311382161 A CN 202311382161A CN 117439968 A CN117439968 A CN 117439968A
Authority
CN
China
Prior art keywords
vip
bgp
gateway
message
route
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311382161.7A
Other languages
English (en)
Inventor
刘聪然
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongdian Cloud Computing Technology Co ltd
Original Assignee
Zhongdian Cloud Computing Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongdian Cloud Computing Technology Co ltd filed Critical Zhongdian Cloud Computing Technology Co ltd
Priority to CN202311382161.7A priority Critical patent/CN117439968A/zh
Publication of CN117439968A publication Critical patent/CN117439968A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种虚拟IP地址跨网段部署的方法。本方法包括当VIP发生切换时,keepalived控制发送免费ARP报文告知网关VIP所在服务器MAC地址;BGP路由控制器发送BGP路由至网关通告VIP所在的服务器IP地址;网关根据BGP路由协议继续向客户端通告路由;客户端收到该路由后将访问VIP的流量由网关1切换至网关2,并通过网关2到达备服务器。本方法基于BGP路由通告协议发布VIP路由,使VIP跨机房部署变得更加简便易行,本方法中通过监听操作系统Netlink消息发布BGP路由的方案实现了路由发布无需人为介入,同时实现了VIP路由的实时切换,减少了服务不可用时间,提升了服务的高可用性。

Description

一种虚拟IP地址跨网段部署的方法
技术领域
本发明属于IP地址部署方法技术领域,尤其涉及一种虚拟IP地址(VIP)跨网段部署的方法。
背景技术
虚拟IP地址(VIP)是实现高可用系统的一种方案,高可用的目的是通过技术手段避免因为系统出现故障而导致停止对外服务,一般实现方式是部署备用服务器,在主用服务器出现故障时接管业务。VIP就是用于向客户提供一个固定的虚拟IP地址,这个VIP默认配置在主用服务器上,当主用服务器故障时,通过keepalived(一种管理虚拟IP地址的软件)控制,将VIP配置到备用服务器,实现VIP的漂移,以避免后端服务器出现故障时对客户端的影响。当前情况下,一般要求VIP与后端服务器IP地址处于同一网段,当前部署方式如图1所示,客户端只需能与主/备服务器以及VIP所在的网段通信,就能正常访问部署在主/备服务器上的业务。而要求VIP与后端服务器IP处于同一网段的原因是因为VIP所在的服务器会发送免费ARP报文(用于通告IP地址与MAC地址映射关系,仅相同网段内设备能收到),告知网关VIP目前所在的服务器MAC地址,客户端请求VIP将发送至服务器网段的网关,从而通过网关访问VIP。
但是,随着业务对高可用系统的要求日益提升,为了避免当主/备服务器部署在同一机房时,出现机房故障导致后端服务无法访问的情况,可能要求主/备服务器跨机房部署,在这种情况下主/备服务器以及VIP就可能不在同一网段,如果仅部署keepalived,将会出现VIP无法提供服务的情况,如图2所示,主/备服务器与VIP均为不同网段,主服务器网关为网关1,备服务器网关为网关2,当VIP出现切换时,备服务器发送免费ARP告知网关2,目前VIP(192.168.2.2)在备用服务器上,但是网关2无法告知客户端VIP在备用服务器上,导致客户端无法访问VIP。
发明内容
为了克服现有虚拟IP地址(VIP)部署方法存在的上述缺陷,本发明提出了一种新的虚拟IP地址(VIP)跨网段部署的方法,本方法基于BGP路由通告协议发布VIP路由,提供了VIP跨网段部署的方案,本方法中BGP路由控制器基于操作系统Netlink消息实现了VIP路由实时切换,减少了服务不可用时间,提高了服务的高可用性。
具体地,本发明提供了一种虚拟IP地址跨网段部署的方法,本方法包括:
S1.当VIP发生切换时,keepalived控制发送免费ARP报文,告知网关VIP所在服务器MAC地址;
S2.由BGP路由控制器发送BGP路由至网关通告VIP所在的服务器IP地址;
S3.网关根据BGP路由协议继续向客户端通告路由;
S4.客户端收到该路由后将访问VIP的流量由网关1切换至网关2,并通过网关2到达备服务器。
进一步地,根据本发明的一些实施例,本发明虚拟IP地址跨网段部署的方法步骤S4中所述网关1用于控制主服务器,所述网关2用于控制备服务器。
进一步地,本发明虚拟IP地址跨网段部署的方法步骤S2中所述由BGP路由控制器发送BGP路由至网关通告VIP所在的服务器IP地址,包括:
S21.当BGP路由控制器启动时自动监听操作系统的Netlink消息;
S22.当VIP发生切换时,keepalived将VIP配置到指定网卡,操作系统发送网卡增加IP的Netlink消息;
S23.当BGP路由控制器接收到该Netlink消息后,解析Netlink消息,判断该网卡上配置的VIP是否为指定的VIP;
S24.如果是指定的VIP就发送VIP的BGP路由至网关。
进一步地,根据本发明的一些实施例,本发明虚拟IP地址跨网段部署的方法中所述BGP路由控制器包括Netlink消息监听模块、BGP配置模块和BGP消息发送模块。
进一步地,根据本发明的一些实施例,本发明虚拟IP地址跨网段部署的方法中所述BGP路由控制器的工作过程包括:
(1)BGP路由控制器启动后,BGP消息发送模块开始监听BGP配置信息;
(2)Netlink消息监听模块收到操作系统发送的Netlink消息后解析Netlink消息,并将网卡增加VIP的消息发送至BGP配置模块;
(3)BGP配置模块收到该消息后修改BGP配置;
(4)BGP消息发送模块收到BGP配置更新后,根据新的配置发送VIP的BGP路由至网关。
进一步地,本发明还涉及上述虚拟IP地址跨网段部署的方法在Kubernetes容器集群管控节点的跨机房高可用部署中的应用。
另外,本发明还提供了一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述程序被处理器执行时实现上述的虚拟IP地址跨网段部署的方法的步骤。
另一方面,本发明还提供了一种虚拟IP地址跨网段部署系统,本系统包括:
keepalived控制模块:当VIP发生切换时,发送免费ARP报文告知网关VIP所在服务器MAC地址,同时将VIP配置到指定网卡;
BGP路由控制器模块:发送BGP路由至网关通告VIP所在的服务器IP地址。
进一步地,根据本发明的一些实施例,本发明虚拟IP地址跨网段部署系统中所述BGP路由控制器模块包括:
Netlink消息监听子模块:接收操作系统发送的Netlink消息并解析Netlink消息,判断网卡上配置的VIP是否为指定的VIP,然后将网卡增加VIP的消息发送至BGP配置子模块;
BGP配置子模块:修改BGP配置;
BGP消息发送子模块:监听BGP配置信息,接收到BGP配置更新后,根据新的配置发送VIP的BGP路由至网关。
上述各模块按照前述的VIP跨网段部署的方法实施运行。
综上,本发明虚拟IP地址跨网段部署的方法具有以下优点:
(1)本方法基于BGP路由通告协议发布VIP路由,提供VIP跨网段访问的方案,解决了VIP跨网段部署客户端由于没有VIP的路由无法访问的问题,使VIP跨机房部署变得更加简便易行,有力提升了服务的高可用性。
(2)本方法中通过监听操作系统Netlink消息发布BGP路由的方案自动实现了路由发布且无需人为介入,同时实现了VIP路由的实时切换,降低了服务不可用时间,进一步提升了服务的高可用性。
附图说明
为了更清楚地说明背景技术和本发明实施例的技术方案,下面对背景技术和本发明实施例叙述中需要使用的附图作简要介绍,显而易见地,下述附图仅是本发明中记载的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中VIP与后端服务器IP地址部署方式示意图(VIP与后端服务器IP地址处于同一网段)。
图2为现有技术中主/备服务器与VIP部署方式示意图(主/备服务器与VIP均为不同网段,如果仅部署keepalived,将会出现VIP无法提供服务的情况)。
图3为本发明方法的实施流程图。
图4为本发明方法的设计框架示意图。
图5为本发明方法的工作过程示意图。
图6为本发明方法中BGP路由发送流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本发明的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例,本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
同时,应理解,本发明的保护范围并不局限于下述特定的具体实施方案;还应当理解,本发明实施例中使用的术语是为了描述特定的具体实施方案,而不是为了限制本发明的保护范围。
实施例1:一种虚拟IP地址(VIP)跨网段部署的方法
如图3所示,本发明提出了一种基于BGP路由通告的VIP跨网段部署方案,目的是解决VIP跨网段部署时客户端无法访问的问题。
具体而言,如图4所示,当VIP发生切换时,keepalived控制发送免费ARP报文,告知网关VIP所在服务器MAC地址的同时由BGP路由控制器发送BGP路由通告VIP所在的服务器IP地址,网关将根据BGP路由协议继续向客户端通告路由,当客户端收到该路由后将访问VIP的流量从网关1切换至网关2,最终通过网关2到达备服务器。
如图5所示,BGP路由控制器启动时将监听操作系统的Netlink消息,当发生VIP切换时,keepalived将VIP配置到指定网卡,此时操作系统将发送网卡增加IP的Netlink消息,BGP路由控制器收到该Netlink消息后,解析该Netlink消息,判断网卡上配置的IP是否为指定的VIP,如果是指定VIP就发送VIP的BGP路由至网关。BGP路由控制器内部分为3个模块:Netlink消息监听模块、BGP配置模块以及BGP消息发送模块,具体VIP的BGP路由发送流程如图6所示,BGP路由控制器启动后,BGP消息发送模块将监听BGP配置信息,Netlink消息监听模块收到Netlink消息后解析Netlink消息,并将网卡增加VIP的消息发送至BGP配置模块,BGP配置模块收到该消息后修改BGP配置,当BGP消息发送模块收到BGP配置更新后,将根据新的配置发送VIP的BGP路由至网关。
举例来说,将本发明提出的方案实际应用于Kubernetes容器集群管控节点的跨机房高可用部署中,Kubernetes容器集群管控节点一般有3个节点,在跨机房高可用部署方案中3个节点分别置于3个不同机房A、B、C中,3个机房的网段各不相同;3个节点分别安装keepalived用于控制VIP主节点的选取,以及BGP路由控制器用于发送VIP的BGP路由,由此对外暴露VIP供客户端访问Kubernetes服务。假定初始状态下VIP位于A机房的管控节点上,当A机房断电或出现网络异常时,A机房内管控节点keepalived向B、C机房管控节点keepalived发送的心跳报文超时,B、C机房的管控节点keepalived将会选取新的VIP主节点,假定此时keepalived选取新的VIP主节点为B机房的管控节点,VIP将会配置在B机房管控节点的网卡上,B机房的管控节点上安装的BGP路由控制器通过监听Netlink消息得知VIP配在该节点上,BGP路由控制器将会重新配置BGP路由规则并发送BGP路由,这样VIP就完整地从A机房管控节点切换至B机房管控节点,客户端能继续通过VIP访问Kubernetes集群,整个故障切换流程在秒级内完成。
实施例2:一种虚拟IP地址(VIP)跨网段部署系统
本系统包括:
keepalived控制模块:当VIP发生切换时,发送免费ARP报文告知网关VIP所在服务器MAC地址,同时将VIP配置到指定网卡;
BGP路由控制器模块:发送BGP路由至网关通告VIP所在的服务器IP地址;BGP路由控制器模块包括:
(1)Netlink消息监听子模块:接收操作系统发送的Netlink消息并解析Netlink消息,判断网卡上配置的VIP是否为指定的VIP,然后将网卡增加VIP的消息发送至BGP配置子模块;
(2)BGP配置子模块:修改BGP配置;
(3)BGP消息发送子模块:监听BGP配置信息,接收到BGP配置更新后,根据新的配置发送VIP的BGP路由至网关。
上述各模块按照实施例1所述的VIP跨网段部署的方法实施运行。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰获得等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均应包含在本发明的权利要求保护范围之内。

Claims (9)

1.一种虚拟IP地址跨网段部署的方法,其特征在于,所述方法包括:
S1.当VIP发生切换时,keepalived控制发送免费ARP报文,告知网关VIP所在服务器MAC地址;
S2.由BGP路由控制器发送BGP路由至网关通告VIP所在的服务器IP地址;
S3.网关根据BGP路由协议继续向客户端通告路由;
S4.客户端收到该路由后将访问VIP的流量由网关1切换至网关2,并通过网关2到达备服务器。
2.根据权利要求1所述的虚拟IP地址跨网段部署的方法,其特征在于,步骤S4中所述网关1用于控制主服务器,所述网关2用于控制备服务器。
3.根据权利要求1所述的虚拟IP地址跨网段部署的方法,其特征在于,步骤S2中所述由BGP路由控制器发送BGP路由至网关通告VIP所在的服务器IP地址,包括:
S21.当BGP路由控制器启动时自动监听操作系统的Netlink消息;
S22.当VIP发生切换时,keepalived将VIP配置到指定网卡,操作系统发送网卡增加IP的Netlink消息;
S23.当BGP路由控制器接收到该Netlink消息后,解析Netlink消息,判断该网卡上配置的VIP是否为指定的VIP;
S24.如果是指定的VIP就发送VIP的BGP路由至网关。
4.根据权利要求3所述的虚拟IP地址跨网段部署的方法,其特征在于,所述BGP路由控制器包括Netlink消息监听模块、BGP配置模块和BGP消息发送模块。
5.根据权利要求4所述的虚拟IP地址跨网段部署的方法,其特征在于,所述BGP路由控制器的工作过程包括:
(1)BGP路由控制器启动后,BGP消息发送模块开始监听BGP配置信息;
(2)Netlink消息监听模块收到操作系统发送的Netlink消息后解析Netlink消息,并将网卡增加VIP的消息发送至BGP配置模块;
(3)BGP配置模块收到该消息后修改BGP配置;
(4)BGP消息发送模块收到BGP配置更新后,根据新的配置发送VIP的BGP路由至网关。
6.权利要求1-5任一项所述的虚拟IP地址跨网段部署的方法在Kubernetes容器集群管控节点的跨机房高可用部署中的应用。
7.一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述程序被处理器执行时实现权利要求1-5任一项所述的虚拟IP地址跨网段部署的方法的步骤。
8.一种虚拟IP地址跨网段部署系统,其特征在于,所述系统包括:
keepalived控制模块:当VIP发生切换时,发送免费ARP报文告知网关VIP所在服务器MAC地址,同时将VIP配置到指定网卡;
BGP路由控制器模块:发送BGP路由至网关通告VIP所在的服务器IP地址。
9.根据权利要求8所述的虚拟IP地址跨网段部署系统,其特征在于,所述BGP路由控制器模块包括:
Netlink消息监听子模块:接收操作系统发送的Netlink消息并解析Netlink消息,判断网卡上配置的VIP是否为指定的VIP,然后将网卡增加VIP的消息发送至BGP配置子模块;
BGP配置子模块:修改BGP配置;
BGP消息发送子模块:监听BGP配置信息,接收到BGP配置更新后,根据新的配置发送VIP的BGP路由至网关。
CN202311382161.7A 2023-10-24 2023-10-24 一种虚拟ip地址跨网段部署的方法 Pending CN117439968A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311382161.7A CN117439968A (zh) 2023-10-24 2023-10-24 一种虚拟ip地址跨网段部署的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311382161.7A CN117439968A (zh) 2023-10-24 2023-10-24 一种虚拟ip地址跨网段部署的方法

Publications (1)

Publication Number Publication Date
CN117439968A true CN117439968A (zh) 2024-01-23

Family

ID=89549235

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311382161.7A Pending CN117439968A (zh) 2023-10-24 2023-10-24 一种虚拟ip地址跨网段部署的方法

Country Status (1)

Country Link
CN (1) CN117439968A (zh)

Similar Documents

Publication Publication Date Title
JP5759024B2 (ja) 地理的冗長ゲートウェイでセッションを復元するシステムおよび方法
US7894335B2 (en) Redundant routing capabilities for a network node cluster
US6397260B1 (en) Automatic load sharing for network routers
JP3224745B2 (ja) 高信頼化ネットワークシステム及びサーバ切り替え方法
US20080225699A1 (en) Router and method of supporting nonstop packet forwarding on system redundant network
KR101691759B1 (ko) 가상 섀시 시스템 제어 프로토콜
CN112839072B (zh) 数据处理方法、装置、系统、计算机设备和可读介质
JPWO2016121293A1 (ja) ネットワーク中継装置、ゲートウェイ冗長化システム、プログラム、および冗長化方法
US7251813B2 (en) Server apparatus having function of changing over from old to new module
CN101227333B (zh) 一种容灾网管系统及其网管客户端的登陆方法
CN111371625A (zh) 一种双机热备的实现方法
CN100563263C (zh) 在网络存储业务中实现系统高可用性的方法和系统
EP4164197A1 (en) Virtual ip management method and apparatus, electronic device and storage medium
CN114124667A (zh) 一种双网口冗余备份方法及系统
CN117439968A (zh) 一种虚拟ip地址跨网段部署的方法
CN109412943B (zh) 一种sdn控制器集群流量处理方法、装置、设备及存储介质
US6970471B1 (en) Communicating using IP addressing for redundant telephony modules
CN114268581A (zh) 一种实现网络设备高可用和负载分担的方法
CN104158694A (zh) DHCPv6服务器的热备方法和装置
EP4184822A1 (en) Method and apparatus for keeping user terminal alive
CN114143905B (zh) 会话建立方法、通信系统、电子设备和存储介质
US11575570B2 (en) Communication apparatus, redundant communication system, and communication control method
WO2024065424A1 (zh) 链路优化方法和系统
CN117692458A (zh) 一种基于标签的分布式负载均衡实现方法及系统
JP2006054766A (ja) 冗長構成ネットワークシステムにおける制御データ共有方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination