CN113691645B - 一种基于m-lag环境实现nat的方法、设备、存储介质 - Google Patents
一种基于m-lag环境实现nat的方法、设备、存储介质 Download PDFInfo
- Publication number
- CN113691645B CN113691645B CN202110939930.3A CN202110939930A CN113691645B CN 113691645 B CN113691645 B CN 113691645B CN 202110939930 A CN202110939930 A CN 202110939930A CN 113691645 B CN113691645 B CN 113691645B
- Authority
- CN
- China
- Prior art keywords
- message
- nat
- data information
- session
- equipment
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000002776 aggregation Effects 0.000 claims description 9
- 238000004220 aggregation Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 7
- 238000013519 translation Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种基于M‑LAG环境实现NAT的方法、设备、存储介质,该方法包括:通过M‑LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M‑LAG中的主设备;通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备。
Description
技术领域
本申请涉及计算机网络领域,尤其涉及一种基于M-LAG环境实现NAT的方法、设备、存储介质。
背景技术
在实际二层网络中,经常采用链路冗余的方案,规避单台设备故障导致整个网络系统故障的问题。为了解决实际二层网络中可靠性低的问题,可以实施交换机冗余方案,在两台交换机设备间使能跨设备链路聚合组(Multichassis Link Aggregation Group,M-LAG)功能,使两台交换机逻辑上如同一台交换机,其中的所有端口共同参与流量转发,在达到冗余备份的同时,也扩充了系统的性能。
为了解决IP地址资源不足的问题,NAT将内网地址映射为公网地址,从而达到内网访问外网的目的。随着硬件性能的提高,具有硬件NAT功能的交换机被广泛应用。
但在M-LAG场景下,由于交换机设备的IP地址不统一,难以实现NAT功能,在M-LAG中使用NAT功能还没有很好的解决方案。
发明内容
本申请提供了一种基于M-LAG环境实现NAT的方法、设备、存储介质,解决了在M-LAG环境中难以实现NAT的技术问题。
一种基于跨设备链路聚合组M-LAG环境实现网络地址转换NAT的方法,应用于跨设备链路聚合组M-LAG环境中,包括:
通过M-LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备;
通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备。
在本申请的一种实施例中,所述通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备,具体包括:通过所述备设备中的NAT模块解析所述第一报文获取所述第一报文的第一数据信息;通过对等链路Peer-link接口将所述第一数据信息发送至所述主设备。
在本申请的一种实施例中,所述通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第二数据信息生成所述第二报文对应的第二NAT会话,具体包括:通过所述主设备中的NAT模块解析所述第二报文获取所述第二报文的第二数据信息;根据配置的NAT映射关系和所述第二数据信息生成所述第二NAT会话。
在本申请的一种实施例中,所述并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备,具体包括:在所述主设备与所述备设备中,根据所述第一NAT会话以及所述第二NAT会话分别确定对应的NAT规则;并将所述对应的NAT规则分别发送至所述主设备和所述备设备的交换芯片中。
在本申请的一种实施例中,所述并将所述NAT规则分别发送至所述主设备和所述备设备的交换芯片中之后,所述方法还包括:通过所述备设备接收第三报文,并在所述备设备中,通过解析所述第三报文获取所述第三报文的第三数据信息,并根据所述NAT规则匹配所述第三数据信息中的IP地址以及端口号,以确定所述IP地址以及所述端口号对应的公网地址和对应的公网中的端口号;将所述第三数据信息中的IP地址以及端口号转换成公网地址和公网中对应的端口号,得到修改后的第三报文;将所述修改后的第三报文进行线速转发。
在本申请的一种实施例中,所述并将所述NAT规则分别发送至所述主设备和所述备设备的交换芯片中之后,所述方法还包括:通过所述主设备接收第四报文,并在所述主设备中,通过解析所述第四报文获取所述第四报文的第四数据信息,并根据所述NAT规则匹配所述第四数据信息中的IP地址以及端口号,以确定所述IP地址以及所述端口号对应的公网地址和公网中对应的端口号;将所述IP地址以及所述端口号转换成公网地址和公网中对应的端口号,得到修改后的第四报文;将所述修改后的第四报文进行线速转发。
在本申请的一种实施例中,所述方法还包括:确定所述第一NAT会话以及所述第二NAT会话所对应的保活周期;在所述保活周期内,判断所述备设备在所述第一NAT会话或所述第二NAT会话中接收的报文的数量是否发生变化;若否,通过所述备设备中的NAT模块对所述第一NAT会话和/或所述第二NAT会话标记第一清除标签,并将此标记状态通知所述主设备;判断所述主设备在所述第一NAT会话或所述第二NAT会话中接收的报文的数量是否发生变化;若否,通过所述主设备中的NAT模块对所述第一NAT会话和/或所述第二NAT会话标记第二清除标签;当所述第一清除标签与所述第二清除标签标记的为同一NAT会话时,通过所述主设备关闭所述NAT会话,并清除所述NAT会话对应的NAT规则;并通过所述主设备通知所述备设备关闭所述NAT会话,并清除所述NAT会话对应的NAT规则。
在本申请的一种实施例中,所述通过所述备设备接收第一报文和/或通过所述主设备接收第二报文之前,所述方法还包括:确定所述M-LAG中的所述主设备以及所述备设备的接口使能NAT Inside和NAT Outside;所述NAT Inside和NAT Outside是用来区分需要NAT地址转换的不同方向的报文;向所述接口下发预先设置的访问控制列表ACL规则,并通过所述ACL规则对所述第一报文以及所述第二报文进行访问控制。
另一方面,还提供了一种基于M-LAG环境实现NAT的设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
通过M-LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备;
通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备。
另一方面,还提供了一种基于M-LAG环境实现NAT的存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
通过M-LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备;
通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备。
本申请提供了一种基于M-LAG环境实现NAT的方法、设备、存储介质,至少包括以下有益效果:由于M-LAG提供了设备级的冗余保护,因此,通过将主设备和备设备设置为同时参与报文转发,并进行NAT,使得流量负载分摊到两台设备,极大的提升了通信的性能。通过使主设备与备设备的信息同步可以使主设备与备设备保持NAT功能的一致性,防止了由于主设备和备设备进行NAT不一致而导致发生冲突的现象,也就解决了在M-LAG环境下难以实现NAT功能的问题。通过交换芯片对NAT规则进行存储,可以通过交换芯片直接对同一主机发送的报文中的IP地址进行转换,而不用每次通过主设备建立同样的NAT会话,大大提高了通信效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种基于M-LAG环境实现NAT的方法步骤示意图;
图2为本申请实施例提供的一种M-LAG环境中设备组成示意图;
图3为本申请实施例提供的一种基于M-LAG环境实现NAT的设备示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例对本申请进行清楚、完整的描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在现有技术中,跨设备链路聚合组(Multichassis Link Aggregation Group,M-LAG)是一种实现跨设备链路聚合的机制,为了提高单台设备的可靠性和数据的传输效率,可以将一台设备与另外一设备进行跨设备链路聚合,从而把链路可靠性从单板级提高到了设备级,组成双活系统。这里说的设备可以为交换机。
M-LAG作为一种跨设备链路聚合的技术,除了具备增加带宽、提高链路可靠性、负载分担的优势外,还具备以下优势:
更高的可靠性:把链路可靠性从单板级提高到了设备级。
简化组网及配置:可以将M-LAG理解为一种横向虚拟化技术,将双归接入的两台设备在逻辑上虚拟成一台设备。M-LAG提供了一个没有环路的二层拓扑同时实现冗余备份,不再需要繁琐的生成树协议配置,极大的简化了组网及配置。
独立升级:两台设备可以分别进行升级,保证有一台设备正常工作即可,对正在运行的业务几乎没有影响。
传统的NAT是在单台设备上进行地址转换的,如果想要使NAT在M-LAG中的两台设备上发生,必须保证两台设备中NAT映射关系的一致性,但由于M-LAG中的设备的IP地址并不一致,所以难以实现两台设备同时生成一致的NAT映射关系表。本申请的方案可以解决上述问题,下面进行具体说明。
图1为本申请实施例提供的一种基于M-LAG环境实现NAT的方法的步骤示意图,可以包括以下步骤:
S101:通过M-LAG中的备设备接收第一报文,并在备设备中,通过解析第一报文获取第一报文的第一数据信息,并将第一数据信息发送至M-LAG中的主设备。
在本申请的一种实施例中,第一报文指在建立与该报文对应的NAT会话前备设备接收到的报文。通过备设备解析第一报文获取第一报文的第一数据信息,并将第一数据信息发送至M-LAG中的主设备,具体包括:通过备设备中的NAT模块解析第一报文获取第一报文的第一数据信息;通过对等链路Peer-link接口将第一数据信息发送至主设备。
例如,当内网中的主机想访问外网时,主机将包含该主机访问信息的第一报文随机发送到备设备中,通过备设备对报文进行报文解析获得其中的第一数据信息(比如,包括MAC地址、源IP、源端口、目的IP、目的端口、协议类型,接口index等)。在解析完后备设备将数据信息通过主设备与备设备之间的Peer-link接口发送到主设备。由主设备根据该数据信息生成对应的NAT会话。
S102:通过主设备接收第二报文,并在主设备中,通过解析第二报文获取第二报文的第二数据信息,根据第一数据信息生成第一报文对应的第一NAT会话,以及根据第二数据信息生成与第二报文对应的第二NAT会话;并将第一NAT会话以及第二NAT会话同步至备设备。
如图2所示,主设备交换机1和备设备交换机2通过Peer-link接口进行连接,组成M-LAG环境,内网和外网互相访问须通过主设备和备设备进行网络地址转换NAT。
具体地,第一NAT会话是根据备设备接收到的报文生成的,第二NAT会话是根据主设备接收到的报文生成的。
其中,第一报文和第二报文的接收没有顺序,是随机的;第二报文、第二数据信息与第一报文、第二数据信息的区别仅在于是由主设备接收并解析还是由备设备区别并解析。
在本申请的一种实施例中,第二报文指在建立与该报文对应的NAT会话前主设备接收到的报文。通过解析第二报文获取第二报文的第二数据信息,根据第二数据信息生成第二报文对应的第二NAT会话,具体包括:通过主设备中的NAT模块解析第二报文获取第二报文的第二数据信息;根据配置的NAT映射关系和第二数据信息生成第二NAT会话。
例如,当内网中的主机想访问外网时,主机将包含该主机访问信息的报文随机发送到主设备中,主设备中NAT模块对报文进行报文解析获得其中的数据信息,例如MAC地址、源IP、源端口号、目的IP、目的端口号、协议类型,接口索引等。在解析完后主设备获取报文中需要转换的IP、计算分配的端口号,同时根据主设备包含的IP地址和主机的IP地址通过算法进行计算,并动态生成该主机与所要访问的外网之间的NAT会话。
在本申请的一种实施例中,并将第一NAT会话以及第二NAT会话同步至备设备,具体包括:在主设备与备设备中,根据第一NAT会话以及第二NAT会话分别确定对应的NAT规则;并将对应的NAT规则分别发送至主设备和备设备的交换芯片中。
具体地,主设备生成NAT会话之后,会将第一NAT会话以及第二NAT会话同步至备设备。生成第一NAT会话和第二NAT会话的同时会获得不同NAT会话中包含的NAT规则,NAT规则会由主设备和备设备分别下发到主设备和备设备各自的交换芯片中。通过交换芯片对NAT规则进行存储,可以通过交换芯片直接对同一主机发送的报文中的IP地址进行转换,而不用每次通过主设备建立同样的NAT会话,大大提高了通信效率。
通过以上步骤,可以使主设备与备设备保持NAT功能的一致性,防止了由于主设备和备设备进行NAT不一致而导致发生冲突的现象。也就解决了在M-LAG环境下难以实现NAT功能的问题。
在本申请的一种实施例中,将NAT规则分别发送至主设备和备设备的交换芯片中之后,通过备设备接收第三报文,并在备设备中,通过解析第三报文获取第三报文的第三数据信息,并根据NAT规则匹配第三数据信息中的IP地址以及端口号,以确定IP地址以及端口号对应的公网地址和对应的公网中的端口号;将第三数据信息中的IP地址以及端口号转换成公网地址和公网中对应的端口号,得到修改后的第三报文;将修改后的第三报文进行线速转发。
具体地,第三报文为在建立相关会话后由备设备接收的报文。例如,备设备接收到从内网的主机访问外网的报文后,解析获得该报文的数据信息,数据信息中包含源IP地址、源端口地址等,然后在已经存储在交换芯片中的NAT规则进行查找,查看该源IP地址和源端口号对应的公网地址和公网中的端口号,将该源IP地址转换成对应的公网地址和对应的公网中的端口号。转换完成后获得修改后的第三报文,修改完成后进行线速转发。
例如,交换芯片中已经包含的NAT规则为内网IP地址192.168.1.1:10转换到公网地址10.1.1.1:2488。那么当内网中IP地址为192.168.1.1:10的主机发送访问外网的报文时,交换芯片便可以直接将该报文中的IP地址转换成10.1.1.1:2488,而不用再通过主设备重新进行NAT。同理,若报文从外网向内网发送,并由备设备接收,则将该报文中的目的IP地址、目的端口号转换成对应的内网地址和内网中对应的端口号。
在本申请的一种实施例中,并将NAT规则分别发送至主设备和备设备的交换芯片中之后,通过主设备接收第四报文,并在主设备中,通过解析第四报文获取第四报文的第四数据信息,并根据NAT规则匹配第四数据信息中的IP地址以及端口号,以确定IP地址以及端口号对应的公网地址和公网中对应的端口号;将IP地址以及端口号转换成公网地址和公网中对应的端口号,得到修改后的第四报文;将修改后的第四报文进行线速转发。
具体地,第四报文为在建立相关会话后由主设备接收的报文。例如,主设备接收到从内网的主机访问外网的报文后,解析获得该报文的数据信息,数据信息中包含源IP地址、源端口地址等,然后在已经存储在交换芯片中的NAT规则进行查找,查看该源IP地址和源端口号对应的公网地址和公网中的端口号,将该源IP地址转换成对应的公网地址和对应的公网中的端口号。转换完成后获得修改后的第三报文,修改完成后进行线速转发。
例如,交换芯片中已经包含的NAT规则为内网IP地址192.168.1.1:10转换到公网地址10.1.1.1:2488。那么当内网中IP地址为192.168.1.1:10的主机发送访问外网的报文时,交换芯片便可以直接将该报文中的IP地址转换成10.1.1.1:2488,而不用再通过主设备重新进行NAT。同理,若报文从外网向内网发送,并由主设备接收,则将该报文中的目的IP地址、目的端口号转换成对应的内网地址和内网中对应的端口号。
在本申请的一种实施例中,由主设备和备设备确定第一NAT会话以及第二NAT会话所对应的保活周期;确定会话的保活周期是为了在NAT会话长时间不用的情况下进行清除,以保证其不占用资源。在保活周期内,备设备会判断在第一NAT会话或第二NAT会话中接收的报文的数量是否发生变化;若否,备设备中的NAT模块对第一NAT会话和/或第二NAT会话标记第一清除标签,第一清除标签用于将标记可以清除的NAT会话,并将此标记状态通知主设备。
主设备判断在第一NAT会话或第二NAT会话中接收的报文的数量是否发生变化;若否,通过主设备中的NAT模块对第一NAT会话和/或第二NAT会话标记第二清除标签;当主设备确定第一清除标签与第二清除标签标记的为同一NAT会话时,通过主设备关闭NAT会话,并清除NAT会话对应的NAT规则;并通过主设备通知备设备关闭同一NAT会话,并清除该NAT会话对应的NAT规则。
在本申请的一种实施例中,通过备设备接收第一报文和/或通过主设备接收第二报文之前,确定M-LAG中的主设备以及备设备的接口使能NAT Inside和NAT Outside;NATInside和NAT Outside是用来区分需要NAT地址转换的不同方向的报文;向接口下发预先设置的访问控制列表ACL规则,并通过ACL规则对第一报文以及第二报文进行访问控制。通过设置ACL规则,能够拦截不安全的网址,保护数据安全。
传统的NAT功能只能应用于单台设备,没有冗余备份,不利于应用于复杂的网络环境,本申请提供一种在M-LAG环境中实现NAT的方法,提供了设备级的冗余保护。同时M-LAG的主设备和备设备可同时参与报文转发,并进行NAT,流量负载分摊到两台设备,极大的提升了通信的性能。
以上为本申请实施例提供的一种基于M-LAG环境实现NAT的方法,基于同样的发明思路,本申请实施例还提供了相应的一种基于M-LAG环境实现NAT的设备,如图3所示。
本实施例提供了一种基于M-LAG环境实现NAT的设备,包括:
至少一个处理器;以及,
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
通过M-LAG中的备设备接收第一报文,并在备设备中,通过解析第一报文获取第一报文的第一数据信息,并将第一数据信息发送至M-LAG中的主设备;
通过主设备接收第二报文,并在主设备中,通过解析第二报文获取第二报文的第二数据信息,根据第一数据信息生成第一报文对应的第一NAT会话,以及根据第二数据信息生成与第二报文对应的第二NAT会话;并将第一NAT会话以及第二NAT会话同步至备设备。
基于同样的思路,本申请的一些实施例还提供了与上述方法、设备对应的介质。
本申请的一些实施例提供的一种基于M-LAG环境实现NAT的存储介质,存储有计算机可执行指令,计算机可执行指令设置为:
通过M-LAG中的备设备接收第一报文,并在备设备中,通过解析第一报文获取第一报文的第一数据信息,并将第一数据信息发送至M-LAG中的主设备;
通过主设备接收第二报文,并在主设备中,通过解析第二报文获取第二报文的第二数据信息,根据第一数据信息生成第一报文对应的第一NAT会话,以及根据第二数据信息生成与第二报文对应的第二NAT会话;并将第一NAT会话以及第二NAT会话同步至备设备。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (8)
1.一种基于跨设备链路聚合组M-LAG环境实现网络地址转换NAT的方法,其特征在于,包括:
通过M-LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备;
通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备;
根据配置的NAT映射关系和所述第二数据信息生成所述第二NAT会话;
在所述主设备与所述备设备中,根据所述第一NAT会话以及所述第二NAT会话分别确定对应的NAT规则;
并将所述对应的NAT规则分别发送至所述主设备和所述备设备的交换芯片中;
通过所述备设备接收第三报文,并在所述备设备中,通过解析所述第三报文获取所述第三报文的第三数据信息,并根据所述NAT规则匹配所述第三数据信息中的IP地址以及端口号,以确定所述IP地址以及所述端口号对应的公网地址和对应的公网中的端口号;
将所述第三数据信息中的IP地址以及端口号转换成公网地址和公网中对应的端口号,得到修改后的第三报文;
将所述修改后的第三报文进行线速转发。
2.根据权利要求1所述的方法,其特征在于,所述通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备,具体包括:
通过所述备设备中的NAT模块解析所述第一报文获取所述第一报文的第一数据信息;
通过对等链路Peer-link接口将所述第一数据信息发送至所述主设备。
3.根据权利要求1所述的方法,其特征在于,所述通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第二数据信息生成所述第二报文对应的第二NAT会话,具体包括:
通过所述主设备中的NAT模块解析所述第二报文获取所述第二报文的第二数据信息。
4.根据权利要求1所述的方法,其特征在于,所述并将所述NAT规则分别发送至所述主设备和所述备设备的交换芯片中之后,所述方法还包括:
通过所述主设备接收第四报文,并在所述主设备中,通过解析所述第四报文获取所述第四报文的第四数据信息,并根据所述NAT规则匹配所述第四数据信息中的IP地址以及端口号,以确定所述IP地址以及所述端口号对应的公网地址和公网中对应的端口号;
将所述IP地址以及所述端口号转换成公网地址和公网中对应的端口号,得到修改后的第四报文;
将所述修改后的第四报文进行线速转发。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述第一NAT会话以及所述第二NAT会话所对应的保活周期;
在所述保活周期内,判断所述备设备在所述第一NAT会话或所述第二NAT会话中接收的报文的数量是否发生变化;
若否,通过所述备设备中的NAT模块对所述第一NAT会话和/或所述第二NAT会话标记第一清除标签,并将此标记状态通知所述主设备;
判断所述主设备在所述第一NAT会话或所述第二NAT会话中接收的报文的数量是否发生变化;
若否,通过所述主设备中的NAT模块对所述第一NAT会话和/或所述第二NAT会话标记第二清除标签;
当所述第一清除标签与所述第二清除标签标记的为同一NAT会话时,通过所述主设备关闭所述NAT会话,并清除所述NAT会话对应的NAT规则;并通过所述主设备通知所述备设备关闭所述NAT会话,并清除所述NAT会话对应的NAT规则。
6.根据权利要求1所述的方法,其特征在于,所述通过所述备设备接收第一报文和/或通过所述主设备接收第二报文之前,所述方法还包括:
确定所述M-LAG中的所述主设备以及所述备设备的接口使能NAT Inside和NATOutside;所述NAT Inside和NAT Outside是用来区分需要NAT地址转换的不同方向的报文;
向所述接口下发预先设置的访问控制列表ACL规则,并通过所述ACL规则对所述第一报文以及所述第二报文进行访问控制。
7.一种基于M-LAG环境实现NAT的设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
通过M-LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备;
通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备;
根据配置的NAT映射关系和所述第二数据信息生成所述第二NAT会话;
在所述主设备与所述备设备中,根据所述第一NAT会话以及所述第二NAT会话分别确定对应的NAT规则;
并将所述对应的NAT规则分别发送至所述主设备和所述备设备的交换芯片中;
通过所述备设备接收第三报文,并在所述备设备中,通过解析所述第三报文获取所述第三报文的第三数据信息,并根据所述NAT规则匹配所述第三数据信息中的IP地址以及端口号,以确定所述IP地址以及所述端口号对应的公网地址和对应的公网中的端口号;
将所述第三数据信息中的IP地址以及端口号转换成公网地址和公网中对应的端口号,得到修改后的第三报文;
将所述修改后的第三报文进行线速转发。
8.一种基于M-LAG环境实现NAT的存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:
通过M-LAG中的备设备接收第一报文,并在所述备设备中,通过解析所述第一报文获取所述第一报文的第一数据信息,并将所述第一数据信息发送至所述M-LAG中的主设备;
通过所述主设备接收第二报文,并在所述主设备中,通过解析所述第二报文获取所述第二报文的第二数据信息,根据所述第一数据信息生成所述第一报文对应的第一NAT会话,以及根据所述第二数据信息生成与所述第二报文对应的第二NAT会话;并将所述第一NAT会话以及所述第二NAT会话同步至所述备设备;
根据配置的NAT映射关系和所述第二数据信息生成所述第二NAT会话;
在所述主设备与所述备设备中,根据所述第一NAT会话以及所述第二NAT会话分别确定对应的NAT规则;
并将所述对应的NAT规则分别发送至所述主设备和所述备设备的交换芯片中;
通过所述备设备接收第三报文,并在所述备设备中,通过解析所述第三报文获取所述第三报文的第三数据信息,并根据所述NAT规则匹配所述第三数据信息中的IP地址以及端口号,以确定所述IP地址以及所述端口号对应的公网地址和对应的公网中的端口号;
将所述第三数据信息中的IP地址以及端口号转换成公网地址和公网中对应的端口号,得到修改后的第三报文;
将所述修改后的第三报文进行线速转发。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110939930.3A CN113691645B (zh) | 2021-08-17 | 2021-08-17 | 一种基于m-lag环境实现nat的方法、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110939930.3A CN113691645B (zh) | 2021-08-17 | 2021-08-17 | 一种基于m-lag环境实现nat的方法、设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113691645A CN113691645A (zh) | 2021-11-23 |
CN113691645B true CN113691645B (zh) | 2024-05-21 |
Family
ID=78580124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110939930.3A Active CN113691645B (zh) | 2021-08-17 | 2021-08-17 | 一种基于m-lag环境实现nat的方法、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113691645B (zh) |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7042876B1 (en) * | 2000-09-12 | 2006-05-09 | Cisco Technology, Inc. | Stateful network address translation protocol implemented over a data network |
CN101582856A (zh) * | 2009-06-29 | 2009-11-18 | 杭州华三通信技术有限公司 | 一种门户服务器与宽带接入设备的会话建立方法及其系统 |
US7647427B1 (en) * | 2002-10-18 | 2010-01-12 | Foundry Networks, Inc. | Redundancy support for network address translation (NAT) |
CN101834831A (zh) * | 2009-03-13 | 2010-09-15 | 华为技术有限公司 | 一种实现nat设备冗余备份的方法、装置和系统 |
CN103475750A (zh) * | 2013-09-16 | 2013-12-25 | 杭州华三通信技术有限公司 | 一种适用于多出口网络的地址转换方法及设备 |
CN104065759A (zh) * | 2013-03-22 | 2014-09-24 | 杭州迪普科技有限公司 | 一种提高nat地址池资源利用效率的方法及装置 |
CN107733808A (zh) * | 2017-11-20 | 2018-02-23 | 新华三技术有限公司 | 一种流量传输方法及装置 |
CN108924272A (zh) * | 2018-06-26 | 2018-11-30 | 新华三信息安全技术有限公司 | 一种端口资源分配方法及装置 |
CN109818869A (zh) * | 2017-11-22 | 2019-05-28 | 北京华为数字技术有限公司 | 组播流量转发端口的生成方法及相关设备 |
CN110166356A (zh) * | 2018-02-11 | 2019-08-23 | 华为技术有限公司 | 发送报文的方法和网络设备 |
CN111404732A (zh) * | 2020-03-05 | 2020-07-10 | 广东睿江云计算股份有限公司 | 一种nat网关灾备实现方法及其系统 |
CN111682927A (zh) * | 2020-04-27 | 2020-09-18 | 浪潮思科网络科技有限公司 | 一种基于mlag环境的报文同步方法、装置、设备及介质 |
CN111698344A (zh) * | 2020-05-28 | 2020-09-22 | 浪潮思科网络科技有限公司 | 一种网络地址转换方法、设备及介质 |
CN111740899A (zh) * | 2020-07-13 | 2020-10-02 | 中国联合网络通信集团有限公司 | 一种arp请求报文转发方法、跨设备链路聚合组及网络设备 |
WO2021031092A1 (zh) * | 2019-08-19 | 2021-02-25 | 华为技术有限公司 | 报文处理方法及网络设备 |
CN112422422A (zh) * | 2020-11-23 | 2021-02-26 | 浪潮思科网络科技有限公司 | 一种网络冗余方法、装置及设备 |
CN112565001A (zh) * | 2020-11-18 | 2021-03-26 | 浪潮思科网络科技有限公司 | 一种nat设备性能测试系统、方法、设备及介质 |
CN113055232A (zh) * | 2021-03-11 | 2021-06-29 | 浪潮思科网络科技有限公司 | 一种网络配置部署方法、装置与设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10785145B2 (en) * | 2018-02-19 | 2020-09-22 | Arista Networks, Inc. | System and method of flow aware resilient ECMP |
US11483287B2 (en) * | 2018-06-13 | 2022-10-25 | Nokia Solutions And Networks Oy | Reliable firewall |
-
2021
- 2021-08-17 CN CN202110939930.3A patent/CN113691645B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7042876B1 (en) * | 2000-09-12 | 2006-05-09 | Cisco Technology, Inc. | Stateful network address translation protocol implemented over a data network |
US7647427B1 (en) * | 2002-10-18 | 2010-01-12 | Foundry Networks, Inc. | Redundancy support for network address translation (NAT) |
CN101834831A (zh) * | 2009-03-13 | 2010-09-15 | 华为技术有限公司 | 一种实现nat设备冗余备份的方法、装置和系统 |
CN101582856A (zh) * | 2009-06-29 | 2009-11-18 | 杭州华三通信技术有限公司 | 一种门户服务器与宽带接入设备的会话建立方法及其系统 |
CN104065759A (zh) * | 2013-03-22 | 2014-09-24 | 杭州迪普科技有限公司 | 一种提高nat地址池资源利用效率的方法及装置 |
CN103475750A (zh) * | 2013-09-16 | 2013-12-25 | 杭州华三通信技术有限公司 | 一种适用于多出口网络的地址转换方法及设备 |
CN107733808A (zh) * | 2017-11-20 | 2018-02-23 | 新华三技术有限公司 | 一种流量传输方法及装置 |
CN109818869A (zh) * | 2017-11-22 | 2019-05-28 | 北京华为数字技术有限公司 | 组播流量转发端口的生成方法及相关设备 |
CN110166356A (zh) * | 2018-02-11 | 2019-08-23 | 华为技术有限公司 | 发送报文的方法和网络设备 |
CN108924272A (zh) * | 2018-06-26 | 2018-11-30 | 新华三信息安全技术有限公司 | 一种端口资源分配方法及装置 |
WO2021031092A1 (zh) * | 2019-08-19 | 2021-02-25 | 华为技术有限公司 | 报文处理方法及网络设备 |
CN111404732A (zh) * | 2020-03-05 | 2020-07-10 | 广东睿江云计算股份有限公司 | 一种nat网关灾备实现方法及其系统 |
CN111682927A (zh) * | 2020-04-27 | 2020-09-18 | 浪潮思科网络科技有限公司 | 一种基于mlag环境的报文同步方法、装置、设备及介质 |
CN111698344A (zh) * | 2020-05-28 | 2020-09-22 | 浪潮思科网络科技有限公司 | 一种网络地址转换方法、设备及介质 |
CN111740899A (zh) * | 2020-07-13 | 2020-10-02 | 中国联合网络通信集团有限公司 | 一种arp请求报文转发方法、跨设备链路聚合组及网络设备 |
CN112565001A (zh) * | 2020-11-18 | 2021-03-26 | 浪潮思科网络科技有限公司 | 一种nat设备性能测试系统、方法、设备及介质 |
CN112422422A (zh) * | 2020-11-23 | 2021-02-26 | 浪潮思科网络科技有限公司 | 一种网络冗余方法、装置及设备 |
CN113055232A (zh) * | 2021-03-11 | 2021-06-29 | 浪潮思科网络科技有限公司 | 一种网络配置部署方法、装置与设备 |
Non-Patent Citations (1)
Title |
---|
网络技术M-LAG在数据中心网络中的应用;刘亮;周勤;袁俊;;信息与电脑(理论版);20190525(第10期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113691645A (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1892929B1 (en) | A method, an apparatus and a system for message transmission | |
EP3694145B1 (en) | Method and device for sending messages | |
US7567505B2 (en) | VRRP technology keeping VR confidentiality | |
CN101257523A (zh) | 一种用于支持虚拟环境中的分区之间的ip网络互连的方法 | |
RU2601194C2 (ru) | Устройства и способ для назначения сетевых адресов | |
JP5612468B2 (ja) | リアルタイム通信ネットワークにおける診断データの通信のための方法と装置 | |
CN113839862B (zh) | Mclag邻居之间同步arp信息的方法、系统、终端及存储介质 | |
CN105281951B (zh) | Vsu系统中双主用设备冲突检测方法及网络设备 | |
CN108270878A (zh) | 在vxlan中发送arp报文的方法、vtep设备 | |
JP2010531602A5 (zh) | ||
CN115225634B (zh) | 虚拟网络下的数据转发方法、装置及计算机程序产品 | |
EP4220427A1 (en) | Data processing method and system, encapsulation node, and de-encapsulation node | |
CN115987778B (zh) | 一种基于Kubernetes集群的容器通信方法 | |
US20080205376A1 (en) | Redundant router having load sharing functionality | |
CN115378868B (zh) | 一种基于snat资源池实现报文处理的系统及方法 | |
CN113783910A (zh) | 一种数据转发的方法、装置及系统 | |
CN114401274B (zh) | 一种通信线路创建方法、装置、设备及可读存储介质 | |
CN1319338C (zh) | 网络通信中解决ip地址冲突的方法 | |
US12003417B2 (en) | Communication method and apparatus | |
CN100359875C (zh) | 在地址解析协议代理上实现负载均摊的方法 | |
CN113691645B (zh) | 一种基于m-lag环境实现nat的方法、设备、存储介质 | |
CN113965456B (zh) | 主机接口扩展方法、装置、设备及存储介质 | |
CN111654390B (zh) | 一种数据传输方法、装置、终端设备和存储介质 | |
CN111835544B (zh) | 一种基于用户态协议栈的虚拟路由器的监控方法及系统 | |
US10931565B2 (en) | Multi-VRF and multi-service insertion on edge gateway virtual machines |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |