CN118337755A - 一种基于ipv6的dns代理方法、设备及介质 - Google Patents
一种基于ipv6的dns代理方法、设备及介质 Download PDFInfo
- Publication number
- CN118337755A CN118337755A CN202410494019.XA CN202410494019A CN118337755A CN 118337755 A CN118337755 A CN 118337755A CN 202410494019 A CN202410494019 A CN 202410494019A CN 118337755 A CN118337755 A CN 118337755A
- Authority
- CN
- China
- Prior art keywords
- dns
- ipv6
- data packet
- website
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000004044 response Effects 0.000 claims description 52
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 3
- 239000002699 waste material Substances 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种基于ipv6的dns代理方法、设备及介质,涉及无线通信技术领域,在多个客户端请求网址场景的使用下,可以让用户快速的解析出网址的ipv6地址,大大加快了ipv6的dns解析速率和减少了不必要的资源浪费,并且如果在dns根服务器出问题的情况下,只要本模块之前有解析过对应网址的ipv6地址,也可以给用户解析出对应网址的ipv6地址。
Description
技术领域
本发明涉及无线通信技术领域,具体涉及一种基于ipv6的dns代理方法、设备及介质。
背景技术
随着无线通信技术和IPV6的快速发展,用户使用ipv6网络的场景也在多种多样的变化,其中就包括同一局域网下多个用户需要使用ipv6地址去请求同一个网址的ipv6地址的场景。
现阶段ipv6在路由器上的应用还未有很完善的技术体系,大部分厂商的路由器产品都只支持ipv4的dns代理,却并不支持ipv6的dns代理,当有多个用户去请求同一个网址时就会出现路由器要对其转发多次的情况,这样就会增大不必要的资源消耗和降低dns解析效率。
发明内容
本发明为了克服以上技术的不足,提供了一种加快了ipv6的dns解析速率和减少了不必要的资源浪费的方法、设备及介质。
本发明克服其技术问题所采用的技术方案是:
一种基于ipv6的dns代理方法,包括:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache;
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数;
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9;
S4.从此数据包中提取ip地址与域名信息;
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包;
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中;
S7.封装ipv6的dns应答包并发送给对应的客户端;
S8.提取请求的数据包中需要解析的网址;
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
进一步的,步骤S4中路由器接收到客户端发送的dns请求的数据包后如果该数据包的dev为wan口且dns为reply时,从此数据包中提取ip地址与域名信息。
进一步的,步骤S5中,当数据包中的type为A时判定为ipv4的dns应答包,数据包中的type为AAAA时判定为ipv6的dns应答包。
进一步的,步骤S8中,数据包的dev为lan口且为ipv6的dns request请求报文,则提取请求报文中需要解析的网址。
本发明还涉及一种基于ipv6的dns代理设备,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache;
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数;
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9;
S4.从此数据包中提取ip地址与域名信息;
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包;
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中;
S7.封装ipv6的dns应答包并发送给对应的客户端;
S8.提取请求的数据包中需要解析的网址;
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
本发明还涉及一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache;
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数;
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9;
S4.从此数据包中提取ip地址与域名信息;
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包;
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中;
S7.封装ipv6的dns应答包并发送给对应的客户端;
S8.提取请求的数据包中需要解析的网址;
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
本发明的有益效果是:在多个客户端请求网址场景的使用下,可以让用户快速的解析出网址的ipv6地址,大大加快了ipv6的dns解析速率和减少了不必要的资源浪费,并且如果在dns根服务器出问题的情况下,只要本模块之前有解析过对应网址的ipv6地址,也可以给用户解析出对应网址的ipv6地址。
附图说明
图1为本发明的方法流程图。
具体实施方式
下面结合附图1对本发明做进一步说明。
实施例1
一种基于ipv6的dns代理方法,包括:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache。
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数。
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9。
S4.从此数据包中提取ip地址与域名信息。
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包。
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中。
S7.封装ipv6的dns应答包并发送给对应的客户端。
S8.提取请求的数据包中需要解析的网址。
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
路由器联网后,会缓存相关网址的dns解析记录,当下挂设备请求解析一个网址的ipv6地址,无需向dns根服务器去请求,路由器就能进行应答,达到减轻根服务器负担和提高解析ipv6网址的效率。路由器刚刚启动时,当下挂设备请求解析一个网址的ipv6地址时,此时路由器的缓存中还没有此网址对应的ipv6地址,这时会将此dns请求转发给dns根服务器,当路由器收到dns reply解析报文时,先解析此报文的内容,如提取网址和对应的ipv6地址,然后将其保存在一个cache里面,随后将此报文转发给请求的下挂设备。当还有其他下挂设备再次发送dns request请求解析此网址的ipv6地址时,路由器会先从缓存中查找是否已经保存了此网站的ipv6地址,如果保存了,就直接构造dns应答报文回复给请求设备,这样不仅减小了dns根服务器的负担,并且大大加快了解析一个网址对应ipv6地址的速率。
在该实施例中,步骤S4中路由器接收到客户端发送的dns请求的数据包后如果该数据包的dev为wan口且dns为reply时,从此数据包中提取ip地址与域名信息。
在该实施例中,步骤S5中,当数据包中的type为A时判定为ipv4的dns应答包,数据包中的type为AAAA时判定为ipv6的dns应答包。
在该实施例中,步骤S8中,数据包的dev为lan口且为ipv6的dns request请求报文,则提取请求报文中需要解析的网址。
实施例2
一种基于ipv6的dns代理设备,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache。
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数。
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9。
S4.从此数据包中提取ip地址与域名信息。
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包。
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中。
S7.封装ipv6的dns应答包并发送给对应的客户端。
S8.提取请求的数据包中需要解析的网址。
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
实施例3
一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache.
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数。
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9。
S4.从此数据包中提取ip地址与域名信息。
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包。
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中。
S7.封装ipv6的dns应答包并发送给对应的客户端。
S8.提取请求的数据包中需要解析的网址。
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于ipv6的dns代理方法,其特征在于,包括:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache;
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数;
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9;
S4.从此数据包中提取ip地址与域名信息;
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包;
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中;
S7.封装ipv6的dns应答包并发送给对应的客户端;
S8.提取请求的数据包中需要解析的网址;
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
2.根据权利要求1所述的基于ipv6的dns代理方法,其特征在于:步骤S4中路由器接收到客户端发送的dns请求的数据包后如果该数据包的dev为wan口且dns为reply时,从此数据包中提取ip地址与域名信息。
3.根据权利要求1所述的基于ipv6的dns代理方法,其特征在于:步骤S5中,当数据包中的type为A时判定为ipv4的dns应答包,数据包中的type为AAAA时判定为ipv6的dns应答包。
4.根据权利要求1所述的基于ipv6的dns代理方法,其特征在于:步骤S8中,数据包的dev为lan口且为ipv6的dns request请求报文,则提取请求报文中需要解析的网址。
5.一种基于ipv6的dns代理设备,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache;
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数;
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9;
S4.从此数据包中提取ip地址与域名信息;
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包;
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中;
S7.封装ipv6的dns应答包并发送给对应的客户端;
S8.提取请求的数据包中需要解析的网址;
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
6.一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
S1.路由器联网后进行进程初始化相关套接字,形成用于存储网址及ipv6 dns信息的cache;
S2.连接在路由器下的N个客户端进行dns请求,请求一个网址的ipv6地址,N为大于等于1的正整数;
S3.路由器接收到客户端发送的dns请求的数据包后判断此数据包的接口来源,当接口为wan口时执行步骤S4至步骤S7,当接口为lan口时执行步骤S8至步骤S9;
S4.从此数据包中提取ip地址与域名信息;
S5.根据数据包判断为ipv4的dns应答包或ipv6的dns应答包;
S6.当数据包为ipv6的dns应答包时,将对应的网址和ipv6地址信息保存至cache中;
S7.封装ipv6的dns应答包并发送给对应的客户端;
S8.提取请求的数据包中需要解析的网址;
S9.在保存网址及ipv6 dns信息的cache中查找对应的信息,如果查到则将域名与对应的ipv6信息填充构造dns reply报文,将该报文发送给客户端,如果没有查到则将dns请求转发给上级dns根服务器进行解析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410494019.XA CN118337755A (zh) | 2024-04-24 | 2024-04-24 | 一种基于ipv6的dns代理方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410494019.XA CN118337755A (zh) | 2024-04-24 | 2024-04-24 | 一种基于ipv6的dns代理方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118337755A true CN118337755A (zh) | 2024-07-12 |
Family
ID=91765877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410494019.XA Pending CN118337755A (zh) | 2024-04-24 | 2024-04-24 | 一种基于ipv6的dns代理方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118337755A (zh) |
-
2024
- 2024-04-24 CN CN202410494019.XA patent/CN118337755A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021078281A1 (zh) | 报文转发及域名地址查询 | |
CN112887433B (zh) | 基于quic协议的云端访问边缘服务的方法和系统 | |
US10356040B2 (en) | System and method for suppressing DNS requests | |
US7558880B2 (en) | Dynamic DNS registration method, domain name solution method, DNS proxy server, and address translation device | |
US11356410B2 (en) | Packet transmission method and device, and computer readable storage medium | |
US20170353331A1 (en) | System And Method For Suppressing DNS Requests | |
EP2769307B1 (en) | Answer augmentation system for authoritative dns servers | |
US9602411B2 (en) | System and method for suppressing DNS requests | |
CN105144652A (zh) | 软件定义的网络中的地址解析 | |
CN102790813B (zh) | 基于IPv6网络的通信方法和系统以及终端设备 | |
CN112073545B (zh) | 使用dns来传送服务器设备的mp-tcp能力 | |
RU2642833C2 (ru) | Способ и устройство для обеспечения медиаресурса | |
CN112702425B (zh) | 基于域名泛解析的web应用访问代理方法、装置和存储介质 | |
KR20190053170A (ko) | Dns 요청을 억제하기 위한 시스템 및 방법 | |
CN116566945A (zh) | 去中心化应用的访问方法、装置、电子设备及存储介质 | |
CN118337755A (zh) | 一种基于ipv6的dns代理方法、设备及介质 | |
CN108667948B (zh) | 一种实现泛协议调度的方法及装置 | |
CN107040616B (zh) | Tcp/dn/ip网络兼容tcp/ip网络的转换方法及报文收发方法 | |
CN105939398B (zh) | 一种IPv6过渡方法及装置 | |
CN110798542A (zh) | 一种获取ip地址的方法及系统 | |
CN111371915B (zh) | Ip地址列表维护方法和装置及网关设备 | |
US11381503B2 (en) | Data packet routing method and data packet routing device | |
Pittner | CUSTOMIZING APPLICATION HEADERS FOR IMPROVED WARFIGHTING COMMUNICATIONS | |
JP6487870B2 (ja) | 名前解決装置、名前解決方法及び名前解決プログラム | |
CN115412528A (zh) | 一种主机路由地址存储方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |