CN106067887B - 一种基于网络切换的网站连接装置及其方法、一种路由器 - Google Patents

一种基于网络切换的网站连接装置及其方法、一种路由器 Download PDF

Info

Publication number
CN106067887B
CN106067887B CN201610644785.5A CN201610644785A CN106067887B CN 106067887 B CN106067887 B CN 106067887B CN 201610644785 A CN201610644785 A CN 201610644785A CN 106067887 B CN106067887 B CN 106067887B
Authority
CN
China
Prior art keywords
address
module
website
message
network
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
Application number
CN201610644785.5A
Other languages
English (en)
Other versions
CN106067887A (zh
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.)
Beijing Changtong Zhixin Technology Co ltd
Original Assignee
Shanghai Feixun Data Communication 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 Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201610644785.5A priority Critical patent/CN106067887B/zh
Publication of CN106067887A publication Critical patent/CN106067887A/zh
Application granted granted Critical
Publication of CN106067887B publication Critical patent/CN106067887B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • 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/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields

Landscapes

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

Abstract

本发明提供了一种基于网络切换的网站连接装置及其方法、一种路由器,其中,在该网站连接装置中包括:网络切换判断模块,用于判断网站连接装置所处的网络环境是否发生了切换;数据获取模块,用于获取终端发送的请求报文;报文类型判断模块,用于判断请求报文所属请求类型;报文修改模块,分别与网络切换判断模块、数据获取模块以及报文类型判断模块连接,报文修改模块基于网络切换判断模块的判断结果和报文类型判断模块的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。以此无需手动清除终端浏览器中的DNS缓存,就能实现网络切换后终端对待访问网站的正常访问,为用户提供方便。

Description

