内网访问外网的方法和设备的制作方法

文档序号:7742616阅读:177来源:国知局
专利名称:内网访问外网的方法和设备的制作方法
技术领域
本发明涉及网络通信技术,特别涉及内网访问外网的方法和设备。
背景技术
传统局域网(LAN)是指同一区域内比如同一办公室、同一建筑物、同一公司等由多台计算机互联所组成的网络,一般是方圆几千米以内。传统局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能。这里,传统局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司内的上千台计算机组成,主要特征在于其内部的地址(比如内部主机和服务器的IP地址)都是标准的私有IP地址(这主要是相对于因特网上全球唯一的公有IP地址而言)。RFC1918为传统局域网预留出了三个IP地址块,分别为

A 类(10. 0. 0. 0 10. 255. 255. 255)、B 类(172. 16. 0. 0 172. 31. 255. 255)和 C 类(192. 168. 0. 0 192. 168. 255. 255)。这三个IP地址块不会在因特网上分配,因此,不必向ISP或者注册中心申请而可以在公司或者企业内部自由使用。随着网络技术的不断发展,出现了与传统局域网的架构相同,但地址规划不同的特殊局域网。之所以会出现特殊局域网,主要是因为一些企业或单位在最初规划局域网时, 没有明确的访问因特网的需求,所以在局域网内部采用了公网地址段。而随着业务、网络的发展,这些企业或单位对于访问因特网的需求越来越强烈。从技术层面上来说,这种特殊局域网是可以通过重新规划IP地址从而变为传统局域网的。但在调整的过程中困难很多,最麻烦的问题是局域网内部很多早期(甚至现在)的应用、服务都在程序中绑定了大量的原有IP地址,这些IP地址都是写死在应用程序中的。如果要调整IP地址,就必须对应用程序进行重新开发、修改。遗憾的是,这些应用程序的开发人员很多都已经离开,也没有留下相关的说明文档,所以重新规划IP地址是非常困难的。另外,局域网内部很多早期(甚至现在)的应用、服务所绑定的大量的IP地址都是采用静态方式分配的,并设置了大量的权限策略。如果重新规划IP地址,需要对大量的IP地址进行修改,同时还要修改大量的权限策略,这会导致工作量大、风险也很大等问题。基于上述由于重新规划特殊局域网内IP地址而存在的诸多困难,这些规划了特殊局域网的企业或单位的开发人员更倾向于通过一些技术手来来解决访问公网的问题。其中,这些技术手段主要包含现有技术中内网(局域网) 在访问外网(公网)时所利用的网络地址转换服务(NAT Server)策略。其中,NAT Server策略是将IP数据报报头中的IP地址转换为另一个IP地址的过程。在实际应用中,NAT Server策略配置在NAT网关的外网接口上,主要用于实现内网访问外网的功能。这种通过使用少量的公有IP地址代表较多的私有IP地址的方式,将有助于减缓可用IP地址空间的枯竭。以图Ia所示的组网为例,如图Ia所示,该组网包含用于连接内网和外网的设备(记为NAT网关),当特殊局域网内部主机A(192. 168.1.3)向外部服务器B (1.1. 1.2)发送一个数据报时,数据报先发送至NAT网关。NAT网关查看数据报报头内容,发现该数据报是发往外网的,那么它将数据报的源地址192. 168. 1. 3换成一个可在外网上选路的公有地址20. 1. 1. 1,并将该数据报发送到外部服务器B,同时在NAT网关的网络地址转换表中记录这一映射关系。外部服务器B给内部主机A(192. 168. 1.3)发送的应答报文(该应答报文的目的地址为20. 1. 1. 1)时,当NAT网关接收到应答报文后,NAT网关再次查看应答报文的报头内容,然后查找当前网络地址转换表的记录,用内部主机A的地址192. 168. 1.3替换应答报文的目的地址。需要注意的是,上述过程对内网中的设备(如图Ia中的主机A和服务器A)来说是透明的。对外部服务器B而言,它认为内网中内部主机A的IP地址就是20. 1. 1. 1,并不知道其实际的IP地址192. 168. 1. 3。但是,对于特殊局域网而言,由于特殊局域网中采用了公网IP地址,这样,就会出现一种比较极端的情况,比如,特殊局域网中的主机配置了公网IP地址。在这种情况下,如果特殊局域网中一主机如图Ib中的Host A需要访问公网,比如需要访问域名www, sina. com,该域名对应的IP地址为202. 38. 1. 8,可以看出,该域名的IP地址将与特殊局域网中另一主机如图Ib中Host B的IP地址产生冲突。配置了公网IP地址的特殊局域网认为自身为公网,而真正的公网相对而言为私网,基于此,其并非传统局域网那样,要求在NAT网关的中与外网的接口(下称外网接口 ) 即如图Ib中的FE1/2上配置NAT krver策略,而是要求在NAT网关中与内网的接口(下称内网接口)即如图Ib中的FE 1/1上配置NAT krver策略。而且,现有技术中,DNS map策略只是在配置了 NAT krver策略的接口上应用,也就是说,在特殊局域网向外访问公网时, 只有NAT网关的内网接口才能应用NAT krver策略和DNS map策略。但是,从图Ib可以看出,DNS服务器返回的DNS响应报文首先到达的是NAT网关的外网接口如图Ib中的FE1/2, 而非NAT网关的内网接口,这样,就会因为该外网接口不能应用DNS map策略而导致无法对 DNS响应报文携带的IP地址执行DNS map转换,进而导致了特殊局域网无法访问公网。并且,现有技术中,DNS map策略主要是针对公网IP地址的,由于特殊局域网中的主机或者服务器配置了公网地址,因此,在特殊局域网向外访问公网时,其当然认为DNS响应报文携带的IP地址为私网IP地址,而非公网IP地址,所以,不会对DNS响应报文携带的IP地址做 DNS map转换,进而导致特殊局域网无法访问公网。

