CN105391813A - 一种socks透明代理的方法及装置 - Google Patents

一种socks透明代理的方法及装置 Download PDF

Info

Publication number
CN105391813A
CN105391813A CN201510670671.3A CN201510670671A CN105391813A CN 105391813 A CN105391813 A CN 105391813A CN 201510670671 A CN201510670671 A CN 201510670671A CN 105391813 A CN105391813 A CN 105391813A
Authority
CN
China
Prior art keywords
client
address
socks
router
domain name
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
Application number
CN201510670671.3A
Other languages
English (en)
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 JIKEJIKE TECHNOLOGY Co Ltd
Original Assignee
BEIJING JIKEJIKE 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 BEIJING JIKEJIKE TECHNOLOGY Co Ltd filed Critical BEIJING JIKEJIKE TECHNOLOGY Co Ltd
Priority to CN201510670671.3A priority Critical patent/CN105391813A/zh
Publication of CN105391813A publication Critical patent/CN105391813A/zh
Pending legal-status Critical Current

Links

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/10Mapping addresses of different types
    • 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

Landscapes

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

Abstract

本发明公开一种SOCKS透明代理的方法,可以提高代理的工作效率和准确性。该方法运行在路由器中,并包括步骤:(1)当客户端连接至路由器时,通过DHCP协议将路由器本机IP地址作为DNS服务器提供给客户端;(2)当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;(3)拦截客户端以此IP地址为目标发起的连接;(4)查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;(5)将客户端和SOCKS代理服务器间的通讯流量互相转发至对方;(6)结束。还提供了一种SOCKS透明代理的装置。

Description

一种SOCKS透明代理的方法及装置
技术领域
本发明属于无线通信的路由器的技术领域,具体地涉及一种SOCKS透明代理的方法以及装置,其主要提高了SOCKS透明代理的DNS解析速度与精度。
背景技术
采用SOCKS协议的代理服务器就是SOCKS服务器,是一种通用的代理服务器。SOCKS是个电路级的底层网关,是DavidKoblas在1990年开发的,此后就一直作为InternetRFC标准的开放标准。
SOCKS是一组由Internal工程工作小组(IETF)所开发出来的开放软件开放标准,用来处理网络安全的事宜。SOCKS像一堵墙被夹在Internal服务器和客户端之间,对于出入企业网络的资讯提供流量和安全的管理。SOCKS这个名词并不是一组英文字头的缩写,而是一个和TCP/IP的Socket端口有关的安全标准,一般防火墙系统通常是像网关(Gateway)一样是作用在OSI模型(OpenSystemInterconnection,开放式通信系统互联参考模型)的第七层也就是应用层上,对TCP/IP的高级协议,如Telnet、FTP、HTTP和SMTP加以管制,而SOCKS作用在OSI模型的第五层也就是会话层上,像一个代理一样对客户端到服务器端或服务器和服务器之间的数据联系,提供安全上的服务。由于SOCKS作用在会话层上,因此它是一个提供会话层到会话层间安全服务的方案,不受高层应用程序变更的影响。
SOCKS不要求应用程序遵循特定的操作系统平台,SOCKS代理与应用层代理、HTTP层代理不同,SOCKS代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求)。所以,SOCKS代理比其他应用层代理要快得多。
透明代理的意思是客户端根本不需要知道有代理服务器的存在,它改编你的requestfields(报文),并会传送真实IP。SOCKS代理属于透明代理。SOCKS代理目前被广泛应用于各种场景,如穿越防火墙规则、防止通讯内容泄露增加安全性等。其原理是通过将客户端的网络流量转发至SOCKS代理服务器从而实现透明代理。
但是,由于各种原因,在目前的网络环境中,SOCKS透明代理中的DNS解析速度比较慢,精度比较差。
发明内容
本发明要解决的技术解决问题是;克服现有技术的不足,提供一种SOCKS透明代理的方法,通过让SOCKS代理服务器解析目标域名,提升透明代理的效率和准确性。。
本发明的技术解决方案是;这种SOCKS透明代理的方法,该方法运行在路由器中,并包括以下步骤;
(1)当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;
(2)拦截客户端以此IP地址为目标发起的连接;
(3)查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;
(4)将客户端和SOCKS代理服务器间的通讯流量互相转发至对方;
(5)结束。
还提供了一种SOCKS透明代理的装置,该装置嵌入在路由器中,并配置来;
当客户端连接至路由器时,通过DHCP协议将路由器本机IP地址作为DNS服务器提供给客户端;
当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;
拦截客户端以此IP地址为目标发起的连接;
查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;
将客户端和SOCKS代理服务器间的通讯流量互相转发至对方。
本发明通过向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系,拦截客户端以此IP地址为目标发起的连接,查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器,然后将客户端和SOCKS代理服务器间的通讯流量互相转发至对方,从而提升了透明代理的工作效率和准确性。
附图说明
图1是根据本发明的SOCKS透明代理的方法的流程图。
图2是根据本发明的SOCKS透明代理的装置的一个优选实施例的各部分之间的关系示意图。
具体实施方式
如图1所示,这种SOCKS透明代理的方法,该方法运行在路由器中,并包括以下步骤;
(1)当客户端连接至路由器时,通过DHCP协议将路由器本机IP地址作为DNS服务器提供给客户端;
(2)当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;
(3)拦截客户端以此IP地址为目标发起的连接;
(4)查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;
(5)将客户端和SOCKS代理服务器间的通讯流量互相转发至对方;
(6)结束。
本发明通过向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系,拦截客户端以此IP地址为目标发起的连接,查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器,然后将客户端和SOCKS代理服务器间的通讯流量互相转发至对方,从而提高了透明代理的工作效率和准确性。
优选地,在所述步骤(2)中,当路由器收到客户端发起的DNS请求时,在预先设定好的一个IP地址段中选择一个尚未被使用的IP地址,并记录此IP地址与待解析域名的对应关系,然后将此IP地址作为DNS解析的结果返回给客户端。
优选地,在所述步骤(3)中,当客户端收到DNS解析的结果,并以结果中的IP地址作为目标发起连接时,路由器判断此连接的目标的IP地址是否属于预先设定好的IP地址段;如果是则拦截客户端以此IP地址为目标发起的连接,并作为目标与客户端建立连接;如果不是,则跳转到步骤(6)。
优选地,在所述步骤(4)中,当路由器与客户端建立连接后,使用此连接的目标IP地址查询在步骤(2)中储存的与之对应的域名;获得域名后,路由器与预先设定好的SOCKS代理服务器建立连接,并通过SOCKS协议的控制头将此域名传输给SOCKS代理服务器。
优选地,在所述步骤(5)中,当路由器与SOCKS代理服务器连接后,将客户端发送的数据转发至SOCKS代理服务器,将SOCKS代理服务器发送的数据转发至客户端。
优选地,在所述步骤(6)中,当客户端和SOCKS代理服务器中的任意一方终止与路由器的连接时,路由器终止与客户端和SOCKS代理服务器中的另一方的连接,流程结束。
如图2所示,还提供了一种SOCKS透明代理的装置,该装置嵌入在路由器中,并配置来;
当客户端连接至路由器时,通过DHCP协议将路由器本机IP地址作为DNS服务器提供给客户端;
当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;
拦截客户端以此IP地址为目标发起的连接;
查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;
将客户端和SOCKS代理服务器间的通讯流量互相转发至对方。
以下给出一个具体实施例。
如图1所示,假设客户端试图访问域名www.abc.com,首先发送DNS请求。路由器收到DNS请求后从预先设定的IP地址段25.0.0.0-25.0.0.8中动态生成一可用IP地址,例如25.0.0.1,然后返回该IP地址。客户端收到结果后,与25.0.0.1建立连接。此连接被转发至路由器,路由器通过25.0.0.1目标IP地址查询得到原始的目标域名为www.abc.com,并与SOCKS代理服务器连接。SOCKS代理服务器获得域名后解析为IP地址,并与其建立连接。此后,客户端就可以与www.abc.com通讯了。
本发明的有益效果为;通过让SOCKS代理服务器进行DNS解析,提高了透明代理的工作效率和准确性。。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。

Claims (7)

1.一种SOCKS透明代理的方法,其特征在于:该方法运行在路由器中,并包括以下步骤:
(1)当客户端连接至路由器时,通过DHCP协议将路由器本机IP地址作为DNS服务器提供给客户端;
(2)当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;
(3)拦截客户端以此IP地址为目标发起的连接;
(4)查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;
(5)将客户端和SOCKS代理服务器间的通讯流量互相转发至对方;
(6)结束。
2.根据权利要求1所述的SOCKS透明代理的方法,其特征在于:在所述步骤(2)中,当路由器收到客户端发起的DNS请求时,在预先设定好的一个IP地址段中选择一个尚未被使用的IP地址,并记录此IP地址与待解析域名的对应关系,然后将此IP地址作为DNS解析的结果返回给客户端。
3.根据权利要求2所述的SOCKS透明代理的方法,其特征在于:在所述步骤(3)中,当客户端收到DNS解析的结果,并以结果中的IP地址作为目标发起连接时,路由器判断此连接的目标的IP地址是否属于预先设定好的IP地址段:如果是则拦截客户端以此IP地址为目标发起的连接,并作为目标与客户端建立连接;如果不是,则跳转到步骤(6)。
4.根据权利要求3所述的SOCKS透明代理的方法,其特征在于:在所述步骤(4)中,当路由器与客户端建立连接后,使用此连接的目标IP地址查询在步骤(2)中储存的与之对应的域名;获得域名后,路由器与预先设定好的SOCKS代理服务器建立连接,并通过SOCKS协议的控制头将此域名传输给SOCKS代理服务器。
5.根据权利要求4所述的SOCKS透明代理的方法,其特征在于:在所述步骤(5)中,当路由器与SOCKS代理服务器连接后,将客户端发送的数据转发至SOCKS代理服务器,将SOCKS代理服务器发送的数据转发至客户端。
6.根据权利要求5所述的SOCKS透明代理的方法,其特征在于:在所述步骤(6)中,当客户端和SOCKS代理服务器中的任意一方终止与路由器的连接时,路由器终止与客户端和SOCKS代理服务器中的另一方的连接,流程结束。
7.一种SOCKS透明代理的装置,其特征在于:该装置嵌入在路由器中,并配置来:
当客户端连接至路由器时,通过DHCP协议将路由器本机IP地址作为DNS服务器提供给客户端;
当收到客户端发起的DNS请求时,向客户端返回动态生成的IP地址,并记录此IP地址与待解析域名的对应关系;
拦截客户端以此IP地址为目标发起的连接;
查询此IP地址所对应的域名并将其发送给预设的SOCKS代理服务器;
将客户端和SOCKS代理服务器间的通讯流量互相转发至对方。
CN201510670671.3A 2015-10-13 2015-10-13 一种socks透明代理的方法及装置 Pending CN105391813A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510670671.3A CN105391813A (zh) 2015-10-13 2015-10-13 一种socks透明代理的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510670671.3A CN105391813A (zh) 2015-10-13 2015-10-13 一种socks透明代理的方法及装置

Publications (1)

Publication Number Publication Date
CN105391813A true CN105391813A (zh) 2016-03-09

Family

ID=55423642

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510670671.3A Pending CN105391813A (zh) 2015-10-13 2015-10-13 一种socks透明代理的方法及装置

Country Status (1)

Country Link
CN (1) CN105391813A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533830A (zh) * 2016-10-28 2017-03-22 上海斐讯数据通信技术有限公司 一种提高报文响应时间的装置及方法
CN110730252A (zh) * 2019-09-25 2020-01-24 南京优速网络科技有限公司 一种通过改造linux内核报文处理功能的地址转换方法
WO2021121027A1 (zh) * 2019-12-20 2021-06-24 中兴通讯股份有限公司 实现网络动态性的方法、系统、终端设备及存储介质
CN113965577A (zh) * 2021-08-31 2022-01-21 联通沃音乐文化有限公司 一种智能切换Socks5代理服务器节点的系统与方法
CN116418863A (zh) * 2023-06-09 2023-07-11 安徽华云安科技有限公司 基于socks5透明代理的通信方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1585376A (zh) * 2003-08-20 2005-02-23 华为技术有限公司 一种地址转换方法及实现该方法的混合地址转换路由器
CN102223266A (zh) * 2011-06-17 2011-10-19 北京星网锐捷网络技术有限公司 一种协议代理检测方法和装置
CN103237035A (zh) * 2013-04-28 2013-08-07 哈尔滨工业大学 可控分布式代理平台
CN103581361A (zh) * 2013-11-18 2014-02-12 广东睿江科技有限公司 一种域名解析代理方法、设备及系统
CN103812868A (zh) * 2014-02-20 2014-05-21 北京极科极客科技有限公司 基于IPv4/IPv6转换实现免费上网的方法及其系统
CN107483593A (zh) * 2017-08-22 2017-12-15 网宿科技股份有限公司 双向透明代理方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1585376A (zh) * 2003-08-20 2005-02-23 华为技术有限公司 一种地址转换方法及实现该方法的混合地址转换路由器
CN102223266A (zh) * 2011-06-17 2011-10-19 北京星网锐捷网络技术有限公司 一种协议代理检测方法和装置
CN103237035A (zh) * 2013-04-28 2013-08-07 哈尔滨工业大学 可控分布式代理平台
CN103581361A (zh) * 2013-11-18 2014-02-12 广东睿江科技有限公司 一种域名解析代理方法、设备及系统
CN103812868A (zh) * 2014-02-20 2014-05-21 北京极科极客科技有限公司 基于IPv4/IPv6转换实现免费上网的方法及其系统
CN107483593A (zh) * 2017-08-22 2017-12-15 网宿科技股份有限公司 双向透明代理方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
彭勇 , 范乐君 , 陈冬青: ""基于透明代理的域名系统隐患分析与防御策略"", 《清华大学学报(自然科学版)》 *
杨骕宇: ""高并发环境中路由器平台上DNS代理的设计与实现"", 《中国优秀硕士论文全文库信息科技辑》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533830A (zh) * 2016-10-28 2017-03-22 上海斐讯数据通信技术有限公司 一种提高报文响应时间的装置及方法
CN110730252A (zh) * 2019-09-25 2020-01-24 南京优速网络科技有限公司 一种通过改造linux内核报文处理功能的地址转换方法
WO2021121027A1 (zh) * 2019-12-20 2021-06-24 中兴通讯股份有限公司 实现网络动态性的方法、系统、终端设备及存储介质
CN113965577A (zh) * 2021-08-31 2022-01-21 联通沃音乐文化有限公司 一种智能切换Socks5代理服务器节点的系统与方法
CN113965577B (zh) * 2021-08-31 2024-02-27 联通沃音乐文化有限公司 一种智能切换Socks5代理服务器节点的系统与方法
CN116418863A (zh) * 2023-06-09 2023-07-11 安徽华云安科技有限公司 基于socks5透明代理的通信方法和装置
CN116418863B (zh) * 2023-06-09 2023-09-15 安徽华云安科技有限公司 基于socks5透明代理的通信方法和装置

Similar Documents

Publication Publication Date Title
US11683401B2 (en) Correlating packets in communications networks
US7609701B2 (en) Communication using private IP addresses of local networks
US7899932B2 (en) Relayed network address translator (NAT) traversal
US7139828B2 (en) Accessing an entity inside a private network
KR100650843B1 (ko) 임의의 어플리케이션 타입이 있는 ip 네트워크에서네트워크 주소 변환을 사용하기 위한 방법 및 시스템
CN106605421B (zh) 用于服务节点的匿名访问和控制的方法和装置
US20170034174A1 (en) Method for providing access to a web server
EP2449749B1 (en) Method and apparatus for relaying packets
EP3026872B1 (en) Packet forwarding method, apparatus, and system
CN105391813A (zh) 一种socks透明代理的方法及装置
EP2466806A1 (en) Method and system for implementing network intercommunication
CN105357212A (zh) 一种保证安全和隐私的dns端到端解析方法
Boucadair Discovering NAT64 IPv6 Prefixes Using the Port Control Protocol (PCP)
KR20130085556A (ko) 메시지 인증 방법 및 그를 위한 ip-pbx 시스템
JP2010045451A (ja) パケット振り分け装置、通信システム、パケット処理方法、及びプログラム
Santos Private realm gateway
Savolainen et al. Discovery of the IPv6 prefix used for IPv6 address synthesis
KR101435931B1 (ko) 통신 방법 및 장치
Williams et al. An Experimental TCP Option for Host Identification
Savolainen et al. Rfc 7050: Discovery of the IPV6 prefix used for IPV6 address synthesis
Llorente Santos Yksityisen alueen yhdyskäytävä
Rahman et al. CoRE Working Group A. Castellani Internet-Draft University of Padova Intended status: Informational S. Loreto Expires: January 12, 2012 Ericsson
JP2007110266A (ja) ルータ、パケットフォワード方法、およびパケットフォワードプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160309