一种基于网络切换的网站连接装置及其方法、一种路由器
技术领域
本发明涉及通信技术领域,尤其涉及一种基于网络切换的网站连接装置及其方法、一种路由器。
背景技术
当第一次使用浏览器访问一个网站时,简要流程包括:1)在浏览器地址栏输入要访问网站的域名,域名确认后浏览器将DNS(DomainName System,域名系统)查询包发送到DNS服务器,以查询该域名对应的IP(Internet Protocol,网络互连协议)地址;2)DNS服务器查询到域名对应的IP地址之后将其返回给浏览器;3)浏览器根据此IP地址,与网站服务器之间建立TCP(Transmission Control Protocol,传输控制协议)连接,且在握手成功后,发送HTTP(Hyper-Text TransferProtocol,超文本传输协议)报文请求至网站服务器请求该域名的网页数据;4)网站服务器返回网页数据给浏览器,完成相应网站的访问。
为了节约网络资源,浏览器接收到网站域名对应的IP地址之后,往往会将该IP地址进行存储,即DNS缓存。以此,在一定时间内,若再次和该网站建立数据交互,则不需要再次进行DNS查询,直接与此前缓存的该域名的IP地址进行TCP连接即可。
但是,如果在这期间用户进行了网络的切换,如,从企业外网切换到企业内网,此时,外网缓存的IP地址内网将无法访问,会直接导致TCP连接握手失败,后续的HTTP步骤也不会进行,导致网站的访问失败。同理,从企业内网切换到外网也会存在同样的问题。
当前,目前也有能够解决这一问题的方法,如,用户手动清除浏览器中的DNS缓存,以此让浏览器重新发DNS查询包得到相应网络中该域名对应的IP地址,重新连接访问。但是,对计算机网络入门级用户来说,往往并不知道采用该种方法来解决,无疑会耗费大量的时间,导致一段时间内不能正常工作,从而影响办公效率。
发明内容
针对上述问题,本发明提供了一种基于网络切换的网站连接装置及其方法、一种路由器,有效解决了由于DNS缓存导致网络切换之后待访问网站不能连接的问题。
本发明提供的技术方案如下:
一种基于网络切换的网站连接装置,包括:网络切换判断模块、数据获取模块、报文类型判断模块以及报文修改模块,其中,
所述网络切换判断模块,用于判断网站连接装置所处的网络环境是否发生了切换;
所述数据获取模块,用于获取终端发送的请求报文;
所述报文类型判断模块,与所述数据获取模块连接,所述报文类型判断模块用于判断所述请求报文所属请求类型;
所述报文修改模块,分别与所述网络切换判断模块、数据获取模块以及报文类型判断模块连接,所述报文修改模块基于所述网络切换判断模块的判断结果和报文类型判断模块的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。
进一步优选地,所述请求报文所属的请求类型包括:DNS报文和TCP握手报文。
在本技术方案中,DNS报文具体为查询待访问网站域名对应IP地址的请求报文,TCP握手报文为终端与待访问网站域名对应的IP地址之间进行三次握手的请求报文。当网络切换判断模块判断出当前所处的网络环境发生了切换,且判断出请求报文为TCP握手报文(说明终端浏览器中已经缓存有网路域名对应的IP地址),则使用报文修改模块对请求报文中的目的IP地址/源IP地址进行修改,以此无需手动清除终端浏览器中的DNS缓存,就能实现网络切换后终端对待访问网站的正常访问,为用户提供方便,即便对计算机网络入门级用户来说,也不用担心因为DNS缓存出现网络访问出错的问题。
进一步优选地,所述网站连接装置中包括与所述报文修改模块连接的数据存储模块,所述数据存储模块中预存有:第一网络中与待访问网站域名关联的第一IP地址和第二网络中与待访问网站域名关联的第二IP地址;所述第一IP地址和所述第二IP地址分别与所述待访问网站域名关联存储。
在本技术方案中,将待访问网站域名在不同网络中的IP地址预先分块存储在数据存储模块中,这样,当检测到当前所处的网络环境为第二网络时,将请求报文中的目的IP地址(即上述第二IP地址)修改为第一IP地址(在第一网络中DNS缓存待访问网站域名对应的IP地址,即上述第一IP地址)。可以看出,即便网络发生了切换,终端通过与第一网络的第一IP地址建立TCP连接,以此在第二网络中实现终端与待访问网站之间的TCP连接,简单方便且实用。
进一步优选地,所述网站连接装置中还包括一分别与所述数据获取模块和报文修改模块连接的网络环境判断模块,用于判断所述网站连接装置当前所处的网络环境;所述网络环境包括:第一网络和第二网络;
所述数据获取模块基于所述网站连接装置所处的网络环境获取终端发送的请求报文;
所述报文修改模块基于所述网络切换判断模块的判断结果、所述报文类型判断模块的判断结果以及所述网站连接装置所处的网络环境将请求报文中的目的IP地址修改为第一IP地址/第二IP地址,或将请求报文中的源IP地址修改为第一IP地址/第二IP地址。
在本技术方案中,当请求报文为从终端向待访问网站发送的报文信息,则将请求报文中的目的IP地址修改为第一IP地址/第二IP地址;当请求报文为从待访问网站向终端发送的报文信息,则将请求报文中的源IP地址修改为第一IP地址/第二IP地址,以此实现终端与待访问网站之间的TCP连接。
进一步优选地,所述网站连接装置中还包括一与所述数据获取模块、报文修改模块以及数据存储模块连接的报文解析模块;
所述报文解析模块对所述请求报文进行解析得到目的IP地址/源IP地址并将其发送至报文修改模块;
所述报文解析模块对所述请求报文进行解析得到终端的MAC地址,并将其存储在数据存储模块中。
进一步优选地,所述数据存储模块中包括一分别与所述报文类型判断模块和报文解析模块连接的标记单元,所述标记单元基于所述请求报文的请求类型对该终端MAC地址的放行标记位进行标记。
在本技术方案中,还在数据存储模块中对该终端的放行标记进行标记,以实现对整个连接过程的实时监控。
本发明还提供了一种路由器,该路由器中包括上述网站连接装置。
在本技术方案中,首先在路由器中设置好待访问网站域名在各个待访问网站中对应的IP地址,之后,若待访问网站发生了切换,通过该路由器访问同一待访问网站进行数据通信时,该路由器对其中的目的IP地址或源IP地址进行修改,将请求数据放行到待访问网站或终端,实现网络切换前后与待访问网站之间的TCP连接,无需手动清除终端浏览器中的DNS缓存,通过路由器的转换实现目的,简单方便。
本发明还提供了一种基于网络切换的网站连接方法,包括:
S1判断当前所处的网络环境是否发生了切换;
S2获取终端发送的请求报文;
S3判断所述请求报文所属请求类型;
S4基于步骤S1和步骤S3中的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。
进一步优选地,在步骤S2中具体包括:基于当前所处的网络环境获取终端发送的请求报文;所述网络环境包括:第一网络和第二网络;和/或,
在步骤S3中具体包括:判断所述请求报文是否为TCP握手报文,若是,则跳转至步骤S4;
在本技术方案中,TCP握手报文为终端与待访问网站域名对应的IP地址之间进行三次握手的请求报文。当判断出当前所处的网络环境发生了切换,且判断出请求报文为TCP握手报文(说明终端浏览器中已经缓存有网路域名对应的IP地址),则对请求报文中的目的IP地址/源IP地址进行修改,以此无需手动清除终端浏览器中的DNS缓存,就能实现网络切换后终端对待访问网站的正常访问,为用户提供方便,即便对计算机网络入门级用户来说,也不用担心因为DNS缓存出现网络访问出错的问题。
和/或,在步骤S4中具体包括:基于步骤S1和步骤S3中的判断结果以及当前所处的网络环境将请求报文中的目的IP地址修改为第一IP地址/第二IP地址,或将请求报文中的源IP地址修改为第一IP地址/第二IP地址;其中,
所述第一IP地址为第一网络中与待访问网站域名关联IP地址,第二IP地址为第二网络中与待访问网站域名关联的IP地址。
在本技术方案中,将待访问网站域名在不同网络中的IP地址预先分块存储,这样,当检测到当前所处的网络环境为第二网络时,将请求报文中的目的IP地址(即上述第二IP地址)修改为第一IP地址(在第一网络中DNS缓存待访问网站域名对应的IP地址,即上述第一IP地址)。可以看出,即便网络发生了切换,终端通过与第一网络的第一IP地址建立TCP连接,以此在第二网络中实现终端与待访问网站之间的TCP连接,简单方便且实用。
进一步优选地,在步骤S3之后还包括:
S31对所述请求报文进行解析得到目的IP地址/源IP地址;
S32对所述请求报文进行解析得到终端的MAC地址并进行存储;
S33基于步骤S32中的判断结果该终端MAC地址的放行标记位进行标记。
在本技术方案中,当请求报文为从终端向待访问网站发送的报文信息,则将请求报文中的目的IP地址修改为第一IP地址/第二IP地址;当请求报文为从待访问网站向终端发送的报文信息,则将请求报文中的源IP地址修改为第一IP地址/第二IP地址,以此实现终端与待访问网站之间的TCP连接。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对上述特性、技术特征、优点及其实现方式予以进一步说明。
图1为本发明中网站连接装置一种实施方式示意图;
图2为本发明中网站连接装置另一种实施方式示意图;
图3为本发明中网站连接装置另一种实施方式示意图;
图4为本发明中网站连接装置另一种实施方式示意图;
图5为本发明中网站连接方法一种实施方式流程示意图。
附图标号说明:
100-网站连接装置,110-网络切换判断模块,120-数据获取模块,130-报文类型判断模块,140-报文修改模块,150-数据存储模块,160-网络环境判断模块,170-报文解析模块。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
如图1所示为本发明提供的基于网络切换的网站连接装置一种实施方式示意图,从图中可以看出,在该网站连接装置100中包括:网络切换判断模块110、数据获取模块120、报文类型判断模块130以及报文修改模块140,其中,报文类型判断模块130与数据获取模块120连接,报文修改模块140分别与网络切换判断模块110、数据获取模块120以及报文类型判断模块130连接。在工作过程中,网络切换判断模块110用于判断网站连接装置100所处的网络环境是否发生了切换;数据获取模块120用于获取终端发送的请求报文;报文类型判断模块130用于判断请求报文所属请求类型;报文修改模块140基于网络切换判断模块110的判断结果和报文类型判断模块130的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。具体,请求报文所属的请求类型包括:DNS报文和TCP握手报文。
更具体来说,若网络切换判断模块110判断出当前网络环境发生了切换(如,从第一网络(企业外网)切换到了第二网络(企业内网)),且判断出请求报文为TCP握手报文(说明在第一网络中终端浏览器已经缓存有待访问网路域名对应的IP地址),此时,为了使终端在第二网络中与该网站取得TCP连接,使用报文修改模块140对请求报文中的目的IP地址/源IP地址进行修改。具体,若请求报文为终端向网站服务器发送的请求报文,则报文修改模块140修改请求报文中的目的IP地址;若请求报文为网站服务器向终端发送的请求报文,则报文修改模块140修改请求报文中的源IP地址。
在一个具体实施例中,若判断出抓取的请求报文为DNS报文,即请求www.xxx.com(假如该域名为该企业官网域名),表明终端发送查询该域名IP地址的请求至DNS服务器,此时不管当前网路环境是否发生了切换,直接放行该终端,DNS服务器会直接回复该域名对应的IP地址,不存在由DNS缓存导致不能访问该域名的情况。
若判断出抓取的请求报告为TCP握手报文(TCP连接SYN(synchronous,TCP/IP建立连接时使用的握手信号)报文)。与此同时,若判断出当前网路环境没有发生切换,即在同一网络中DNS缓存该待访问网站域名对应的IP地址,此时,终端直接通过三次握手与待访问网站建立TCP连接,同样不存在由DNS缓存导致不能访问该域名的情况。
若判断出抓取的请求报告为TCP握手报文,且判断出当前网络环境发生了切换,如从企业外网切换到企业内网,此时,不可能再通过企业外网中DNS缓存中该域名对应的IP地址连接该待访问网站,即会出现由DNS缓存导致不能访问该域名的情况。由此,若该访问请求为终端发送给网站的,则将请求报文中的目的IP地址修改为DNS缓存中该待访问网站域名对应的IP地址;若该访问请求为网站发送给终端的,则将请求报文中的源IP地址修改为DNS缓存中该待访问网站域名对应的IP地址,以此实现企业内网中,终端与该待访问网站之间的TCP连接。可以看出,在当前网络环境切换到企业内网之后,实际上是终端与企业外网IP地址之间建立TCP连接,建立终端与企业内网IP地址之间的TCP连接。要说明的是,通过本实施方式提供的方法建立了终端与企业内网IP地址之间的TCP连接后,后续的HTTP报文等同样要做相同的处理(修改IP地址)。
对上述实施方式进行改进得到本实施方式,如图2所示,从图中可以看出,在本实施方式中,网站连接装置100中包括与报文修改模块140连接的数据存储模块150,数据存储模块150中预存有:第一网络中与待访问网站域名关联的第一IP地址和第二网络中与待访问网站域名关联的第二IP地址;第一IP地址和第二IP地址分别与待访问网站域名关联存储。
在一个具体实施例中,在数据存储模块150中包括两个数据结构,分别为第一数据结构和第二数据结构。其中,第一数据结构中存储有待访问网站域名对应的第一网络的第一IP地址和待访问网站域名。若有多个待访问网站域名,则相应地的存储多个相应的第一IP地址。第二数据结构中存储待访问网站域名对应的第二网络的第二IP地址和该待访问网站域名。若有多个待访问网站域名,则相应地的存储多个相应的第二IP地址。
具体:若第一网络为企业外网,第二网络为企业内网,若当前网络环境从第一网络切换到第二网络,此时,若需要查询某一待访问网站域名在企业内网(第二网络)中的第二IP地址时,则首先根据该待访问域名在企业外网(第一数据结构)中的第一IP地址查询到该待访问网站域名,然后根据该访问网站域名在第二数据结构中查询到对应的第二IP地址。相对应地,若当前网络环境从第二网络切换到第一网络,此时,若需要查询某一待访问网站域名在企业外网中的第一IP地址时,首先根据该域名在企业内网(第二数据结构)中的第二IP地址查询到该待访问网站域名,然后根据该访问网站域名在第一数据结构中查询到对应的第一IP地址。
对上述实施方式进行改进得到本实施方式,如图3所示,从图中可以看出,在本实施方式中,网站连接装置100中还包括一分别与数据获取模块120和报文修改模块140连接的网络环境判断模块160,用于判断网站连接装置100当前所处的网络环境;具体该网络环境包括:第一网络和第二网络。在工作过程中,数据获取模块120基于网站连接装置100所处的网络环境获取终端发送的请求报文;报文修改模块140基于网络切换判断模块110的判断结果、报文类型判断模块130的判断结果以及网站连接装置100所处的网络环境将请求报文中的目的IP地址修改为第一IP地址/第二IP地址,或将请求报文中的源IP地址修改为第一IP地址/第二IP地址。
在一个具体实施例中,网络环境判断模块160通过DHCP(Dynamic HostConfiguration Protocol,动态主机配置协议)方式获取到网站连接装置100的IP地址,并判断该网段是在第一网络的网段中还是在第二网络的网段中。具体,若网络切换判断模块110判断出发生了网络切换,且在网络环境判断模块160中判断出当前处于第一网络的网段中,则说明从第二网段切换到了第一网段;相反,若网络切换判断模块110判断出发生了网络切换,且在网络环境判断模块160中判断出当前处于第二网络的网段中,则说明从第一网段切换到了第二网段。
对上述实施方式进行改进得到本实施方式,如图4所示,从图中可以看出,在本实施方式中,网站连接装置100中还包括一与数据获取模块120、报文修改模块140以及数据存储模块150连接的报文解析模块170。在工作过程中,报文解析模块170对请求报文进行解析得到目的IP地址/源IP地址并将其发送至报文修改模块140;报文解析模块170对请求报文进行解析得到终端的MAC地址,并将其存储在数据存储模块150中。更进一步来说,数据存储模块150中包括一分别与报文类型判断模块130和报文解析模块170连接的标记单元,标记单元基于请求报文的请求类型对该终端MAC地址的放行标记位进行标记,并将其与终端的MAC地址关联存储在数据存储模块150中的第三数据结构中。
在一个具体实施例中,若判断出抓取的请求报文为DNS报文,且在解析出源MAC地址(终端的MAC地址)之后将其存储在数据存储模块150中的第三数据结构中,且将其放行标记位标记为“1”,直接放行该终端,表明终端发送了DNS查询报文,DNS服务器直接回复该待访问网站域名。在这之后基于接收到的请求报文直接查询第三数据结构,若查询结果为请求报文中的源MAC地址的放行标记位被标记为“1”,则直接放行处理,直到终端离线(不再接入该网站连接装置100),则清除第三数据结构中该条记录。
若判断出抓取的请求报告为TCP握手报文,且在第三数据结构中查询到请求报文中的源MAC地址的放行标记位被标记为“1”,则直接放行该终端,终端直接通过三次握手与待访问网站建立TCP连接。
若判断出抓取的请求报告为TCP握手报文,且判断出当前网络环境发生了切换,如从第一网络(如企业外网)切换到第二网络(如企业内网),则将解析出的源MAC地址(终端的MAC地址)存储在数据存储模块150中的第三数据结构中,且将其放行标记位标记为“0”。此时,若解析出的目的IP地址能够在第一数据结构中查到该待访问网络域名对应的第一IP地址,则说明存在DNS缓存,此时,将目的IP地址修改为第二网络中对应的第二IP地址,后放行该终端转发到相应的第二IP地址。类似地,在后续的TCP连接交互报文中,若为从网站服务器中接收的请求报文,则将请求报文中的源IP地址为域名第一IP地址。要说明的是,之后,每次访问该待访问网站域名都需要进行以上操作处理,直到该终端发出DNS报文,将该源MAC地址对应的放行标记位标记为“1”,以后所有请求报文进来查询到第三数据结构中的放行标记为“1”,则不再进行以上处理,直接放行,直到终端离线。
本发明还提供了一种路由器,该路由器中包括上述网站连接装置100。
在一个具体实施例中,首先对该路由器进行配置,将同一待访问网站域名在不同网络中对应的IP地址进行与存储。比如待访问网站域名www.xxx.com(假如该域名为该企业官网域名)对应的第一网络和第二网络中的IP地址分别为“218.245.64.64”和“172.17.20.20”,当然,可能同一待访问网站域名对应的第一IP地址/第二IP地址有多个,都进行一一存储。具体,将待访问网站域名对应的第一网络的第一IP地址和待访问网站域名关联存储在第一数据结构中。将待访问网站域名对应的第二网络的第二IP地址和该待访问网站域名存储在第二数据结构中。
路由器首先通过DHCP方式获取到路由器本身的IP地址,并判断该IP地址是在第一网络的网段中还是第二网络的网段中。若网络环境从第一网络切换到第二网络,则路由器的IP地址处于第二网络的网段中。之后,在路由器的Linux系统内核中注册相应的HOOK函数,具体,若路由器工作在网桥模式下,则HOOK点放在NF_IP_FORWARD(表示要转发的数据包通过此检测点);若路由器工作在路由模式下放在NF_IP_PRE_ROUTING(表示刚刚进入网络层的数据包通过此检测点),以此将通过路由器的数据包(请求报文)获取出来。具体,当终端用浏览器访问www.xxx.com时,则在HOOK函数中解析出请求报文的源MAC地址后,首先要在第三数据结构中进行查询,如果能查询到该MAC地址并其放行标记位为“1”,则直接放行。
更进一步来说,若HOOK函数中首次抓取到从终端发出的请求报文为DNS报文,则首先从该DNS报文中解析出源MAC地址(即终端的MAC地址),然后将该MAC地址存入第三数据结构中,并将标记位记为“1”,这表明终端发送了DNS报文,此时,DNS服务器回复该待访问网络域名对应的第二IP地址,不会存在缓存导致不能访问www.xxx.com的情况。之后的请求报文进入HOOK函数之后,直接根据解析出的源MAC地址查询第三数据结构,如果该MAC地址的放行标记位为“1”,则直接放行处理,直到终端离线(该终端不再接入此路由器),并清除第三数据结构中该条记录。
若HOOK函数中首次抓取到从终端发出的是TCP握手报文,则解析出该请求报文的源MAC地址,并且存入到第三数据结构中,同时将其放行标记位标记为“0”。此时,若该请求报文中目的IP地址能在第一数据结构中查询到待访问网络域名对应的第一IP地址,则说明存在DNS缓存,将该请求报文的目的IP地址修改为该待访问域名对应的第二IP地址,然后再放行让路由器转发到该第二IP地址。在后续的TCP连接交互报文中,将从网站服务器中接收的请求报文中的源IP地址为第一IP地址。在完成TCP连接后,后续的HTTP报文作同样的IP修改操作,以此路由器起到中转交互的作用。
如图5所示为本发明提供的基于网络切换的网站连接方法一种实施方式流程示意图,应用于上述网站连接装置100,从图中可以看出,在该网站连接方法中包括:S1判断当前所处的网络环境是否发生了切换;S2获取终端发送的请求报文;S3判断请求报文所属请求类型;S4基于步骤S1和步骤S3中的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。
具体来说,在步骤S2中包括:基于当前所处的网络环境获取终端发送的请求报文;网络环境包括:第一网络和第二网络。在步骤S3中具体包括:判断请求报文是否为TCP握手报文,若是,则跳转至步骤S4。
具体,若步骤S1中判断出当前网络环境发生了切换(如,从第一网络切换到第二网络),且判断出请求报文为TCP握手报文(说明在第一网络中终端浏览器已经缓存有待访问网路域名对应的IP地址),此时,为了使终端在第二网络中与该网站取得TCP连接,则对请求报文中的目的IP地址/源IP地址进行修改。具体,若请求报文为终端向网站服务器发送的报文,则修改请求报文中的目的IP地址;若请求报文为网站服务器向终端发送的报文,则修改请求报文中的源IP地址。
在步骤S4中具体包括:基于步骤S1和步骤S3中的判断结果以及当前所处的网络环境将请求报文中的目的IP地址修改为第一IP地址/第二IP地址,或将请求报文中的源IP地址修改为第一IP地址/第二IP地址;其中,第一IP地址为第一网络中与待访问网站域名关联IP地址,第二IP地址为第二网络中与待访问网站域名关联的IP地址。
对上述实施方式进行改进得到本实施方式,在本实施方式种,在该网站连接方法中包括:S1判断当前所处的网络环境是否发生了切换;S2获取终端发送的请求报文;S3判断请求报文所属请求类型;S31对请求报文进行解析得到目的IP地址/源IP地址;S32对请求报文进行解析得到终端的MAC地址并进行存储;S33基于步骤S32中的判断结果该终端MAC地址的放行标记位进行标记;S4基于步骤S1和步骤S3中的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。
在一个具体实施例中,若判断出抓取的请求报文为DNS报文,且在解析出源MAC地址(终端的MAC地址)之后将其存储在第三数据结构中,且将其放行标记位标记为“1”,直接放行该终端,表明终端发送了DNS查询报文,DNS服务器直接回复该待访问网站域名。在这之后基于接收到的请求报文直接查询第三数据结构,若查询结果为请求报文中的源MAC地址的放行标记位被标记为“1”,则直接放行处理,直到终端离线,则清除第三数据结构中该条记录。
若判断出抓取的请求报告为TCP握手报文,且在第三数据结构中查询到请求报文中的源MAC地址的放行标记位被标记为“1”,则直接放行该终端,终端直接通过三次握手与待访问网站建立TCP连接。
若判断出抓取的请求报告为TCP握手报文,且判断出当前网络环境发生了切换,如从第一网络(如企业外网)切换到第二网络(如企业内网),则将解析出的源MAC地址(终端的MAC地址)存储在第三数据结构中,且将其放行标记位标记为“0”。此时,若解析出的目的IP地址能够在第一数据结构中查到该待访问网络域名对应的第一IP地址,则说明存在DNS缓存,此时,将目的IP地址修改为第二网络中对应的第二IP地址,后放行该终端转发到相应的第二IP地址。类似地,在后续的TCP连接交互报文中,若为从网站服务器中接收的请求报文,则将请求报文中的源IP地址为域名第一IP地址。要说明的是,之后,每次访问该待访问网站域名都需要进行以上操作处理,直到该终端发出DNS报文,将该源MAC地址对应的放行标记位标记为“1”,以后所有请求报文进来查询到第三数据结构中的放行标记为“1”,则不再进行以上处理,直接放行,直到终端离线。
最后,要说明的是,在以上实施方式中,都以两个网络之间进行切换进行说明。在实际应用中,可能会出现需要在更多的网络之间进行切换,如三个网络、四个网络甚至更多,在这种情况下,将同一待访问网站域名对应在各个网络中的IP地址关联存储在数据存储模块中,网络切换过程中IP地址的修改与上述实施方式相同,在此不做赘述。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种基于网络切换的网站连接装置,其特征在于,所述网站连接装置中包括:网络切换判断模块、数据获取模块、报文类型判断模块以及报文修改模块,其中,
所述网络切换判断模块,用于判断网站连接装置所处的网络环境是否发生了切换;
所述数据获取模块,用于获取终端发送的请求报文;
所述报文类型判断模块,与所述数据获取模块连接,所述报文类型判断模块用于判断所述请求报文所属请求类型;
所述报文修改模块,分别与所述网络切换判断模块、数据获取模块以及报文类型判断模块连接,所述报文修改模块基于所述网络切换判断模块的判断结果和报文类型判断模块的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。
2.如权利要求1所述的网站连接装置,其特征在于,所述请求报文所属的请求类型包括:DNS报文和TCP握手报文。
3.如权利要求1或2所述的网站连接装置,其特征在于,所述网站连接装置中包括与所述报文修改模块连接的数据存储模块,所述数据存储模块中预存有:第一网络中与待访问网站域名关联的第一IP地址和第二网络中与待访问网站域名关联的第二IP地址;所述第一IP地址和所述第二IP地址分别与所述待访问网站域名关联存储。
4.如权利要求3所述的网站连接装置,其特征在于,所述网站连接装置中还包括一分别与所述数据获取模块和报文修改模块连接的网络环境判断模块,用于判断所述网站连接装置当前所处的网络环境;所述网络环境包括:第一网络和第二网络;
所述数据获取模块基于所述网站连接装置所处的网络环境获取终端发送的请求报文;
所述报文修改模块基于所述网络切换判断模块的判断结果、所述报文类型判断模块的判断结果以及所述网站连接装置所处的网络环境将请求报文中的目的IP地址修改为第一IP地址/第二IP地址,或将请求报文中的源IP地址修改为第一IP地址/第二IP地址。
5.如权利要求3所述的网站连接装置,其特征在于,所述网站连接装置中还包括一与所述数据获取模块、报文修改模块以及数据存储模块连接的报文解析模块;
所述报文解析模块对所述请求报文进行解析得到目的IP地址/源IP地址并将其发送至报文修改模块;
所述报文解析模块对所述请求报文进行解析得到终端的MAC地址,并将其存储在数据存储模块中。
6.如权利要求5所述的网站连接装置,其特征在于,所述数据存储模块中包括一分别与所述报文类型判断模块和报文解析模块连接的标记单元,所述标记单元基于所述请求报文的请求类型对该终端MAC地址的放行标记位进行标记。
7.一种路由器,其特征在于,所述路由器中包括如权利要求1-5任意一项所述的网站连接装置。
8.一种基于网络切换的网站连接方法,其特征在于,所述网站连接方法中包括:
S1判断当前所处的网络环境是否发生了切换;
S2获取终端发送的请求报文;
S3判断所述请求报文所属请求类型;
S4基于步骤S1和步骤S3中的判断结果对请求报文中的目的IP地址/源IP地址进行修改,实现终端与待访问网站之间的连接。
9.如权利要求8所述的网站连接方法,其特征在于,
在步骤S2中具体包括:基于当前所处的网络环境获取终端发送的请求报文;所述网络环境包括:第一网络和第二网络;和/或,
在步骤S3中具体包括:判断所述请求报文是否为TCP握手报文,若是,则跳转至步骤S4;和/或,
在步骤S4中具体包括:基于步骤S1和步骤S3中的判断结果以及当前所处的网络环境将请求报文中的目的IP地址修改为第一IP地址/第二IP地址,或将请求报文中的源IP地址修改为第一IP地址/第二IP地址;其中,
所述第一IP地址为第一网络中与待访问网站域名关联IP地址,第二IP地址为第二网络中与待访问网站域名关联的IP地址。
10.如权利要求8或9所述的网站连接方法,其特征在于,
在步骤S3之后还包括:
S31对所述请求报文进行解析得到目的IP地址/源IP地址;
S32对所述请求报文进行解析得到终端的MAC地址并进行存储;
S33基于步骤S32中的判断结果该终端MAC地址的放行标记位进行标记。
CN201610644785.5A 2016-08-09 2016-08-09 一种基于网络切换的网站连接装置及其方法、一种路由器 Active CN106067887B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610644785.5A CN106067887B (zh) 2016-08-09 2016-08-09 一种基于网络切换的网站连接装置及其方法、一种路由器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610644785.5A CN106067887B (zh) 2016-08-09 2016-08-09 一种基于网络切换的网站连接装置及其方法、一种路由器

Publications (2)

Publication Number Publication Date
CN106067887A CN106067887A (zh) 2016-11-02
CN106067887B true CN106067887B (zh) 2020-01-07

Family

ID=57207288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610644785.5A Active CN106067887B (zh) 2016-08-09 2016-08-09 一种基于网络切换的网站连接装置及其方法、一种路由器

Country Status (1)

Country Link
CN (1) CN106067887B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114006935B (zh) * 2020-07-14 2023-11-21 成都鼎桥通信技术有限公司 专网终端入网方法、装置及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006581A (zh) * 2009-09-03 2011-04-06 中兴通讯股份有限公司 Ip地址强制续约的方法及装置
CN102299831A (zh) * 2011-09-27 2011-12-28 杭州华三通信技术有限公司 检测内部服务器组成员失效的方法及网络地址转换设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006581A (zh) * 2009-09-03 2011-04-06 中兴通讯股份有限公司 Ip地址强制续约的方法及装置
CN102299831A (zh) * 2011-09-27 2011-12-28 杭州华三通信技术有限公司 检测内部服务器组成员失效的方法及网络地址转换设备

Also Published As

Publication number Publication date
CN106067887A (zh) 2016-11-02

Similar Documents

Publication Publication Date Title
CN103825895B (zh) 一种信息处理方法及电子设备
KR101232768B1 (ko) 자원 주소 요청을 관리하는 방법과 연관된 게이트웨이 디바이스
CN101272407B (zh) 域名系统的缓存探测方法、缓存探测装置和探测响应装置
US8151002B2 (en) Information conversion apparatus, information conversion method, information conversion program and relay device
CN102884764B (zh) 一种报文接收方法、深度包检测设备及系统
US20070177499A1 (en) Network connectivity determination
US8954603B2 (en) Communication device and communication method of the same
TWI565258B (zh) 過濾https傳輸內容的系統、方法及裝置
CN107682470B (zh) 一种检测nat地址池中公网ip可用性的方法及装置
CN101888338B (zh) 信息转发方法及网关
CN103916492A (zh) 一种网络设备访问控制方法及装置
CN103581361A (zh) 一种域名解析代理方法、设备及系统
CN106603501A (zh) 一种域名劫持的防护方法、系统及防火墙设备
JP2005513832A5 (zh)
JP5385872B2 (ja) 通信制御装置、通信システム及びプログラム
JP2013026993A (ja) ノード検出装置、ノード検出方法、及びプログラム
JP5850046B2 (ja) 通信装置、通信システム及び通信方法
CN114374669A (zh) Vpn客户端代理dns解析方法及系统
CN106067887B (zh) 一种基于网络切换的网站连接装置及其方法、一种路由器
WO2016095751A1 (zh) 一种域名解析方法及装置
US20110235641A1 (en) Communication apparatus, method of controlling the communication apparatus,and program
KR20190053170A (ko) Dns 요청을 억제하기 위한 시스템 및 방법
US20180375818A1 (en) Dns-based method of transmitting data
JP4905376B2 (ja) 複数のネットワークプロトコルに対応した通信システムおよび通信方法
US9912557B2 (en) Node information detection apparatus, node information detection method, and program

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right

Effective date of registration: 20201125

Address after: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Hangzhou Jiji Intellectual Property Operation Co.,Ltd.

Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666

Patentee before: Phicomm (Shanghai) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201209

Address after: 313028 Industrial Park, balidian Town, Huzhou City, Zhejiang Province

Patentee after: HUZHOU FENGYUAN AGRICULTURAL EQUIPMENT MANUFACTURE Co.,Ltd.

Address before: Room 10242, No. 260, Jiangshu Road, Xixing street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: Hangzhou Jiji Intellectual Property Operation Co.,Ltd.

TR01 Transfer of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: The invention relates to a website connection device based on network switching, a method thereof and a router

Effective date of registration: 20211203

Granted publication date: 20200107

Pledgee: Zhejiang Tailong Commercial Bank Co.,Ltd. Huzhou Branch

Pledgor: HUZHOU FENGYUAN AGRICULTURAL EQUIPMENT MANUFACTURE Co.,Ltd.

Registration number: Y2021330002446

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230811

Granted publication date: 20200107

Pledgee: Zhejiang Tailong Commercial Bank Co.,Ltd. Huzhou Branch

Pledgor: HUZHOU FENGYUAN AGRICULTURAL EQUIPMENT MANUFACTURE Co.,Ltd.

Registration number: Y2021330002446

PC01 Cancellation of the registration of the contract for pledge of patent right
TR01 Transfer of patent right

Effective date of registration: 20240827

Address after: 102100, No. 027, No.1 Chaoyang Road, Qianjiadian Town, Yanqing District, Beijing (cluster registration)

Patentee after: Beijing Changtong Zhixin Technology Co.,Ltd.

Country or region after: China

Address before: 313028 Industrial Park, balidian Town, Huzhou City, Zhejiang Province

Patentee before: HUZHOU FENGYUAN AGRICULTURAL EQUIPMENT MANUFACTURE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right