发明内容
本发明提供了内网访问外网的方法和设备,实现特殊局域网用户访问与该特殊局域网地址冲突的公网。本发明提供的技术方案是这样的一种内网访问外网的方法,用于具有路由功能的设备上,所述设备用于连接所述内网和所述外网,在所述设备上全局配置域名映射DNS map策略,该方法包括以下步骤所述设备接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的 DNS响应报文时,根据该DNS响应报文携带的公网IP地址查找对应的DNS map策略;如果查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机。优选地,预先在所述设备连接内网的接口上配置包含公网地址段和私网地址段的地址转换策略NAT Server,所述NAT krver策略的公网地址段包含不同于所述内网中任何一个IP地址的虚拟公网IP地址,所述私网地址段包含所述内网中被配置的、且与所述公网地址段包含的虚拟公网IP地址对应的公网IP地址;所述将公网IP地址转换成对应的虚拟公网IP地址包括从已配置的NAT Server策略中查找私网地址段包含所述DNS响应报文携带的公网IP地址的NAT Server策略,将所述DNS响应报文携带的公网IP地址转换为查找到包含所述DNS响应报文携带的公网IP地址的NAT Server策略中对应的公网地址段包含的虚拟公网IP地址。优选地,所述根据响应报文携带的IP地址查找对应的DNS map策略包括判断当前是否使能了 DNS map策略特性,如果是,则执行根据DNS响应报文携带的 IP地址查找到对应的DNS map策略的操作。优选地,该方法进一步包括A,所述返回的DNS响应报文对应的所述内网中主机向所述设备发送访问外网的报文,访问报文的目的地址为所述返回的DNS响应报文对应的所述内网中主机接收的虚拟公网IP地址;B,所述设备针对接收的访问报文的目的地址执行NAT处理,并发送处理后的访问报文至外网。 优选地,所述步骤B包括Bi,所述设备中与所述内网的接口接收到所述访问报文时,在已配置的NAT Server策略中查找公网地址段包含所述访问报文的目的地址的NATServer策略,如果查找至IJ,则执行步骤B2 ;如果查找不到,则按照现有方式处理所述访问报文;B2,将所述访问报文的目的地址转换为步骤Bl查找到的包含所述访问报文的目的地址的NAT Server策略中私网地址段包含的地址,通过所述设备中与所述外网的接口向外网发送该访问报文。优选地,所述步骤B2中,通过所述设备与所述外网的接口向外网发送访问报文包括在所述设备中与所述外网的接口上执行NAT Outband功能,将所述访问报文的源地址转换为所述设备中与所述外网的接口的地址,然后向所述外网发送该访问报文。优选地,所述步骤B2中将访问报文的目的地址转换为步骤B1查找到的NAT Server策略中私网地址段包含的地址进一步包括建立包含所述访问报文转换之前的目的地址和转换之后的目的地址的会话信息;所述将访问报文的源地址转换为所述设备中与所述外网的接口的地址进一步包括建立包含所述访问报文转换之前的源地址和转换之后的源地址的映射表;当所述外网返回与所述访问报文对应的响应报文给所述主机时,该方法进一步包括所述设备通过所述设备中与所述外网的接口接收到响应报文时,查找包含所述响应报文中目的地址的映射表,将所述响应报文的目的地址转换为查 找到的映射表中与所述响应报文目的地址对应的地址;之后,向所述设备中与所述内网的接口发送响应报文;当所述设备中与所述内网的接口接收到响应报文时,查找包含所述响应报文中源地址的会话信息,将所述响应报文中源地址转换为查找到的会话信息中与所述响应报文中源地址对应的地址,之后发送响应报文至所述发送与所述响应报文对应的访问报文的主机。
一种内网访问外网的设备,所述设备具有路由功能,连接所述内网和所述外网;所述设备包括DNS map配置管理单元,用于在所述设备上全局配置域名映射DNS map策略;查找单元,用于接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址在所述DNS map配置管理单元配置的DNS map策略中查找对应的DNS map策略;转换单元,用于在所述查找单元查找到DNS map策略时,如果该查找到的DNS map 策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网 IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机。优选地,所述设备还包括NAT krver配置管理单元,用于在所述设备中与所述内网的接口上配置包含公网地址段和私网地址段的地址转换策略NAT Server,所述NAT krver策略的公网地址段包含不同于所述内网中任何一个IP地址的虚拟公网IP地址,所述私网地址段包含所述内网中被配置的、且与所述公网地址段包含的虚拟公网IP地址对应的公网IP地址;所述转换单元包括判断子单元,用于判断所述设备当前是否使能了 DNS map策略特性;查找子单元,用于在所述判断子单元的判断结果为是时,从所述NAT Server配置管理单元已配置的NAT Server策略中查找私网地址段包含所述DNS响应报文携带的公网 IP地址的NAT Server策略;转换子单元,用于在所述查找子单元查找到NAT Server策略时,将所述DNS响应报文携带的公网IP地址转换为查找到的NAT krver策略中公网地址段包含的虚拟公网IP 地址。优选地,所述设备还包括NAT处理单元,用于接收所述返回的DNS响应报文对应的所述内网中主机向所述设备发送访问外网的报文,访问报文的目的地址为所述返回的DNS响应报文对应的所述内网中主机接收的虚拟公网IP地址,并针对接收的访问报文的目的地址执行NAT处理,之后, 发送处理后的访问报文至外网。 优选地,所述NAT处理单元包括内网接口处理子单元,用于所述设备与所述内网连接,接收到所述访问报文时,在已配置的NAT Server策略中查找公网地址段包含所述访问报文的目的地址的NAT Server 策略,如果查找到,将所述访问报文的目的地址转换为查找到的NAT krver策略中私网地址段包含的地址,发送至外网接口处理单元;如果查找不到,则按照现有方式处理所述访问报文;外网接口处理子单元,用于所述设备与所述外网连接,将所述访问报文的源地址转换为外网接口处理子单元的地址,并向外网发送该访问报文。优选地,所述内网接口处理子单元在将访问报文的目的地址转换为查找到的NAT Server策略中私网地址段包含的地址时,进一步建立包含所述访问报文转换之前的目的地址和转换之后的目的地址的会话信息;
所述外网接口处理子单元将访问报文的源地址转换为所述设备中与所述外网的接口的地址时进一步建立包含所述访问报文转换之前的源地址和转换之后的源地址的映射表; 当所述外网接口处理子单元接收到所述外网向所述主机返回与所述访问报文对应的响应报文时,查找包含所述响应报文中目的地址的映射表,将所述响应报文的目的地址转换为查找到的映射表中与所述响应报文目的地址对应的地址;之后,向所述内网接口处理子单元发送响应报文;当所述内网接口处理子单元接收到响应报文时,查找包含所述响应报文中源地址的会话信息,将所述响应报文中源地址转换为查找到的会话信息中与所述响应报文中源地址对应的地址,之后发送响应报文至所述发送与所述响应报文对应的访问报文的主机。由以上技术方案可以看出,本发明中,在连接内网和外网的设备上全局配置DNS map策略,这样,实现了 DNS map策略的全局应用,并非现有技术那样仅限于配置了 NAT Server策略的接口上应用DNS map策略。本发明中,连接内网和外网的设备接收到DNS服务器返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址查找到对应的DNS map 策略;如果查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的 DNS响应报文对应的所述内网中主机,如此,即可实现了特殊局域网用户正常访问与特殊局域网中主机或者服务器的IP地址冲突的公网服务器,进而实现了特殊局域网和公网的互访。


图Ia为现有的NAT Server策略实现示意图;图Ib为现有的特殊局域网访问公网的组网示意图;图2为本发明实施例提供的基本流程图;图3为本发明实施例提供的详细流程图;图4本发明实施例提供的流程应用的组网示意图;图5为本发明实施例提供的设备结构图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。参见图2,图2为本发明实施例提供的基本流程图。该实施例用于具有路由功能的设备上,所述设备用于连接所述内网和所述外网,具体实现时,该设备可为NAT网关。在所述设备上全局配置DNS map策略,这样,就能使所述DNS map策略不限于现有技术那样仅在配置了 NAT Server策略的接口上应用。如图2所示,该流程主要包括以下步骤步骤201,所述设备接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址查找对应的DNS map策略。步骤202,如果查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机。通过上述步骤可以看出,本发明提供的方法中,通过在全局配置DNSmap策略,以使所述DNS map策略全局应用,不限于仅在配置了 NAT krver策略的接口上应用,这样,就不会出现现有技术中特殊局域网用户不能正常访问与特殊局域网中主机或者服务器的IP 地址冲突的公网服务器,实现了特殊局域网和公网的互访。这里,步骤202中将公网IP地址转换成对应的虚拟公网IP地址具体实现时,需要依赖于已配置的NAT Server策略,下面对NAT Server策略进行描述。基于在背景技术中的描述,由于特殊局域网中的主机或者服务器配置了公网地址,因此,其认为自身为公网,而真正的公网相对而言为私网,基于此,其并非传统局域网那样要求在连接内网和外网的设备所包含的外网接口比如图Ib中的FElA上配置NAT Server策略,而是要求在该设备的内网接口比如图Ib中的FE1/1上配置NAT Server策略, 具体为进入内网接口比如图Ib中FE1/1的接口视图,在该接口视图上配置NAT Server策略。其中,配置的NAT krver策略包含公网地址段和私网地址段,这里,NAT krver策略的公网地址段包含不同于所述内网中任何一个IP地址的虚拟公网IP地址,其中,该虚拟公网 IP地址具体实现时,为特殊局域网认为的公网IP地址,并不与特殊局域网中的任何IP地址冲突,建议使用标准的私网IP地址;私网地址段包含所述内网中被配置的、且与所述公网地址段包含的虚拟公网IP地址对应的虚拟私网IP地址,其中,该虚拟私网IP地址具体实现时,为特殊局域网认为的私网IP地址,而实际上为真正的公网的IP地址。以图Ib中 Host A访问与该特殊局域网中Host B的IP地址冲突的公网IP地址202. 38. 1. 8 (代表着域名为www, sina. com的服务器)为例,则配置的NATServer策略具体为NAT Server protocol tcp global 192. 168. 1. Iinside 202. 38. 1. 8www其中,192. 168. 1. 1所在的字段为该NAT Server策略的公网地址字段, 202. 38. 1. 8所在的字段为该NAT krver策略的私网地址字段。注意,这里的192. 168. 1. 1 是一个虚拟公网IP地址,其与特殊局域网中的地址没有冲突,对于特殊局域网用户而言, 这个地址代表着www, sina. com的服务器,是一个公网IP地址。而这里的202. 38. 1. 8,由于其处于NAT krver策略中的私有地址字段,对于特殊局域网用户而言,其认为该地址为私有IP地址,但是,实际上,在外网(公网)中,这个地址才真ιΗ代表着胃w. sina. com的公网 IP地址。以上对本发明所采用的NAT krver策略进行了详细描述,下面对本发明所采用的 DNS map策略进行描述。本发明中,需要在连接内网和外网的设备上全局配置DNS map策略,具体为进入该连接内网和外网的设备的全局视图,在该全局视图下配置DNS map策略。该全局配置的DNS map策略主要是针对特殊局域网中配置的公网IP地址,其具体实现时与现有的DNS map策略有些不同。以图Ib中Host A访问外网中与该特殊局域网中Host B的IP地址冲突的公网IP地址202. 38. 1. 8为例,则该DNS map策略具体为NAT dns-map domain www. sina. com protocol tcp ip 202. 38. 1. 8port wwwprivate ;相比于现有技术,本发明中的DNS map策略新增加了 private字段,该字段具体表示将DNS响应报文携带的公网IP地址转换为NAT Server策略中公网地址段中的虚拟公网 IP地址,之所以表示这样的含义,主要是因为特殊局域网采用了公网地址,因此,其认为自身为公网,而真正的公网相对而言为私网,基于此,其认为DNS响应报文携带的公网IP地址 202. 38. 1. 8为私网IP地址,也就是说,DNS map策略中的202. 38. 1. 8代表着一个IP私网地址(相对于特殊局域网而言),为了实现特殊局域网与公网之间的通信,需要将该DNS响应报文携带的公网IP地址转换为NAT Server策略公网地址段中的虚拟公网IP地址。 比如,图 Ib ψ Host A 访问 www, sina. com,其中,该 www, sina. com 对应的 IP 地址为202. 38. 1.8,其与该特殊局域网中Host B的IP地址冲突202. 38. 1.8,则图Ib中的NAT 网关在接收到DNS响应报文时,基于上述配置的DNS map策略和NAT Server策略,即可实现将DNS报文中的202. 38. 1. 8这个私网地址(相对于特殊局域网而言)根据NAT Server 策略转换为作为公网地址192. 168. 1. 1 (相对于特殊局域网而言)。需要说明的是,为便于特殊局域网与公网之间的通信,本发明中,还在该连接内网和外网的设备所包含的外网接口(具体为与公网连接的接口)上配置出方向地址转换(NAT Outband)策略。这里,NAT Outband策略的配置类似于现有技术,具体实现时包括在与公网连接的外网接口比如图Ib中FE 1/2上配置NAT Outband策略,目的是对特殊局域网中配置的公网IP地址都执行地址转换(这可通过配置ACL实现),转换为用于该外网接口的地址。上述对连接内网和外网的设备的配置进行了描述。下面基于上述配置对本发明实施例提供的方法进行详述。参见图3,图3为本发明实施例提供的详细流程图。该流程用于具有路由功能的设备上,所述设备用于连接所述内网和所述外网,这里,为便于描述,记该设备为NAT网关,具体如图4所示的组网。假如图4中IP地址为202. 38. 1. 1的Host A需要访问www, sina. 迎里,对应的IP地址为202. 38,1. 8,该IP地址与特殊局域网中Host B的IP地址冲突。在图 4所示的NAT网关中配置上述的DNS map策略、NAT Server策略和NATOutband策略,其中, 在使用DNS map策略时,还可以在NAT网关上配置一条命令,使能本发明提供的DNS map策略,即只有使能了 DNS map策略的NAT网关才能够执行本发明的方法,当然,也可以不在NAT 网关上配置使能本发明提供的DNSmap策略的特性,即默认都执行本发明所提供的方法;则如图3所示,该流程可包括以下步骤步骤301,Host A向DNS服务器发出DNS请求报文,所述DNS请求报文中携带了访问域名 www, sina. com。步骤302,DNS服务器对所述DNS请求报文中的域名进行解析,发现是访问公网的, 则将该域名对应的公网IP地址携带在DNS响应报文中返回给Host A。步骤303,NAT网关接收到DNS响应报文时,判断是否使能了 DNS map策略特性,如果是,则执行步骤304 ;否则,按照现有技术中NAT网关处理DNS响应报文的方式处理。如果NAT网关使能了 DNS map策略特性,则说明NAT网关按照本发明提供的方法来处理该DNS响应报文。步骤304,NAT网关分析DNS响应报文中的公网IP地址,查找包含该IP地址的DNS map策略。这里,NAT网关先通过外网接口 FE1/2接收到DNS响应报文,但由于DNS map策略是全局配置的,因此,其并不限定只有在配置了 NAT Server策略的接口上启用,也就是说, 即使外网接口 FE 1/2没有配置NATServer策略,其仍可启用DNS map策略。步骤305,判断该查找到的DNS map策略中是否包含private字段,如果是,则执行步骤306 ;否则,按照现有技术中NAT网关处理DNS响应报文的方式处理。如果查找到的DNS map策略中包含private字段,则表示该DNS map策略要求将 DNS响应报文携带的IP地址转换为NAT Server策略中公网地址段中的虚拟公网IP地址。 如上所述,由于Host A访问的www. sina. com的IP地址为202. 38. 1. 8,因此,本实施例中, DNS响应报文携带的公网IP地址为202. 38. 1. 8,则上述步骤304中查找到的DNS map策略为NATdns-map domain www. sina. com protocol tcp ip 202. 38. 1. 8port www private。 可以看出,该DNS map策略包含private, 也就是说,DNS map策略要求将DNS响应报文携带的公网IP地址转换为NAT Server策略中公网地址段中的虚拟公网IP地址,执行步骤306。步骤306,在所有配置了 NAT Server策略的接口上查找出私网地址段为所述DNS 响应报文携带的公网IP地址的NAT Server策略,将该公网IP地址转换为查找到的NAT Server策略中公网地址段中的虚拟公网IP地址,并转发至Host A。假如本步骤 306 中查找出的 NAT Server 策略为NAT server protocol tcpglobal 192. 168. 1. 1 inside 202. 38. 1. 8www,则将 DNS 响应报文携带的 IP 地址为 202. 38. 1. 8 转换为 192. 168. 1. 1。 步骤307,HostA发送访问www, sina. com的访问报文给NAT网关,其中,该访问报文携带的源地址为Host A的地址202. 38. 1.1,目的地址为上述转换后的地址 192. 168. 1. 1。步骤308,NAT网关收到访问报文时,在内网接口 FE 1/1上查找公网地址字段为所述目的地址的NAT server策略,将目的地址转换为查找到的NATserver策略中私网地址字段的地址。具体地,假如步骤308中查找到的NAT server策略为NAT serverprotocol tcp global 192. 168. 1. Iinside 202. 38. 1. 8www,则将目的地址 192. 168. 1. 1 转换为 202. 38. 1. 8 (相对于局域网用户而言,202. 38. 1. 8为私网地址;但实际上,这个地址是一个真正的公网IP地址)。步骤309,将转换了目的地址的访问报文发送至外网接口比如FE 1/2。步骤310,外网接口 FE1/2将该访问报文的源地址转换为该接口的地址比如 166. 111. 1. 1,并建立包含转换前的源地址和转换后的源地址的映射表,之后,通过路由转发至 www, sina. com 月艮H。这里,本步骤310中之所以建立映射表,主要是为了便于后续转发该访问报文对应的响应报文(具体见步骤312),其中,该映射表还可以包含其他信息,即该访问报文携带的报文协议号、目的地址、源端口号和目的端口号等。至此,通过上述步骤实现了特殊局域网主机访问外网服务器的流程,其中,该外网服务器具有与该特殊局域网中IP地址冲突的公网IP地址。优选地,本实施例中,当外网服务器www, sina. com服务器需要返回针对该访问报文的响应报文时,其中,该响应报文的源地址和目的地址正好与上述的访问报文携带的源地址和目的地址相反,即响应报文的源地址是202. 38. 1. 8,目的地址是166. 111. 1. 1。具体见下述步骤311至步骤313。步骤311,www, sina. com服务器返回响应报文至NAT网关。步骤312,NAT网关通过外网接口比如图4中的FE 接收到响应报文时,根据建立的映射表转换响应报文的目的地址,之后,发送该响应报文至内网接口。具体地,步骤312可根据响应报文携带的目的地址等查找到对该响应报文对应的访问报文执行源地址转换时建立的映射表,之后,根据查找到的映射表转换响应报文的目的地址。比如,如果查找到的映射表包含了 202. 38. 1. 1和166. 111. 1. 1之间的映射关系, 如此,本步骤312将响应报文的目的地址转换为202. 38. 1. 1。步骤313,内网接口对响应报文的源地址进行转换,之后,发送至HostA。这里,为了实现步骤313,本实施例中,步骤308在对访问报文的目的地址进行转换时,进一步建立包含该访问报文转换前的目的地址和转换后的目的地址的会话信息;其中,建立的会话信息还可以包含其他信息,比如该访问报文的协议号、源地址、源端口号和目的端口号等。如此,执行到本步骤313时,即可根据响应报文携带的源地址等信息查找到对该响应报文对应的访问报文的目的地址转换时建立的会话信息,之后,根据查找到的会话信息对响应报文的源地址进行转换。比如,执行到本步骤313时,响应报文的源地址为 202. 38. 1. 8,如果查找到的会话信息包含了 202. 38. 1. 8与192. 168. 1. 1之间的映射关系, 则直接将该源地址202. 38. 1. 8转换为192. 168. 1. 1。至此,通过上述操作实现了公网返回响应报文至特殊局域网的流程。以上对发明实施例提供的方法进行了描述,下面结合具体实施例对本发明提供的设备进行描述。参见图5,图5为本发明实施例提供的设备结构图。这里,所述设备具有路由功能, 连接所述内网和所述外网,具体实现时,可为连接在内网和外网之间的NAT网关;如图5所示,所述设备可包括DNS map配置管理单元501,用于在所述设备上全局配置域名映射DNSmap策略;查找单元502,用于接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址在DNS map配置管理单元501配置的DNS map策略中查找对应的DNS map策略;转换单元503,用于在查找单元502查找到DNS map策略时,如果该查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机。优选地,如图5所示,所述设备还包括NAT krver配置管理单元504,用于在所述设备中与所述内网的接口上配置包含公网地址段和私网地址段的地址转换策略NAT Server,所述NAT krver策略的公网地址段包含不同于所述内网中任何一个IP地址的虚拟公网IP地址,所述私网地址段包含所述内网中被配置的、且与所述公网地址段包含的虚拟公网IP地址对应的公网IP地址;基于所述设备包括的NAT Server配置管理单元504,转换单元503可包括判断子单元5031,用于判断所述设备当前是否使能了 DNS map策略特性;查找子单元5032,用于在判断子单元5031的判断结果为是时,从NATServer配置管理单元504已配置的NAT Server策略中查找私网地址段包含所述DNS响应报文携带的公网IP地址的NAT Server策略;转换子单元5033,用于在查找子单元5032查找到NAT Server策略时,将所述DNS 响应报文携带的公网IP地址转换为查找到的NAT Server策略中公网地址段包含的虚拟公网IP地址。之后,当所述返回的DNS响应报文对应的所述内网中主机向所述设备发送访问外网的报文时,为了使该访问报文顺利发送至外网,则如图5所示,所述设备还包括NAT处理单元505,用于接收所述返回的DNS响应报文对应的所述内网中主机向所述设备发送访问外网的报文,访问报文的目的地址为所述返回的DNS响应报文对应的所述内网中主机接收的虚拟公网IP地址,并针对接收的访问报文的目的地址执行NAT处理,并发送处理后的访问报文至外网。其中,NAT处理单元505具体实现时可包括内网接口处理子单元5051,用于所述设备与所述内网连接,接收到所述访问报文时,在已配置的NAT Server策略中查找公网地址段包含所述访问报文的目的地址的NAT Server策略,如果查找到,将所述访问报文的目的地址转换为查找到的NAT Server策略中私网地址段包含的地址,发送至外网接口处理单元;如果查找不到,则按照现有方式处理所述访问报文;外网接口处理子单元5052,用于所述设备与所述外网连接,将所述访问报文的源地址转换为外网接口处理子单元5052的地址,并向外网发送该访问报文。优选地,内网接口处理子单元5051在将访问报文的目的地址转换为查找到的NAT Server策略中私网地址段包含的地址时,进一步建立包含所述访问报文转换之前的目的地址和转换之后的目的地址的会话信息;外网接口处理子单元5052将访问报文的源地址转换为所述设备中与所述外网的接口的地址时进一步建立包含所述访问报文转换之前的源地址和转换之后的源地址的映射表;当外网接口处理子单元5052接收到所述外网向所述主机返回与所述访问报文对应的响应报文时,查找包含所述响应报文中目的地址的映射表,将所述响应报文的目的地址转换为查找到的映射表中与所述响应报文目的地址对应的地址;之后,向内网接口处理子单元5051发送响应报文;当内网接口处理子单元5051接收到响应报文时,查找包含所述响应报文中源地址的会话信息,将所述响应报文中源地址转换为查找到的会话信息中与所述响应报文中源地址对应的地址,之后发送响应报文至所述发送与所述响应报文对应的访问报文的主机。由以上技术方案可以看出,本发明中,在连接内网和外网的设备上全局配置DNS map策略,这样,实现了 DNS map策略的全局应用,并非现有技术那样仅限于配置了 NAT Server策略的接口上应用DNS map策略。本发明中,所述设备接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址查找对应的DNSmap策略;如果查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网 IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机,这样,实现了特殊局域网用户正常访问与特殊局域网中主机或者服务器的IP地址冲突的公网服务器,进而实现了特殊局域网和公网的互访。 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种内网访问外网的方法,用于具有路由功能的设备上,所述设备用于连接所述内网和所述外网,其特征在于,在所述设备上全局配置域名映射DNSmap策略,该方法包括以下步骤所述设备接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址查找对应的DNS map策略;如果查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的 DNS响应报文对应的所述内网中主机。
2.根据权利要求1所述的方法,其特征在于,预先在所述设备连接内网的接口上配置包含公网地址段和私网地址段的地址转换策略NAT Server,所述NAT krver策略的公网地址段包含不同于所述内网中任何一个IP地址的虚拟公网IP地址,所述私网地址段包含所述内网中被配置的、且与所述公网地址段包含的虚拟公网IP地址对应的公网IP地址;所述将公网IP地址转换成对应的虚拟公网IP地址包括从已配置的NAT krver策略中查找私网地址段包含所述DNS响应报文携带的公网IP 地址的NAT Server策略,将所述DNS响应报文携带的公网IP地址转换为查找到包含所述 DNS响应报文携带的公网IP地址的NAT Server策略中对应的公网地址段包含的虚拟公网 IP地址。
3.根据权利要求1所述的方法,其特征在于,所述根据响应报文携带的IP地址查找对应的DNS map策略包括判断当前是否使能了 DNS map策略特性,如果是,则执行根据DNS响应报文携带的IP 地址查找到对应的DNS map策略的操作。
4.根据权利要求1至3任一所述的方法,其特征在于,该方法进一步包括A,所述返回的DNS响应报文对应的所述内网中主机向所述设备发送访问外网的报文, 访问报文的目的地址为所述返回的DNS响应报文对应的所述内网中主机接收的虚拟公网 IP地址;B,所述设备针对接收的访问报文的目的地址执行NAT处理,并发送处理后的访问报文至外网。
5.根据权利要求4所述的方法,其特征在于,所述步骤B包括Bi,所述设备中与所述内网的接口接收到所述访问报文时,在已配置的NAT krver策略中查找公网地址段包含所述访问报文的目的地址的NAT Server策略,如果查找到,则执行步骤B2 ;如果查找不到,则按照现有方式处理所述访问报文;B2,将所述访问报文的目的地址转换为步骤Bl查找到的包含所述访问报文的目的地址的NAT krver策略中私网地址段包含的地址,通过所述设备中与所述外网的接口向外网发送该访问报文。
6.根据权利要求5所述的方法,其特征在于,所述步骤B2中,通过所述设备与所述外网的接口向外网发送访问报文包括在所述设备中与所述外网的接口上执行NAT Outband功能,将所述访问报文的源地址转换为所述设备中与所述外网的接口的地址,然后向所述外网发送该访问报文。
7.根据权利要求6所述的方法,其特征在于,所述步骤B2中将访问报文的目的地址转换为步骤B 1查找到的NAT Server策略中私网地址段包含的地址进一步包括建立包含所述访问报文转换之前的目的地址和转换之后的目的地址的会话信息;所述将访问报文的源地址转换为所述设备中与所述外网的接口的地址进一步包括建立包含所述访问报文转换之前的源地址和转换之后的源地址的映射表;当所述外网返回与所述访问报文对应的响应报文给所述主机时,该方法进一步包括 所述设备通过所述设备中与所述外网的接口接收到响应报文时,查找包含所述响应报文中目的地址的映射表,将所述响应报文的目的地址转换为查找到的映射表中与所述响应报文目的地址对应的地址;之后,向所述设备中与所述内网的接口发送响应报文;当所述设备中与所述内网的接口接收到响应报文时,查找包含所述响应报文中源地址的会话信息,将所述响应报文中源地址转换为查找到的会话信息中与所述响应报文中源地址对应的地址, 之后发送响应报文至所述发送与所述响应报文对应的访问报文的主机。
8.—种内网访问外网的设备,所述设备具有路由功能,连接所述内网和所述外网;其特征在于,所述设备包括DNS map配置管理单元,用于在所述设备上全局配置域名映射DNS map策略; 查找单元,用于接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的 DNS响应报文时,根据该DNS响应报文携带的公网IP地址在所述DNS map配置管理单元配置的DNS map策略中查找对应的DNS map策略;转换单元,用于在所述查找单元查找到DNS map策略时,如果该查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机。
9.根据权利要求8所述的设备,其特征在于,所述设备还包括NAT Server配置管理单元,用于在所述设备中与所述内网的接口上配置包含公网地址段和私网地址段的地址转换策略NAT Server,所述NAT Server策略的公网地址段包含不同于所述内网中任何一个IP地址的虚拟公网IP地址,所述私网地址段包含所述内网中被配置的、且与所述公网地址段包含的虚拟公网IP地址对应的公网IP地址; 所述转换单元包括判断子单元,用于判断所述设备当前是否使能了 DNS map策略特性; 查找子单元,用于在所述判断子单元的判断结果为是时,从所述NAT Server配置管理单元已配置的NAT Server策略中查找私网地址段包含所述DNS响应报文携带的公网IP地址的NAT Server策略;转换子单元,用于在所述查找子单元查找到NAT Server策略时,将所述DNS响应报文携带的公网IP地址转换为查找到的NAT Server策略中公网地址段包含的虚拟公网IP地址。
10.根据权利要求8至9任一所述的设备,其特征在于,所述设备还包括NAT处理单元,用于接收所述返回的DNS响应报文对应的所述内网中主机向所述设备发送访问外网的报文,访问报文的目的地址为所述返回的DNS响应报文对应的所述内网中主机接收的虚拟公网IP地址,并针对接收的访问报文的目的地址执行NAT处理,之后,发送处理后的访问报文至外网。
11.根据权利要求10所述的设备,其特征在于,所述NAT处理单元包括内网接口处理子单元,用于所述设备与所述内网连接,接收到所述访问报文时,在已配置的NAT Server策略中查找公网地址段包含所述访问报文的目的地址的NAT Server策略,如果查找到,将所述访问报文的目的地址转换为查找到的NAT krver策略中私网地址段包含的地址,发送至外网接口处理单元;如果查找不到,则按照现有方式处理所述访问报文;外网接口处理子单元,用于所述设备与所述外网连接,将所述访问报文的源地址转换为外网接口处理子单元的地址,并向外网发送该访问报文。
12.根据权利要求11所述的设备,其特征在于,所述内网接口处理子单元在将访问报文的目的地址转换为查找到的NAT krver策略中私网地址段包含的地址时,进一步建立包含所述访问报文转换之前的目的地址和转换之后的目的地址的会话信息;所述外网接口处理子单元将访问报文的源地址转换为所述设备中与所述外网的接口的地址时进一步建立包含所述访问报文转换之前的源地址和转换之后的源地址的映射表;当所述外网接口处理子单元接收到所述外网向所述主机返回与所述访问报文对应的响应报文时,查找包含所述响应报文中目的地址的映射表,将所述响应报文的目的地址转换为查找到的映射表中与所述响应报文目的地址对应的地址;之后,向所述内网接口处理子单元发送响应报文;当所述内网接口处理子单元接收到响应报文时,查找包含所述响应报文中源地址的会话信息,将所述响应报文中源地址转换为查找到的会话信息中与所述响应报文中源地址对应的地址,之后发送响应报文至所述发送与所述响应报文对应的访问报文的主机。
全文摘要
本发明提供了一种内网访问外网的方法和设备,其中,该方法用于具有路由功能的设备上,所述设备用于连接所述内网和所述外网,在所述设备上全局配置DNS map策略,该方法包括所述设备接收到DNS服务器针对所述内网中主机访问所述外网的请求所返回的DNS响应报文时,根据该DNS响应报文携带的公网IP地址查找对应的DNS map策略;如果查找到的DNS map策略要求将所述公网IP地址转换为虚拟公网IP地址,则将所述DNS响应报文携带的公网IP地址转换成对应的虚拟公网IP地址,并发送至所述返回的DNS响应报文对应的所述内网中主机。采用本发明,实现了特殊局域网用户正常访问与特殊局域网中IP地址冲突的公网服务器。
文档编号H04L29/12GK102170380SQ201010114930
公开日2011年8月31日 申请日期2010年2月25日 优先权日2010年2月25日
发明者李蔚 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1