著录项信息
专利名称 | 一种地址转换方法和装置 |
申请号 | CN201310692169.3 | 申请日期 | 2013-12-16 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2014-04-02 | 公开/公告号 | CN103701945A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L29/12 | IPC分类号 | H;0;4;L;2;9;/;1;2查看分类表>
|
申请人 | 浙江宇视科技有限公司 | 申请人地址 | 浙江省杭州市滨江区西兴街道江陵路88号10号幢南座1-11层
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 浙江宇视科技有限公司 | 当前权利人 | 浙江宇视科技有限公司 |
发明人 | 任俊峰;周迪 |
代理机构 | 北京博思佳知识产权代理有限公司 | 代理人 | 林祥 |
摘要
一种地址转换的方法,包括:对内网设备发送的报文进行数据链路层处理,并记录该报文的源MAC地址;根据该报文的五元组以及记录的该报文的源MAC地址,匹配地址转换表;如果匹配成功,则将该报文的源IP地址和源端口号转换为匹配到的表项中的对应的IP地址和端口号,并将转换后的报文从路由口发送出去;如果匹配失败,则在地址转换表中建立一条新的地址转换表项;该新的地址转换表项包括:该报文的五元组信息、所述源MAC地址以及所述新获取的IP地址和端口号;并将该报文的源IP地址和源端口号转换为新获取的IP地址和端口号。本发明仅通过增加一台带改进的NAT功能的路由设备就实现了将各内网中具有相同内网地址的设备接入到同一外网中。
一种地址转换方法和装置\n技术领域\n[0001] 本发明涉及数据通信领域,尤其涉及一种地址转换方法和装置。\n背景技术\n[0002] 随着监控行业的普及,邮政或者银行网点都会部署监控系统。这类网点通常都会使用IPC以及NVR搭建,建立自身的监控系统,请参图1。早期搭建的过程中,各网点仅需要实现本地的监控需求。这种需求使得零配置的NVR成为首选,即用户仅需要把NVR和IPC接入到同一个二层交换机上即可。零配置的NVR提供DHCP服务,而IPC使用DHCP方式获取IP地址,并自动注册到NVR上。监控客户端只需要登录NVR的默认IP地址,即可进行监控业务操作。\n[0003] 但是随着监控重要性的日益增加,邮政、银行总部或者分行需要对各网点的监控图像进行查看,就需要各网点将自身的监控系统接入到总部或者分行的监控平台上,此时就会出现IP地址冲突的问题。因为NVR提供的DHCP地址池是一样的,这就导致各网点IPC分配到的IP地址有可能相同;并且各网点的NVR自身默认的IP地址也是相同的,所以当各网点监控系统的设备接入到同一个监控平台中时,难免会出现IP地址冲突的现象。\n[0004] 针对上述IP地址冲突的问题,很容易想到的一个解决办法就是在每一个网点(即分支)的监控网络出口增加一个带NAT功能的路由设备,请参图2。该路由设备将各网点监控设备的内网IP地址转换为外网IP地址;这样各网点监控设备发给总部或者分行到数据的源地址都会被改变,地址冲突的问题就解决了。\n[0005] 但是对于邮政或者银行,一般网点众多。如果每个网点都增加一台具有NAT功能的路由设备的话,成本会比较高,并且每一台路由设备还需要进行地址规划和配置管理,工作量也比较大。\n发明内容\n[0006] 有鉴于此,本发明提供一种地址转换的装置和方法。\n[0007] 本发明的该装置应用于路由设备,各内网的设备均通过该具有该地址转换装置的路由设备接入外网,该装置包括:\n[0008] 交换模块,用于对内网设备发送的报文进行数据链路层处理,并记录该报文的源MAC地址;\n[0009] 表项匹配模块,用于根据该报文的五元组以及交换模块记录的该报文的源MAC地址匹配地址转换表;\n[0010] 地址转换模块,用于在匹配成功时,将该报文的源IP地址和源端口号转换为匹配到的表项中对应的IP地址和端口号;还用于在匹配失败时,将该报文的源IP地址和源端口号转换为新获取的IP地址和端口号;\n[0011] 表项建立模块,用于在匹配失败时,在地址转换表中建立一条新的地址转换表项;\n该新的地址转换表项包括:该报文的五元组信息、所述源MAC地址以及所述新获取的IP地址和端口号;\n[0012] 报文发送模块,用于将转换后的报文通过路由口转发出去。\n[0013] 进一步地,报文接收模块,用于从路由口接收回应报文;表项匹配模块,还用于根据该回应报文的五元组匹配所述地址转换表;\n[0014] 地址转换模块,用于将该回应报文的目的IP地址、目的端口号转换为匹配到的表项中的对应IP地址和端口号,并获取表项中的MAC地址并将该MAC地址告知交换模块;\n[0015] 交换模块,还用于将所述目的IP地址、目的端口号转换后的报文的目的MAC地址封装为所述告知的地址转换表项中的MAC地址,并发给内网设备。\n[0016] 本发明的地址转换的方法应用于路由设备,各内网的设备均通过该路由设备接入外网,该方法包括如下步骤:\n[0017] A、对内网设备发送的报文进行数据链路层处理,并记录该报文的源MAC地址;\n[0018] B、根据该报文的五元组以及记录的该报文的源MAC地址,匹配地址转换表;\n[0019] C、如果匹配成功,则将该报文的源IP地址和源端口号转换为匹配到的表项中的对应的IP地址和端口号,并将转换后的报文从路由口发送出去;如果匹配失败,则在地址转换表中建立一条新的地址转换表项;该新的地址转换表项包括:该报文的五元组信息、所述源MAC地址以及所述新获取的IP地址和端口号;并将该报文的源IP地址和源端口号转换为新获取的IP地址和端口号,并将转换后的报文从路由口发送出去。\n[0020] 该方法进一步包括:\n[0021] D、从路由口接收回应报文后,根据该回应报文的五元组匹配所述地址转换表;\n[0022] E、将该回应报文的目的IP地址、目的端口号转换为匹配到的表项中的对应IP地址和端口号;\n[0023] F、将所述转换后的报文的目的MAC地址封装为所述回应报文匹配到的地址转换表项中的MAC地址,并发送给内网设备。\n[0024] 相较于现有技术,本发明仅通过增加一台带改进的NAT功能的路由设备就实现了将各内网中具有相同内网地址的设备接入到同一外网中。\n附图说明\n[0025] 图1是现有的一种监控内网图。\n[0026] 图2是现有的一种若干监控内网接入外网的网络结构图。\n[0027] 图3是本发明实施例流程图。\n[0028] 图4是本发明又一实施例流程图。\n[0029] 图5是本发明一种若干监控内网接入外网的网络结构图。\n[0030] 图6是本发明装置逻辑结构图。\n具体实施方式\n[0031] 为解决背景技术中提到的问题,本发明提供一种仅增加一台NAT功能的路由设备即解决各分支IP地址冲突的方案。以下通过具体实施方式详细说明。\n[0032] 参见图3,各分支监控网络中的监控设备通过专线直接连接到该具有NAT功能的路由设备。各分支监控网络中的监控设备和该路由设备之间的网络架构为二层网络架构,即各分支监控网络中的监控设备发送到总部监控网络的报文仅通过二层转发。该分支网络中的监控设备封装的报文的目的MAC地址为该路由设备的MAC地址。\n[0033] 该路由设备包括一新颖的地址转换装置,请参图6。该新颖的地址转换装置从逻辑上划分,包括交换模块、表项匹配模块、表项建立模块、地址转换模块、报文发送模块和报文接收模块。该交换模块包括多个交换端口,各交换端口之间相互隔离。请参图3,图3的实施例流程图给出了内网设备发送的报文经过二层转发到达路由设备后,路由设备的处理流程。\n[0034] 步骤301、交换模块对内网设备发送的报文进行二层处理,并记录该报文的源MAC地址。\n[0035] 步骤302、表项匹配模块根据该报文的五元组以及该报文的源MAC地址匹配地址转换表;如果匹配成功,则转步骤103,否则转步骤104。\n[0036] 步骤303、地址转换模块将该报文的源IP地址和源端口号转换为匹配到的表项中对应的IP地址和端口号。\n[0037] 步骤304、表项建立模块在地址转换表中建立一条新的地址转换表项;该新的地址转换表项包括:该报文的五元组信息、所述源MAC地址以及新获取的IP地址和端口号;地址转换模块将该报文的源IP地址和源端口号转换为该新获取的IP地址和端口号;\n[0038] 步骤305、报文发送模块将转换后的报文通过路由口转发出去。\n[0039] 内网监控设备包括监控前端设备(如IPC、EC)、网络硬盘录像机NVR等。内网监控设备发送的报文经过二层网络到达该具有NAT功能的路由设备,该报文的三层信息没有变化。\n该交换模块在二层处理该内网设备发送的报文,即进行该报文的二层封装头剥离,学习MAC地址等操作;交换模块还需要记录该报文的源MAC地址。该交换模块在处理该报文的时候和现有技术最大的区别就在于,其记录下该报文的源MAC地址作为地址转换表项的内容之一。\n[0040] 表项匹配单元根据报文的五元组和该报文的源MAC地址来匹配地址转换表项;如果五元组和源MAC地址都和某条表项中记载的信息一致,则认为匹配成功,否则则认为没有匹配到对应的表项。如果路由设备接收到的该报文是内网设备发往外网中设备的首个报文,则该报文对应的地址转换表项尚未建立,所以表项匹配单元将无法匹配成功,此时将由表项建立单元建立一条新的表项。如果不是首个报文,则表项匹配单元将能成功匹配其中的一条表项。地址转换模块将根据表项中对应的地址和端口转换该报文的源IP地址和源端口。新建的地址转换表项中新获取的IP地址和端口号和现有技术没有区别。现有技术中NAT/PAT技术进行IP地址或端口号转换,比如说从NAT地址池中获取一个外网的IP地址,该外网的IP地址作为新获取的IP地址;或者在PAT技术中,所有的内网地址转换为同一个外网IP地址,但是每个连接的端口号都转换为不同的端口号。本发明实施例中表项建立模块和表项匹配模块所执行的操作和现有技术最大的不同在于将MAC地址纳入了表项的建立和匹配。\n[0041] 请参图4,图4的实施例流程图给出了外网设备返回的报文到达路由设备后,路由设备的处理流程。\n[0042] 步骤401、报文接收模块从路由口接收回应报文。\n[0043] 步骤402、表项匹配模块根据该回应报文的五元组匹配所述地址转换表。\n[0044] 步骤403、地址转换模块将该回应报文的目的IP地址、目的端口号转换为匹配到的表项中的对应IP地址和端口号,并获取表项中的MAC地址并将该MAC地址告知交换模块。\n[0045] 步骤404、交换模块将该转换后的报文的目的MAC地址封装为所述告知的地址转换表项中的MAC地址,并发给内网设备。\n[0046] 步骤401和402属于现有技术。步骤403中对应的IP地址和端口号为图3流程中的内网设备发送报文的源IP地址和源端口。将表项中的MAC地址给到交换模块,交换模块根据该MAC地址进行报文目的MAC地址的封装是本流程的关键。因为将该表项中的MAC地址封装为目的MAC地址,该报文才能经过路由设备和内网设备间的二层网络到达内网设备。\n[0047] 图3和图4的流程描述了报文从内网设备发送到外网设备,以及从外网设备发送到内网设备的过程。基于本发明方案新设计的网络结构:若干内网中的设备由该内网中的交换机经过二层网络连接到同一个具有NAT功能的路由设备,该新的网络结构中的具有NAT功能的路由设备在其NAT地址转换表项中需要记录每一个内网设备的MAC地址,以此达到内网中发给外网的报文到达该路由设备时,源IP和源端口号能被转换为正确的源IP和源端口号。外网设备发送给内网设备的报文能被正确的封装目的MAC地址,从而该报文能被发送到内网设备。\n[0048] 以下通过一个具体的例子来进一步阐述实施例所描述的方案。\n[0049] 请参图5,分支1(监控内网1)包含IP地址为192.168.0.1、MAC地址为b8-ca-3a-98-f4-e1的NVR,IP地址为192.168.0.2、MAC地址为b8-ca-3a-98-f4-e2的IPC1以及IP地址为\n192.168.0.3,MAC地址为b8-ca-3a-98-f4-e3的IPC2;分支n同样包含IP地址为\n192.168.0.1、MAC地址为b8-ca-3a-98-f4-e4的NVR,IP地址为192.168.0.2、MAC地址为b8-ca-3a-98-f4-e5的IPC1以及IP地址为192.168.0.3、MAC地址为b8-ca-3a-98-f4-e6的IPC2。\n这两个分支中的交换机分别通过二层网络连接到总部的具有NAT功能的路由设备。该路由设备的MAC地址为b8-ca-3a-98-f4-e7。假设分支1中的NVR需要注册到总部的视频管理服务器VM中,该VM的IP地址为10.222.11.1。NVR发送注册报文,该注册报文的源IP地址为\n192.168.0.1、源MAC地址为b8-ca-3a-98-f4-e1,目的IP地址为10.222.11.1,目的MAC地址b8-ca-3a-98-f4-e7。假设源端口号和目的端口号均为6060,协议为TCP。该注册报文经过二层网络被发送到总部的NAT路由设备,该路由设备接收到该注册报文后,首先学习MAC地址,建立MAC地址表项,然后记录该报文的源MAC地址b8-ca-3a-98-f4-e1。假设此时未记录任何表项,则该路由设备的表项匹配模块不能匹配到任何表项,所以该路由设备的表项建立模块建立一条新的地址转换表项,请参表1。在该条表项中,内网IP地址和端口号LocalAddr:\nPort为该注册报文的源IP地址和源端口号,目的IP地址和端口号DestAddr:Port为该注册报文的目的IP地址和目的端口号,GlobalAddr:Port为该地址转换模块新获取的地址和端口;SorMacaddr为该注册报文的源MAC地址。地址转换模块进一步将该注册报文的IP头修改为源IP地址和源端口号为10.222.12.1:10000的报文(目的IP地址和目的端口号不变),然后将该报文发送给VM。\n[0050]\n序号Pro GlobalAddr:Port LocalAddr:Port DestAddr:Port SorMacaddr\n1TCP 10.222.12.1:10000 192.168.0.1:6060 10.222.11.1:6060 b8-ca-3a-98-f4-e1[0051] 表1\n[0052] VM将针对该注册报文反馈回应报文,该回应报文的源IP地址和源端口号为\n10.222.11.1:6060,目的IP地址和目的端口号为10.222.12.1:10000,协议号为TCP;路由设备接收到该回应报文后,根据其源IP地址和源端口号,目的IP地址和目的端口号,协议号匹配地址转换表项:源IP地址和源端口号10.222.11.1:6060匹配DestAddr:Port,目的IP地址和端口号10.222.12.1:10000匹配GlobalAddr:Port,协议号匹配Pro,经过匹配确定表项1被匹配。该路由设备的地址转换模块将该回应报文的目的IP地址和目的端口号修改为表项\n1的192.168.0.1:6060,并且将表项1中的SorMacaddr:b8-ca-3a-98-f4-e1告知交换模块。\n交换模块将该回应报文的目的MAC地址更改为b8-ca-3a-98-f4-e1,然后根据MAC地址表将该报文从对应的出接口发送出去。该报文经过二层转发最终将由分支1中的NVR设备收到。\n[0053] 分支n中的NVR同样需要注册到总部的视频管理服务器VM中。该NVR发送注册报文,该注册报文的源IP地址为192.168.0.1、源MAC地址为b8-ca-3a-98-f4-e4,目的IP地址为\n10.222.11.1,目的MAC地址b8-ca-3a-98-f4-e7。假设源端口号和目的端口号同样均为\n6060,协议号为TCP。该注册报文经过二层网络被发送到总部的NAT路由设备,该路由设备的交换模块接收到该注册报文后,同样在MAC表项中建立MAC地址表项。该交换模块还将该报文的源MAC地址b8-ca-3a-98-f4-e4记录下来。表项匹配模块根据该报文的协议号、源IP地址、源端口号、目的IP地址、目的端口号、以及交换模块告知的该报文的源MAC地址在地址转换表项中进行表项匹配。在进行表项匹配的时候,源IP地址和源端口号匹配表中的LocalAddr:Port,目的IP地址和目的端口号匹配表中的DestAddr:Port,交换模块告知的源MAC地址匹配表中的SorMacaddr。这里,其他项都匹配成功了,但是交换模块告知的源MAC地址没有匹配成功表中的SorMacaddr,所以地址转换模块需要重新建立一条新的表项,该新建的表项请参表2中的第2条表项。表项2中的GlobalAddr:Port是地址转换模块新获取的外网IP地址和端口号,SorMacaddr是交换模块告知的MAC地址。地址转换模块将该注册报文的源IP地址和源端口号转换成GlobalAddr:Port,即10.222.12.1:10001将报文发送给VM。\n[0054]\n序号 Pro GlobalAddr:Port LocalAddr:Port DestAddr:Port SorMacaddr\n1 TCP 10.222.12.1:10000 192.168.0.1:6060 10.222.11.1:6060 b8-ca-3a-98-f4-e1\n2 TCP 10.222.12.1:10001 192.168.0.1:6060 10.222.11.1:6060 b8-ca-3a-98-f4-e4[0055] 表2\n[0056] VM将针对该注册报文反馈回应报文,该回应报文的源IP地址和源端口号为\n10.222.11.1:6060,目的IP地址和目的端口号为10.222.12.1:10001,协议号为TCP;路由设备接收到该回应报文后,根据其源IP地址和源端口号,目的IP地址和目的端口号,协议号匹配到表项2。故,地址转换模块将该回应报文的目的IP地址和目的端口号修改为表项2的\n192.168.0.1:6060,并且将表项2中的SorMacaddr:b8-ca-3a-98-f4-e4告知交换模块。交换模块将该回应报文的目的MAC地址更改为b8-ca-3a-98-f4-e4,然后根据MAC地址表将该报文从对应的出接口发送出去。该报文经过二层转发最终将由分支n中的NVR设备收到。\n[0057] 从上述例子可以看出,使用被发明技术方案之后,对于具有相同IP地址的各分支监控网络中的NVR,能成功的和总部监控网络中的设备进行通信。\n[0058] 以上都是通过监控网络来对本发明的技术方案进行阐述的,但是可以理解的是,本发明的技术方案并不限于应用于监控内网和监控外网,而是适用于各种业务的网络。本发明的技术方案实际上和IP网络所承载的具体业务没有本质的关系,所以非监控业务的其他业务网络自然适用。\n[0059] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
法律信息
- 2017-07-14
- 2014-06-11
实质审查的生效
IPC(主分类): H04L 29/12
专利申请号: 201310692169.3
申请日: 2013.12.16
- 2014-04-02
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-11-28
|
2006-05-26
| | |
2
| |
2013-03-20
|
2012-12-21
| | |
3
| | 暂无 |
2003-08-11
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |