KR20160106062A - 프록시 ip 어드레스를 식별하는 방법 및 장치 - Google Patents

프록시 ip 어드레스를 식별하는 방법 및 장치 Download PDF

Info

Publication number
KR20160106062A
KR20160106062A KR1020167017704A KR20167017704A KR20160106062A KR 20160106062 A KR20160106062 A KR 20160106062A KR 1020167017704 A KR1020167017704 A KR 1020167017704A KR 20167017704 A KR20167017704 A KR 20167017704A KR 20160106062 A KR20160106062 A KR 20160106062A
Authority
KR
South Korea
Prior art keywords
address
network delay
time
packet
user
Prior art date
Application number
KR1020167017704A
Other languages
English (en)
Other versions
KR102047585B1 (ko
Inventor
미안 후앙
Original Assignee
알리바바 그룹 홀딩 리미티드
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 알리바바 그룹 홀딩 리미티드 filed Critical 알리바바 그룹 홀딩 리미티드
Publication of KR20160106062A publication Critical patent/KR20160106062A/ko
Application granted granted Critical
Publication of KR102047585B1 publication Critical patent/KR102047585B1/ko

Links

Images

Classifications

    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/286Time to live
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

프록시 IP 어드레스를 식별하는 방법 및 장치. 그 방법은: IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCP 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연을 결정하는 것; IP 어드레스까지 한 홉 이전에 있는 라우터와 서버 사이의 제2 네트워크 지연을 결정하는 것; 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하는 것; 및 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰 경우 IP 어드레스를 프록시 IP 어드레스로서 식별하는 것을 포함한다. 본 개시의 기술적 솔루션을 사용하여, IP 어드레스가 프록시 IP 어드레스인지의 여부를 식별하는 것은 빠르고 정확하게 이루어질 수 있다.

Description

프록시 IP 어드레스를 식별하는 방법 및 장치{METHOD AND APPARATUS OF IDENTIFYING PROXY IP ADDRESS}
관련 특허 출원에 대한 교차 참조
본 출원은 2014년 1월 8일자로 출원된 발명의 명칭이 "Method and Apparatus Identifying Proxy IP Address"인 중국 특허 출원 제201410008844.0호에 대한 외국 우선권을 주장하는데, 상기 출원은 그 전체가 참조에 의해 통합된다.
기술 분야
본 개시는 인터넷 기술의 분야에 관한 것으로, 특히, 프록시 IP 어드레스를 식별하는 방법 및 장치에 관한 것이다.
최근, 널리 사용되는 애플리케이션, 즉, IP(즉, 인터넷 프로토콜(Internet Protocol)) 어드레스 및 지리적 위치를 상호 질의하는 기술이 인터넷에서 존재한다. 이 기술은 인터넷의 다양한 분야에서 폭넓게 적용되며, 특히 위험 제어(risk control)의 분야에서 강한 위험 인자로서 사용된다. 다시 말하면, 위험 제어 분야의 솔루션에서 상호 질의하는 기술에 의해 사용되는 원칙은: 짧은 시간 기간 내에 상이한 지리적 위치에서 유저가 로그인했는지의 여부를 결정하는 것, 및 긍정이면 고위험 동작으로 간주하는 것을 포함한다. 이 결정은, 유저의 IP가 진짜 IP인 경우에만 유효하다. 그러나, 프록시 서버 기술은 이 애플리케이션의 전제를 무너뜨린다. 다시 말하면, 베이징(Beijing)에 있는 유저가 프록시 서버를 통해 항저우(Hangzhou)에서 인터넷에 액세스할 수도 있으며, 서버가 봤을 때의 유저 IP 어드레스는 항저우 프록시 서버의 어드레스이다. 본 개시는 이러한 타입의 상황을 주로 식별하여, 유저가 프록시 서버를 사용하는지의 여부를 구별한다. 다시 말하면, IP 어드레스가 한 지리적 위치에 위치된 단말의 진짜 IP 어드레스인지 또는 프록시 서버의 IP 어드레스, 예를 들면, VPN(즉, 가상 사설 네트워크(Virtual Private Network)) 프록시 서버의 IP 어드레스인지의 여부에 관한 결정이 이루어진다.
이 문제는 인터넷 분야에서 끊임없이 논의되어 왔고, 이 문제를 대상으로 한 몇몇 솔루션이 이 분야에서 존재한다. 그러나, 이들 솔루션은 주로 두 개의 방침에 초점을 맞춘다: 첫째, 인터넷에서 크롤러(crawler)에 의한 추출에 기초하여 또는 프록시 서버의 능동 스캐닝(active scanning)에 기초하여 수행되는 프록시 서버 리스트의 수집; 및 둘째, 기지의(known) 프록시 포트(들)가 개방되어 있는지의 여부를 결정하기 위해 현재 인터넷에 있는 모든 호스트를 역으로 스캔하는 역 검출. 첫 번째 아이디어의 솔루션은 크롤러에 의한 인터넷에서의 프록시 서버의 추출을 통해 프록시 서버를 수집한다. 그러나, 그 정보는, 많은 프록시 서버가 인터넷에서 공개되어 있지 않거나 해커에 의해 제어되는 익스플로잇(exploit)이기 때문에, 극도로 불완전하다. 두 번째 아이디어의 솔루션은, 몇몇 공통 프록시 포트가 개방되어 있는지의 여부를 결정하기 위해 모든 IP를 역 스캐닝하는 원칙을 갖는 역 검출에 기초한다. 그러나, 인터넷에서의 활성 호스트의 수가 아주 많고 프록시 서버의 서비스 포트가 고정되지 않기 때문에, 이 솔루션은 아주 긴 스캐닝 싸이클을 갖는다.
따라서, 현재로서는, IP 어드레스가 프록시 IP 어드레스인지의 여부를 빠르고 정확하게 식별할 수 있는 방법이 바람직할 수도 있다.
이 개요는 하기 상세한 설명에서 더 설명되는 엄선된 개념을 간소화된 형태로 소개하기 위해 제공된다. 이 개요는 청구된 주제의 주요한 피쳐(feature) 또는 본질적인 피쳐를 식별하도록 의도된 것도 아니고, 청구된 주제의 범위를 결정함에 있어서의 보조로서 단독으로 사용되도록 의도된 것도 아니다. 용어 "기술"은, 예를 들면, 본 개시의 전체를 통해 그리고 상기의 맥락에 의해 허용되는 바와 같은 디바이스(들), 시스템(들), 방법(들) 및/또는 컴퓨터 판독가능 명령어를 가리킬 수도 있다.
본 개시의 주요 목적은, 현존하는 기술에서의 상기 문제점을 해결하기 위해 IP 어드레스를 식별하는 방법을 제공하는 것이다.
본 개시는 프록시 IP 어드레스를 식별하는 방법을 제공하는데, 그 방법은: IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCP(즉, 전송 제어 프로토콜(Transmission Control Protocol)) 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연을 결정하는 것; IP 어드레스까지 한 홉 이전에 있는 라우터와 서버 사이의 제2 네트워크 지연을 결정하는 것; 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하는 것; 및 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰 경우 IP 어드레스를 프록시 IP 어드레스로서 식별하는 것을 포함한다.
본 개시의 다른 양태는 프록시 IP 어드레스를 식별하는 장치를 제공하는데, 그 장치는: IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCP 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연을 결정하기 위해 사용되는 제1 결정 모듈; IP 어드레스까지 한 홉 이전에 있는 라우터와 서버 사이의 제2 네트워크 지연을 결정하기 위해 사용되는 제2 결정 모듈; 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하기 위해 사용되는 판정 모듈; 및 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰 경우 IP 어드레스를 프록시 IP 어드레스로서 식별하기 위해 사용되는 식별 모듈을 포함한다.
현존하는 기술과 비교하여, 본 개시의 기술적 솔루션에 따르면, 제1 네트워크 지연(이것은 IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCT 연결을 확립하는 단말과 서버 사이에 있음)과 제2 네트워크 지연(이것은 IP 어드레스까지 한 홉 이전에 있는 라우터와 서버 사이에 있음) 사이의 비율이 임계치보다 더 크다는 것을 결정하는 것에 의해, IP 어드레스는 프록시 IP 어드레스로서 식별되고, 따라서 프록시 IP 어드레스를 빠르고 정확하게 식별하게 된다.
본원에서 설명되는 첨부의 도면은, 본 개시의 추가적인 이해를 위해 사용되며 본 개시의 일부로서 취급된다. 그 예시적인 실시형태 및 설명은 본 개시를 설명하기 위해 사용되는 것이며 본 개시의 제한으로서 간주되어선 안된다. 첨부의 도면에서:
도 1은, 본 개시의 한 실시형태에 따른, 프록시 IP 어드레스를 식별하는 방법을 예시하는 플로우차트이다.
도 2는, 본 개시의 한 실시형태에 따른, 프록시 IP 어드레스를 식별하는 방법에서 제1 네트워크 지연을 결정하는 플로우차트이다.
도 3은, 본 개시의 한 실시형태에 따른, 프록시 IP 어드레스를 식별하는 방법에서 제2 네트워크 지연을 결정하는 플로우차트이다.
도 4a는, 본 개시의 한 실시형태에 따른, 네트워크를 통해 서버에 직접 연결되는 단말을 예시하는 개략도이다.
도 4b는, 본 개시의 한 실시형태에 따른, 프록시를 통해 서버에 간접적으로 연결되는 단말을 예시하는 개략도이다.
도 5는, 본 개시의 한 실시형태에 따른, 프록시 IP 어드레스를 식별하는 장치를 예시하는 구조도이다.
도 6은, 도 5에서 설명되는 장치를 더 상세히 예시하는 구조도이다.
본 개시의 주요 아이디어는, IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCP 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연을 결정하고, IP 어드레스까지 하나의 홉 이전에 있는 라우터와 서버 사이의 제2 네트워크 지연을 결정하는 것에 의해, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부에 관한 결정이 이루어진다는 것이다. 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 크면, IP 어드레스는 프록시 IP 어드레스로서 식별된다.
본 개시의 목적, 기술적 솔루션 및 이점을 더 명확하게 하기 위해, 본 개시의 기술적 솔루션은, 본 개시의 예시적인 실시형태 및 대응하는 첨부의 도면을 사용하여 명확하고 포괄적인 방식으로 설명된다. 명백하게, 설명되는 실시형태는, 본 개시의 실시형태의 전체가 아니라 일부를 나타내는 것에 불과하다. 본 개시에서의 실시형태에 기초하여, 창조적 노력 없이 당업자에 의해 유도되는 모든 다른 실시형태는 본 개시의 보호 범위 안에 있을 것이다.
본 개시의 한 실시형태에 따르면, 프록시 IP 어드레스를 식별하는 방법이 제공된다.
도 1을 참조하면, 도 1은, 본 개시의 한 실시형태에 따른, 프록시 IP 어드레스를 식별하는 방법을 예시하는 플로우차트이다. 도 1에서 도시되는 바와 같이, IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCP 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연이 블록 S101에서 결정된다.
한 실시형태에서, IP 어드레스가 프록시 IP 어드레스인지의 여부를 식별하기 위해, IP 어드레스를 단말의 유저 IP 어드레스로서 사용하여 서버와의 TCP 연결을 확립하려고 시도하는 진짜 단말과 서버 사이의 제1 네트워크 지연이 먼저 획득될 필요가 있다.
도 2를 참조하여, 제1 네트워크 지연을 어떻게 획득하는지의 예시적인 방법을 예시하는 플로우차트가 이하 상세히 설명된다.
제1 네트워크 지연의 의미를 더 명확하게 이해하기 위해, 단말과 서버 사이에서 TCP 연결을 확립하기 위해 수행되는 3웨이 핸드쉐이크(three-way handshake)의 프로세스가 먼저 소개된다. 3웨이 핸드쉐이크는, 말하자면, TCP 연결을 확립할 때 클라이언트와 서버 사이에서 총 세 개의 패킷을 전송하는 필요성을 지칭한다. 3웨이 핸드쉐이크의 목표는, 서버의 지정된 포트를 연결하는 것 및 TCP 연결을 확립하는 것이다. 제1 핸드쉐이크에서, 단말은, SYN(Synchronize Sequence Numbers; 동기화 시퀀스 번호) 플래그를 포함하는 TCP 패킷을 서버로 전송한다. 이것은 3웨이 핸드쉐이크의 프로세스에서 제1 패킷이며, 본 개시에서 SYN 패킷으로 칭해진다. 제2 핸드쉐이크에서, 서버 단(server end)은 단말에 응답하고, SYN-ACK 패킷을 단말로 전송한다. 이것은 3웨이 핸드쉐이크 프로세스에서의 제2 패킷이다. 이 패킷은 ACK 플래그 및 SYN 플래그를 동시에 포함하며, 따라서 클라이언트의 SYN 패킷에 대한 응답을 나타내고 또한 클라이언트가 데이터 통신을 행하기 위한 준비가 되어 있는지의 여부를 질의하기 위해 클라이언트에 대한 SYN을 마킹한다. 제3 핸드쉐이크에서, 단말은 응답으로 ACK 패킷(즉, 3웨이 핸드쉐이크의 확인응답(acknowledgement) 패킷)을 서버로 전송할 필요가 있다. 이것은, 단말이 데이터 통신을 행할 준비가 되었다는 것을 나타내는 제3 패킷이다. 이 3웨이 핸드쉐이크를 통해, TCP 연결이 확립된다. 본 개시는, 서버에 의한 SYN-ACK의 전송과 단말로부터 리턴되는 ACK 패킷 사이의 제1 네트워크 지연을 획득하기 위해, 단말과 서버 사이에 TCP 연결을 확립하는 3웨이 핸드쉐이크의 프로세스를 활용한다. 제1 네트워크 지연을 획득하는 방법의 상세가 이하 설명된다.
서버는 IP 어드레스를 유저 IP 어드레스로서 사용하는 단말로부터 SYN 패킷을 수신하고, 단말은 TCP 연결 확립을 요청한다. SYN 패킷을 수신한 이후, 서버는 SYN-ACK 패킷을 단말로 전송한다. 따라서, 도 2에서 도시되는 바와 같이, 블록 S201에서 서버는 SYN-ACK 패킷이 단말로 전송되는 때의 시간을 기록한다. 이 시간은, 예를 들면, 제1 시점으로서 정의될 수도 있다.
그 후, 서버는 단말로부터 ACK 패킷을 수신한다. 따라서, 블록 S202에서 서버는 단말로부터 ACK 패킷이 수신되는 때의 시간을 기록한다. 이 시간은, 예를 들면, 제2 시점으로서 정의될 수도 있다.
마지막으로, 블록 S203에서, SYN-ACK 패킷이 단말로 전송되는 때의 시간과 ACK 패킷이 단말로부터 수신되는 때의 시간 사이의 시간차가 제1 네트워크 지연으로서 결정된다. 다시 말하면, 제2 시점과 제1 시점 사이의 시간차가 제1 네트워크 지연으로서 정의된다.
상기 방법 블록을 통해, 서버와 단말 사이의 제1 네트워크 지연이 획득될 수도 있다.
다시 도 1을 참조하면, 제1 네트워크 지연의 결정시, IP 어드레스까지 하나의 홉 이전에 있는 라우터와 서버 사이의 제2 네트워크 지연이 블록 S102에서 결정된다.
제2 네트워크 지연은 다음의 원칙에 기초하여 획득된다.
서버 단은 유저 IP 어드레스를 ip1로서 기록할 수도 있고, 서버 단은 목표 IP를 ip1로서 갖는 1 내지 255인 수명 시간(time to live; ttl)을 각각 구비하는 일련의 검출 패킷(예를 들면, 255 개)을 구축할 수 있다. TCP/IP 프로토콜에 따르면, 이 일련의 검출 패킷이 라우터를 통과할 때마다, ttl은 1만큼 감소된다. ttl이 제로로 감소되는 경우에도 목표 어드레스가 도달되지 않으면, 그 라우터는 에러(error)를 보고하고, 인터넷 제어 메시지 프로토콜(Internet control message protocol; ICMP) 에러 패킷을 전송측(sender)으로 전송한다. 이와 같이, IP 어드레스까지 하나의 홉 이전의 라우터에 의해 전송되는 최종 ICMP 에러 패킷이 알려질 수도 있다. 따라서, 이 일련의 검출 패킷은, 분석을 통해 유저와 관련되는 이전 홉 라우터(previous-hop router)의 어드레스 및 네트워크 지연을 획득하기 위해 사용될 수도 있다.
도 3을 참조하여, 제2 네트워크 지연을 어떻게 획득하는지의 예시적인 방법을 예시하는 플로우차트가 상세히 설명된다.
상기에서 설명된 바와 같이, 서버는, 목표 어드레스를 유저 IP 어드레스로서 갖는 증분적(incremental) 수명 시간(TTL)을 구비하는 일련의 검출 패킷을 구축하여 전송한다. 예를 들면, 상기에서 설명된 바와 같이, 목표 IP를 유저 IP 어드레스로서 갖는 1 내지 255인 증분적 수명 시간(TTL)을 구비하는 일련의 255개의 검출 패킷이 구축되어 전송될 수도 있다. 따라서, 도 3에서 도시되는 바와 같이, 일련의 검출 패킷의 각각의 검출 패킷을 전송하는 각각의 시간이 블록 S301에서 기록될 수도 있다.
후속하여, IP 어드레스까지 하나의 홉 이전에 있는 라우터에 의해 서버로 전송되는 ICMP 에러 패킷이 일련의 검출 패킷에 기초하여 획득된다. 상기에서 설명된 바와 같이, 예를 들면, 이 일련의 검출 패킷에서 수명 시간을 1로 구비하는 검출 패킷이 제1 라우터에 도달하는 경우, IP 어드레스가 도달되지 않았기 때문에 제1 ICMP 에러 패킷이 생성되어 전송된다. 제1 ICMP 에러 패킷은 서버에 의해 수신되고, 제1 에러 패킷을 수신하는 시간이 기록된다. 동일한 토큰에 의해, 예를 들면, 이 일련의 검출 패킷에서 수명 시간을 n으로 구비하는 패킷이 제n 라우터에 도달하는 경우, IP 어드레스가 도달되지 않았기 때문에 제n ICMP 에러 패킷이 생성되어 전송된다. 제n ICMP 에러 패킷은 서버에 의해 수신되고, 제n 에러 패킷을 수신하는 시간이 기록된다. 이 일련의 검출 패킷에서 수명 시간을 n+1로 구비하는 패킷이 IP 어드레스에 도달하면, 어떠한 ICMP 에러 패킷도 생성되지 않는다. 따라서, 서버는, 제n 라우터가 IP 어드레스까지 하나의 홉 이전에 있는 라우터이다는 것을 알게 되고, 따라서 제n 에러 패킷을 수신하는 시간을, IP 어드레스까지 하나의 홉 이전에 있는 라우터로부터 서버로 전송되는 ICMP 에러 패킷을 수신하는 시간으로서 기록하게 된다. 다시 말하면, 블록 S302에서, IP 어드레스까지 하나의 홉 이전에 있는 라우터로부터 서버로 전송되는 ICMP 에러 패킷을 수신하는 시간이 기록된다. 예를 들면, 이 시간은 제4 시점으로서 정의될 수도 있다.
블록 S303에서, 일련의 검출 패킷에서 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간은 제3 시점으로서 기록된다. 한 실시형태에서, ICMP 에러 패킷에 대응하는 검출 패킷이 발견될 수도 있고, 그 결과 이 대응하는 검출 패킷을 전송하는 시간이 알려지게 되고, 그 검출 패킷을 전송하는 시간이 제3 시점으로서 정의된다.
블록 304에서, IP 어드레스까지 하나의 홉 이전에 있는 라우터로부터 ICMP 에러 패킷을 수신하는 시간과 일련의 검출 패킷에서 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간 사이의 시간차가, IP 어드레스까지 하나의 홉 이전에 있는 라우터와 서버 사이의 제2 네트워크 지연으로서 결정된다.
다시 말하면, 제4 시점과 제3 시점 사이의 시간차가 제2 네트워크 지연으로서 설정된다.
도 1을 다시 참조하면, 제1 네트워크 지연 및 제2 네트워크 지연을 결정하는 것에 응답하여, 블록 S103에서, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부에 관한 결정이 이루어진다.
정상 상황 하에서, 프록시 IP 어드레스를 사용하는 대신 단말의 유저 IP 어드레스를 사용하여 단말이 서버에 직접 연결되면, 단말과 서버 사이의 제1 네트워크 지연(T1)의 값은, 유저 IP 어드레스(즉, 단말의 IP 어드레스)의 이전 홉 라우터(R1)와 서버 사이의 제2 네트워크 지연(T2)의 값은 거의 동일하다. 따라서, T1 및 T2의 비율은 거의 1과 동일하다.
그러나, 유저가 임의의 프록시 서버를 사용하면, 서버에 의해 검출되는 소위 "유저 IP 어드레스"는 프록시 서버의 프록시 IP 어드레스이다. 따라서, 결정된 제2 네트워크 지연은, 소위 "유저 IP 어드레스"(이것은 프록시 서버의 실제 프록시 IP 어드레스임)의 이전 홉 라우터와 서버 사이의 시간 지연(T2')이다. T2'와 T1 사이의 차이는 크며, 그 결과 T1과 T2' 사이의 비율은, 임계치, 예를 들면 2이도록 설정되는 임계치보다 일반적으로 더 크다. 실제 필요에 따라 적절한 임계치가 설정될 수도 있다는 것을 유의해야 한다.
블록 S104에서, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 크면, IP 어드레스는 프록시 IP 어드레스로서 식별된다.
다시 말하면, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 크면, 두 지연 사이의 큰 차이 때문에, IP 어드레스는 단말의 IP 어드레스이다는 결정이 이루어질 수 있다. 단말은 프록시 서버의 프록시 IP 어드레스를 사용하여 서버에 액세스했고, 따라서 IP 어드레스는 프록시 IP 어드레스로서 식별된다. 옵션적으로, 프록시 서버는 VPN 프록시 서버일 수도 있고, 프록시 IP 어드레스는 본 개시에서 VPN 프록시 IP 어드레스일 수도 있다.
블록 105에서, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치 이하이면, IP 어드레스는 비프록시(non-proxy) IP 어드레스로서 식별된다.
다시 말하면, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치 이하이면, 두 지연 사이의 작은 차이 때문에 IP 어드레스는 단말의 IP 어드레스이며, 단말이 프록시 IP 어드레스를 사용하지 않고 서버에 액세스했다는 결정이 이루어질 수 있다. 따라서, IP 어드레스는 비프록시 IP 어드레스로서 식별된다.
본 개시의 실시형태의 기술적 솔루션을 명확하게 설명하기 위해, 도 4a 및 도 4b를 참조로 더 상세한 설명이 이하 이루어진다.
예를 들면, 도 4a에서 도시되는 바와 같이, 소정의 위치(A)에 위치된 단말(401)(제1 단말)이 SYN 패킷을 전송한다. SYN 패킷은, 예를 들면, 유저 단말의 셀을 통해 라우터(R1)(402)에 진입하고, 위치(A)의 백본 네트워크 엑스포트(backbone network export), 예를 들면, 라우터(R2)(403)를 통과하고, 위치(B)의 백본 네트워크 엑스포트, 예를 들면, 라우터(R3)(404)를 통과하고, 마지막으로 서버(405)에 도달하고, 서버는 SYN 패킷을 수신한다. 다시 말하면, 서버는, 제1 IP 어드레스를 유저 IP 어드레스로 사용하며 서버와의 TCP 연결 확립을 시도하는 제1 단말로부터 SYN 패킷을 수신한다. 서버는 제1 단말로 SYN-ACK 패킷을 전송하고, SYN-ACK 패킷을 제1 단말로 전송하는 제1 시간(시간1)을 기록한다. 그 후, 서버는 제1 단말로부터 ACK 패킷을 수신하고, 서버는 제1 단말로부터 ACK 패킷을 수신하는 제2 시간(시간2)을 기록한다. 따라서, 제1 네트워크 지연이 T1=시간2-시간1인 것으로 결정된다. 도 4a로부터 알 수 있는 바와 같이, 네트워크 지연(T1)은 서버와 라우터(R3) 사이의 지연, 라우터(R3과 R2) 사이의 지연, 라우터(R2와 R1) 사이의 지연, 및 라우터(R1)와 제1 단말 사이의 지연을 포함한다.
또한, 서버는, 예를 들면, 각각 1 내지 255인 수명 시간(ttl) 및 목표 IP 어드레스를 제1 IP 어드레스로서 갖는 일련의 255개의 검출 패킷을 구축하여 전송할 수도 있다. 따라서, 서버는 일련의 검출 패킷에서의 각각의 검출 패킷의 전송 시간을 기록할 수도 있다. 위에서 설명된 바와 같이, 서버는 또한, 제1 IP 어드레스(제1 단말의 IP 어드레스)의 이전 홉 라우터에 의해 전송되는 ICMP 에러 패킷을 수신하는 제4 시점(시간4)을 기록할 수도 있다. 또한, 이 ICMP 에러 패킷에 기초하여, 대응하는 검출 패킷의 전송 시간을 알기 위해, 대응하는 검출 패킷이 발견될 수도 있다. 다시 말하면, 일련의 검출 패킷에서 ICMP 에러 패킷에 대응하는 검출 패킷의 전송 시간은, 예를 들면, 제3 시점(시간3)으로서 정의된다. 따라서, 제2 네트워크 지연이 T2=시간4-시간3인 것으로 결정된다. 도 4a로부터 알 수 있는 바와 같이, 네트워크 지연(T2)은, 서버와 라우터(R3) 사이의 지연, 라우터(R3과 R2) 사이의 지연, 및 라우터(R2와 R1) 사이의 지연을 포함한다. 다시 말하면, T1과 T2 사이의 차이는, 라우터와 제1 단말 사이의 지연에 불과하고, 그 차이는 상대적으로 작다.
도면으로부터 알 수 있는 바와 같이, 제1 IP 어드레스가 제1 단말의 진짜 어드레스이기 때문에, 획득된 T1 및 T2의 결정된 값은 서로 비슷하며, T1과 T2 사이의 비율은 임계치보다 더 크지 않다. 따라서, 제1 IP 어드레스가 프록시 IP 어드레스가 아니다는 결정이 이루어질 수도 있다. 본 개시의 기술적 솔루션으로부터 알 수 있는 바와 같이, 식별 결과는 실제 결과에 일치한다.
마찬가지로, 도 4b에서 도시되는 바와 같이, 제1 단말이 프록시에 의해 서버에 연결되면, 소정의 위치(A)에 위치되는 유저 단말(406)(제1 단말)이 SYN 패킷을 전송한다. SYN 패킷은, 예를 들면, 유저 단말(406)을 통해 라우터(R1)(407)에 진입하고, 위치(A)의 백본 네트워크 엑스포트, 예를 들면, 라우터(R2)(408)를 통과하고, 소정의 위치(B)의 백본 네트워크 엑스포트, 예를 들면, 라우터(R3)(409)를 통과하고, 프록시(410)를 통과하고, 예를 들면, 프록시(410)의 셀을 통해 라우터(R4)(411)에 진입하고, 그 다음, 소정의 위치(C)의 백본 네트워크 엑스포트, 예를 들면, 라우터(R5)(412)를 통과하고, 소정의 위치(D)의 백본 네트워크 엑스포트, 예를 들면, 라우터(R6)(413)를 통과하고, 최종적으로 서버(414)에 도달한다. 서버는 SYN 패킷을 수신한다. 다시 말하면, 서버는, 제2 IP 어드레스(프록시 IP 어드레스)를 유저 IP 어드레스로 사용하며 서버와의 TCP 연결 확립을 시도하는 제1 단말로부터 SYN 패킷을 수신한다. 서버는 제1 단말로 SYN-ACK 패킷을 전송하고, SYN-ACK 패킷을 제1 단말로 전송하는 제1 시간(시간1')을 기록한다. 그 후, 서버는 제1 단말로부터 ACK 패킷을 수신한다. 서버는 제1 단말로부터 ACK 패킷을 수신하는 제2 시점(시간2')을 기록한다. 따라서, 제1 네트워크 지연이 T1'=시간2'-시간1'이다는 결정이 이루어진다. 도 4b로부터 알 수 있는 바와 같이, 프록시의 사용으로 인해, 네트워크 지연(T1')은, 서버와 라우터(R6) 사이의 지연, 라우터(R6과 R5) 사이의 지연, 라우터(R5와 R4) 사이의 지연, 라우터(R4)와 프록시 사이의 지연, 프록시와 라우터(R3) 사이의 지연, 라우터(R3와 R2) 사이의 지연, 라우터(R2와 R1) 사이의 지연, 및 라우터(R1)와 제1 단말 사이의 지연을 포함한다.
또한, 서버는, 예를 들면, 각각 1 내지 255인 수명 시간(ttl) 및 목표 IP 어드레스를 제2 IP 어드레스로서 갖는 일련의 255개의 검출 패킷을 구축하여 전송할 수도 있고, 그 결과 서버는 일련의 검출 패킷에서의 각각의 검출 패킷의 전송 시간을 기록할 수도 있다. 위에서 설명된 바와 같이, 서버는 또한, 제2 IP 어드레스(제2 단말 대신 프록시 서버의 IP 어드레스)의 이전 홉 라우터로부터 전송되는 ICMP 에러 패킷을 수신하는 제4 시점(시간4')을 기록할 수도 있다. 또한, ICMP 에러 패킷에 기초하여, 대응하는 검출 패킷이 발견될 수도 있고, 따라서 대응하는 검출 패킷의 전송 시간을 알 수 있다. 다시 말하면, 일련의 검출 패킷에서 ICMP 에러 패킷에 대응하는 검출 패킷의 전송 시간은, 예를 들면, 제3 시점(시간3')으로서 정의된다. 이와 같이, 제2 네트워크 지연이 T2=시간4'-시간3'인 것으로 결정된다. 도 4b로부터 알 수 있는 바와 같이, 프록시의 사용으로 인해, 제2 IP 어드레스(프록시 IP 어드레스)의 이전 홉 라우터는 더 이상 라우터(R1)가 아니고 대신 라우터(R4)로 변경된다. 따라서, 네트워크 지연(T2')은, 서버와 라우터(R6) 사이의 지연, 라우터(R6과 R5) 사이의 지연, 및 라우터(R5와 R4) 사이의 지연을 포함한다. 다시 말하면, T1'과 T2' 사이의 차이는, 라우터(R4)와 프록시 사이의 지연, 프록시와 라우터(R3) 사이의 지연, 라우터(R3와 R2) 사이의 지연, 라우터(R2와 R1) 사이의 지연, 및 라우터(R1)와 제1 단말 사이의 지연을 포함하고, 차이는 크다.
도 4b로부터 알 수 있는 바와 같이, 제2 IP 어드레스는 제1 단말의 진짜 어드레스가 아니며, 제1 네트워크 지연(T1')은 T2'보다 훨씬 더 크다. 따라서, T1'과 T2' 사이의 비율은 임계치보다 더 크다. 이와 같이, 제2 IP 어드레스는 프록시 IP 어드레스이며 제1 단말의 IP 어드레스가 아니다는 결정이 이루어질 수도 있다. 본 개시의 기술적 솔루션을 사용하여, 식별 결과가 실제 결과에 일치한다는 것을 알 수 있다.
본 개시의 실시형태에 따른 프록시 IP 어드레스를 식별하는 방법은, 상기의 도 1 내지 도 4b를 통해 설명되었다.
본 개시는 또한, 프록시 IP 어드레스를 식별하는 장치를 제공한다.
도 5는, 본 개시의 한 실시형태에 따른, 프록시 IP 어드레스를 식별하는 장치(500)의 구조도를 개략적으로 도시한다. 본 개시의 한 실시형태에 따르면, 장치(500)는: 제1 결정 모듈(501), 제2 결정 모듈(502), 판정 모듈(503) 및 식별 모듈(504)을 포함할 수도 있다.
본 개시의 실시형태에 따르면, 제1 결정 모듈(501)은, IP 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 TCP 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연을 결정하도록 구성될 수도 있다.
제2 결정 모듈(502)은, IP 어드레스의 이전 홉 라우터와 서버 사이의 제2 네트워크 지연을 결정하도록 구성될 수도 있다.
판정 모듈(503)은, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하도록 구성될 수도 있다.
결정 모듈(504)은, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰 경우 IP 어드레스가 프록시 IP 어드레스이다는 것을 식별하도록 구성될 수도 있다.
결정 모듈(504)은, 제1 네트워크 지연과 제2 네트워크 지연 사이의 비율이 임계치 이하인 경우 IP 어드레스가 비프록시 IP 어드레스이다는 것을 식별하도록 구성될 수도 있다.
본 개시의 실시형태에 따르면, 제1 결정 모듈(501)은 또한, SYN-ACK 패킷을 단말로 전송하는 시간과 단말로부터 ACK 패킷을 수신하는 시간 사이의 시간차를 제1 네트워크 지연으로서 결정하도록 구성될 수도 있다.
한 실시형태에서, 제1 결정 모듈(501)은 또한: SYN-ACK 패킷이 단말로 전송되는 때의 제1 시점을 기록하도록 구성되는 제1 기록 서브 모듈; ACK 패킷이 단말로부터 수신되는 제2 시점을 기록하도록 구성되는 제2 기록 서브 모듈; 및 제2 시점과 제1 시점 사이의 시간차를 제1 네트워크 지연으로서 결정하도록 구성되는 제1 결정 서브 모듈을 포함할 수도 있다.
본 개시의 실시형태에 따르면, 제2 결정 모듈(502)은 또한: IP 어드레스의 이전 홉 라우터로부터 ICMP 에러 패킷을 수신하는 시간과 일련의 검출 패킷에서 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간 사이의 시간차를, 서버와 IP 어드레스의 이전 홉 라우터 사이의 제2 네트워크 지연으로서 결정하도록 구성되고, 일련의 검출 패킷은 증분적 수명 시간을 가지며, 그 목표 어드레스는 유저 IP 어드레스이다.
한 실시형태에서, 제2 결정 모듈은 또한: 일련의 검출 패킷에서의 각각의 검출 패킷의 전송 시간을 기록하도록 구성되는 제3 기록 서브 모듈; IP 어드레스의 이전 홉 라우터로부터 ICMP 에러 패킷이 수신되는 제4 시점을 기록하도록 구성되는 제4 기록 서브 모듈; 일련의 검출 패킷에서 ICMP 에러 패킷에 대응하는 검출 패킷의 전송 시간을 제3 시점으로서 정의하도록 구성되는 제1 정의 서브 모듈; 및 제4 시점과 제3 시점 사이의 시간차를 제2 네트워크 지연으로서 결정하도록 구성되는 제2 결정 서브 모듈을 포함할 수도 있다.
본 실시형태의 장치에 의해 구현되는 기능은, 도 1 내지 도 4b에서 도시되는 바와 같은 방법에 대응한다. 따라서, 본 실시형태에서 상세히 설명되지 않는 부분은, 상기 실시형태에서의 관련 설명을 참조할 수도 있으며, 본원에서는 중복적으로 설명되지는 않는다.
통상적인 구성에서, 컴퓨팅 디바이스는 하나 이상의 프로세서(CPU), 입/출력 인터페이스, 네트워크 인터페이스, 및 메모리를 포함한다.
예를 들면, 도 6은 예시적인 장치(600), 예컨대 상기에서 설명된 바와 같은 장치를 더 상세히 도시한다. 한 실시형태에서, 장치(600)는, 하나 이상의 프로세서(601), 네트워크 인터페이스(602), 메모리(603), 및 입/출력 인터페이스(604)를 포함할 수도 있지만, 이들로 제한되지는 않는다.
메모리(603)는, 휘발성 메모리, 랜덤 액세스 메모리(random access memory; RAM) 및/또는 불휘발성 메모리, 예를 들면, 리드 온리 메모리(read-only memory; ROM) 또는 플래시 RAM과 같은 컴퓨터 판독가능 매체의 형태를 포함할 수도 있다. 메모리(603)는 컴퓨터 판독가능 매체의 한 예이다.
컴퓨터 판독가능 매체는, 휘발성 또는 불휘발성 타입, 착탈식 또는 비착탈식 매체를 포함할 수도 있는데, 이들은 임의의 방법 또는 기술을 사용하여 정보의 저장을 달성할 수도 있다. 정보는 컴퓨터 판독가능 커맨드, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 포함할 수도 있다. 컴퓨터 저장 매체의 예는, 컴퓨팅 디바이스에 의해 액세스될 수도 있는 정보를 저장하기 위해 사용될 수도 있는, 상 변화 메모리(phase-change memory; PRAM), 스테틱 랜덤 액세스 메모리(static random access memory; SRAM), 다이내믹 랜덤 액세스 메모리(dynamic random access memory; DRAM), 다른 타입의 랜덤 액세스 메모리(RAM), 리드 온리 메모리(ROM), 전기적으로 소거가능한 프로그래머블 리드 온리 메모리(electronically erasable programmable read-only memory; EEPROM), 퀵 플래시 메모리 또는 다른 내장형 저장 기술, 컴팩트 디스크 리드 온리 메모리(compact disk read-only memory; CD-ROM), 디지털 다기능 디스크(digital versatile disc; DVD) 또는 다른 광학 스토리지, 자기 카세트 테이프, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스, 또는 임의의 다른 비전송 매체를 포함할 수도 있지만, 이들로 제한되지는 않는다. 본원에서 정의되는 바와 같이, 컴퓨터 판독가능 매체는 일시적 매체, 예컨대 변조된 데이터 신호 및 반송파를 포함하지 않는다.
메모리(603)는 프로그램 모듈(605) 및 프로그램 데이터(606)를 포함할 수도 있다. 일 실시형태에서, 프로그램 모듈(605)은 제1 결정 모듈(607), 제2 결정 모듈(608), 판정 모듈(609) 및 식별 모듈(610)을 포함할 수도 있다. 몇몇 실시형태에서, 제1 결정 모듈(607)은 제1 기록 서브 모듈(611), 제2 기록 서브 모듈(612) 및/또는 제1 결정 서브 모듈(613)을 포함할 수도 있다. 추가적으로, 일 실시형태에서, 제2 결정 모듈(608)은 제3 기록 서브 모듈(614), 제4 기록 서브 모듈(615), 제1 정의 서브 모듈(616) 및/또는 제2 결정 서브 모듈(617)을 포함할 수도 있다. 이들 모듈 및 서브 모듈의 상세는 상기 설명에서 발견될 수도 있으며 따라서 본원에서는 중복적으로 설명되지 않는다.
용어 "포함한다(comprise)", "포함한다(include)" 또는 이들의 임의의 다른 변형 어구는 비배타적인 포함(non-exclusive inclusion)을 포괄하도록 의도된다는 것을 유의해야 한다. 일련의 엘리먼트를 포함하는 프로세스, 방법, 제품 또는 장치는, 이들 엘리먼트를 포함할 뿐만 아니라, 명시적으로 열거되지 않은 다른 엘리먼트를 또한 포함하거나, 또는 이러한 프로세스, 방법, 제품 또는 장치에서 이미 존재하는 엘리먼트를 더 포함한다. 추가 제한이 없는 조건에서, 어구 "~하는 하나를 포함하는"에 의해 정의되는 엘리먼트는, 프로세스, 방법, 제품 또는 장치에서 존재하는 임의의 다른 유사한 엘리먼트를 배제하지는 않는다.
당업자는, 본 개시의 실시형태가 방법, 시스템 또는 컴퓨터 프로그램의 제품으로서 제공될 수도 있다는 것을 이해해야 한다. 따라서, 본 개시는 하드웨어만의 실시형태로서, 소프트웨어만의 실시형태로서 또는 하드웨어와 소프트웨어의 조합의 실시형태로서 구현될 수 있다. 또한, 본 개시는, 컴퓨터 실행가능 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 저장 매체(이것은 자기 디스크, CD-ROM 또는 광학 디스크 등등을 포함하지만 이들로 제한되지는 않음)에 저장될 수 있는 컴퓨터 프로그램의 제품으로서 구현될 수 있다.
상기 설명은, 본 개시의 범위를 제한하도록 의도되지 않은 본 개시의 실시형태를 설명할 뿐이다. 당업자에 의해, 다양한 수정예 및 변경예가 본 개시에 대해 이루어질 수도 있다. 본 개시의 취지와 원칙의 범위 내에 있는 임의의 수정예, 대체예 및 개선예는 본 개시의 청구범위의 범위 내에 있을 것이다.

Claims (20)

  1. 하나 이상의 컴퓨팅 디바이스에 의해 구현되는 방법으로서,
    인터넷 프로토콜(Internet Protocol; IP) 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 전송 제어 프로토콜(Transmission Control Protocol; TCP) 연결을 확립하는 단말과 상기 서버 사이의 제1 네트워크 지연을 결정하는 단계와,
    상기 유저 IP 어드레스까지 하나의 홉 이전에 있는 라우터와 상기 서버 사이의 제2 네트워크 지연을 결정하는 단계와,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하는 단계와,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치보다 더 큰지 여부의 결정의 결과에 기초하여 상기 유저 IP 어드레스를 프록시 IP 어드레스 또는 비프록시 IP 어드레스로서 식별하는 단계를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치보다 더 크다는 결정에 응답하여 상기 유저 IP 어드레스를 상기 프록시 IP 어드레스로서 식별하는 단계를 더 포함하는
    방법.
  3. 제 1 항에 있어서,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치 이하라는 결정에 응답하여 상기 유저 IP 어드레스를 상기 비프록시 IP 어드레스로서 식별하는 단계를 더 포함하는
    방법.
  4. 제 1 항에 있어서,
    상기 제1 네트워크 지연을 결정하는 단계는, SYN-ACK 패킷을 상기 단말로 전송하는 시간과 상기 단말로부터 ACK 패킷을 수신하는 시간 사이의 시간차를 제1 네트워크 지연으로서 결정하는 단계를 포함하는
    방법.
  5. 제 1 항에 있어서,
    상기 제1 네트워크 지연을 결정하는 단계는,
    상기 SYN-ACK 패킷을 상기 단말로 전송하는 제1 시점을 기록하는 단계와,
    상기 단말로부터 상기 ACK 패킷을 수신하는 제2 시점을 기록하는 단계와,
    상기 제2 시점과 상기 제1 시점 사이의 시간차를 상기 제1 네트워크 지연으로서 결정하는 단계를 포함하는
    방법.
  6. 제 1 항에 있어서,
    상기 제2 네트워크 지연을 결정하는 단계는, 상기 유저 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터로부터 인터넷 제어 메시지 프로토콜(Internet control message protocol; ICMP) 에러 패킷을 수신하는 시간과 상기 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간 사이의 시간차를 상기 제2 네트워크 지연으로서 결정하는 단계를 포함하는
    방법.
  7. 제 6 항에 있어서,
    일련의 검출 패킷은 상기 ICMP 에러 패킷을 포함하고, 상기 일련의 검출 패킷은 증분적(incremental) 수명 시간(times to live; TTL)을 구비하고 상기 일련의 검출 패킷의 목표 어드레스는 상기 유저 IP 어드레스인
    방법.
  8. 제 1 항에 있어서,
    상기 제2 네트워크 지연을 결정하는 단계는,
    증분적 수명 시간(TTL)을 가지며 목표 어드레스가 상기 유저 IP 어드레스인 일련의 검출 패킷에서의 각각의 검출 패킷을 전송하는 시간을 기록하는 단계와,
    상기 유저 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터로부터 인터넷 제어 메시지 프로토콜(ICMP) 에러 패킷을 수신하는 제4 시점을 기록하는 단계와,
    상기 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간을 제3 시점으로서 정의하는 단계와,
    상기 제4 시점과 상기 제3 시점 사이의 시간차를 상기 제2 네트워크 지연으로서 결정하는 단계를 포함하는
    방법.
  9. 프록시 IP 어드레스를 식별하는 장치로서,
    하나 이상의 프로세서와,
    메모리와,
    인터넷 프로토콜(IP) 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 전송 제어 프로토콜(TCP) 연결을 확립하는 단말과 상기 서버 사이의 제1 네트워크 지연을 결정하는, 상기 메모리에 저장되며 하나 이상의 프로세서에 의해 실행가능한 제1 결정 모듈과,
    상기 유저 IP 어드레스까지 한 홉 이전에 있는 라우터와 상기 서버 사이의 제2 네트워크 지연을 결정하는, 상기 메모리에 저장되며 상기 하나 이상의 프로세서에 의해 실행가능한 제2 결정 모듈과,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하는, 상기 메모리에 저장되며 상기 하나 이상의 프로세서에 의해 실행가능한 판정 모듈과,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치보다 더 큰지 여부의 결정의 결과에 기초하여 상기 유저 IP 어드레스를 프록시 IP 어드레스 또는 비프록시 IP 어드레스로서 식별하는, 상기 메모리에 저장되며 상기 하나 이상의 프로세서에 의해 실행가능한 식별 모듈을 포함하는
    장치.
  10. 제 9 항에 있어서,
    상기 식별 모듈은, 상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치보다 더 크다는 결정에 응답하여 상기 유저 IP 어드레스를 상기 프록시 IP 어드레스로서 식별하는
    장치.
  11. 제 9 항에 있어서,
    상기 식별 모듈은, 상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치 이하라는 결정에 응답하여 상기 유저 IP 어드레스를 상기 비프록시 IP 어드레스로서 식별하는
    장치.
  12. 제 9 항에 있어서,
    상기 제1 결정 모듈은 또한, SYN-ACK 패킷을 상기 단말로 전송하는 시간과 상기 단말로부터 ACK 패킷을 수신하는 시간 사이의 시간차를 제1 네트워크 지연으로서 결정하는
    장치.
  13. 제 9 항에 있어서,
    상기 제1 결정 모듈은,
    상기 SYN-ACK 패킷을 상기 단말로 전송하는 제1 시점을 기록하는 제1 기록 서브 모듈과,
    상기 단말로부터 상기 SYN-ACK 패킷을 수신하는 제2 시점을 기록하는 제2 기록 서브 모듈과,
    상기 제2 시점과 상기 제1 시점 사이의 시간차를 상기 제1 네트워크 지연으로서 결정하는 제1 결정 서브 모듈을 더 포함하는
    장치.
  14. 제 9 항에 있어서,
    상기 제2 결정 모듈은 또한, 상기 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터로부터 인터넷 제어 메시지 프로토콜(ICMP) 에러 패킷을 수신하는 시간과 일련의 검출 패킷에서 상기 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간 사이의 시간차를, 상기 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터와 상기 서버 사이의 상기 제2 네트워크 지연으로서 결정하고, 상기 일련의 검출 패킷은 증분적 수명 시간(TTL)을 구비하고 상기 일련의 검출 패킷의 목표 어드레스는 상기 유저 IP 어드레스인
    장치.
  15. 제 9 항에 있어서,
    상기 제2 결정 모듈은,
    일련의 검출 패킷에서의 각각의 검출 패킷을 전송하는 시간을 기록하는 제3 기록 서브 모듈과,
    상기 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터로부터 인터넷 제어 메시지 프로토콜(ICMP) 에러 패킷을 수신하는 제4 시점을 기록하는 제4 기록 서브 모듈과,
    상기 일련의 검출 패킷에서 상기 ICMP 에러 패킷에 대응하는 상기 검출 패킷을 전송하는 시간을 제3 시점으로서 정의하는 제1 정의 서브 모듈과,
    상기 제4 시점과 상기 제3 시점 사이의 시간차를 상기 제2 네트워크 지연으로서 결정하는 제2 결정 서브 모듈을 더 포함하는
    장치.
  16. 실행가능 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체로서,
    상기 실행가능 명령어는, 하나 이상의 프로세서에 의한 실행시, 상기 하나 이상의 프로세서로 하여금,
    인터넷 프로토콜(Internet Protocol; IP) 어드레스를 유저 IP 어드레스로서 사용하여 서버와의 전송 제어 프로토콜(Transmission Control Protocol; TCP) 연결을 확립하는 단말과 서버 사이의 제1 네트워크 지연을 결정하는 것과,
    상기 유저 IP 어드레스까지 하나의 홉 이전에 있는 라우터와 상기 서버 사이의 제2 네트워크 지연을 결정하는 것과,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 임계치보다 더 큰지 여부를 결정하는 것과,
    상기 제1 네트워크 지연과 상기 제2 네트워크 지연 사이의 비율이 상기 임계치보다 더 크다는 결정에 응답하여 상기 유저 IP 어드레스를 프록시 IP 어드레스로서 식별하는 것
    을 포함하는 동작을 수행하게 하는
    컴퓨터 판독가능 매체.
  17. 제 16 항에 있어서,
    상기 제1 네트워크 지연을 결정하는 것은, SYN-ACK 패킷을 상기 단말로 전송하는 시간과 상기 단말로부터 ACK 패킷을 수신하는 시간 사이의 시간차를 제1 네트워크 지연으로서 결정하는 것을 포함하는
    컴퓨터 판독가능 매체.
  18. 제 16 항에 있어서,
    상기 제1 네트워크 지연을 결정하는 것은,
    상기 SYN-ACK 패킷을 상기 단말로 전송하는 제1 시점을 기록하는 것과,
    상기 단말로부터 상기 ACK 패킷을 수신하는 제2 시점을 기록하는 것과,
    상기 제2 시점과 상기 제1 시점 사이의 시간차를 상기 제1 네트워크 지연으로서 결정하는 것을 포함하는
    컴퓨터 판독가능 매체.
  19. 제 16 항에 있어서,
    상기 제2 네트워크 지연을 결정하는 것은, 상기 유저 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터로부터 인터넷 제어 메시지 프로토콜(ICMP) 에러 패킷을 수신하는 시간과 상기 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간 사이의 시간차를 상기 제2 네트워크 지연으로서 결정하는 것을 포함하고, 일련의 검출 패킷은 상기 ICMP 에러 패킷을 포함하고, 상기 일련의 검출 패킷은 증분적 수명 시간(TTL)을 구비하고, 상기 일련의 검출 패킷의 목표 어드레스는 상기 유저 IP 어드레스인
    컴퓨터 판독가능 매체.
  20. 제 16 항에 있어서,
    상기 제2 네트워크 지연을 결정하는 것은,
    증분적 수명 시간(TTL)을 가지며 목표 어드레스가 상기 유저 IP 어드레스인 일련의 검출 패킷에서의 각각의 검출 패킷을 전송하는 시간을 기록하는 것과,
    상기 유저 IP 어드레스까지 하나의 홉 이전에 있는 상기 라우터로부터 인터넷 제어 메시지 프로토콜(ICMP) 에러 패킷을 수신하는 제4 시점을 기록하는 것과,
    상기 ICMP 에러 패킷에 대응하는 검출 패킷을 전송하는 시간을 제3 시점으로서 정의하는 것과,
    상기 제4 시점과 상기 제3 시점 사이의 시간차를 제2 네트워크 지연으로서 결정하는 것을 포함하는
    컴퓨터 판독가능 매체.
KR1020167017704A 2014-01-08 2015-01-07 프록시 ip 어드레스를 식별하는 방법 및 장치 KR102047585B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410008844.0 2014-01-08
CN201410008844.0A CN104767837B (zh) 2014-01-08 2014-01-08 一种识别代理ip地址的方法及装置
PCT/US2015/010434 WO2015105842A1 (en) 2014-01-08 2015-01-07 Method and apparatus of identifying proxy ip address

Publications (2)

Publication Number Publication Date
KR20160106062A true KR20160106062A (ko) 2016-09-09
KR102047585B1 KR102047585B1 (ko) 2019-11-21

Family

ID=53496126

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167017704A KR102047585B1 (ko) 2014-01-08 2015-01-07 프록시 ip 어드레스를 식별하는 방법 및 장치

Country Status (8)

Country Link
US (1) US20150195381A1 (ko)
EP (1) EP3092749B1 (ko)
JP (1) JP6517819B2 (ko)
KR (1) KR102047585B1 (ko)
CN (1) CN104767837B (ko)
HK (1) HK1207764A1 (ko)
TW (1) TWI648969B (ko)
WO (1) WO2015105842A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9800762B2 (en) * 2015-03-03 2017-10-24 Ricoh Company, Ltd. Non-transitory computer-readable information recording medium, information processing apparatus, and communications system
EP3298834B1 (en) 2015-05-21 2022-03-09 Andrew Wireless Systems GmbH Synchronizing multiple-input/multiple-output signals in a telecommunication system
US9954759B2 (en) * 2015-07-29 2018-04-24 International Business Machines Corporation Detecting proxy-based communications
CN105335511A (zh) * 2015-10-30 2016-02-17 百度在线网络技术(北京)有限公司 网页的访问方法及装置
CN106789858B (zh) * 2015-11-25 2019-12-20 广州市动景计算机科技有限公司 一种访问控制方法和装置以及服务器
US10356115B2 (en) * 2017-03-31 2019-07-16 Level 3 Communications, Llc Creating aggregate network flow time series in network anomaly detection systems
CN110022334B (zh) * 2018-01-09 2022-01-11 香港理工大学深圳研究院 一种代理服务器的检测方法、检测装置及终端设备
CN110198248B (zh) * 2018-02-26 2022-04-26 北京京东尚科信息技术有限公司 检测ip地址的方法和装置
CN108566380B (zh) * 2018-03-15 2020-08-28 国家计算机网络与信息安全管理中心四川分中心 一种代理上网行为识别与检测方法
CN108833424B (zh) * 2018-06-25 2020-11-03 哈尔滨工业大学 一种获取域名所有资源记录的系统
CN111181798B (zh) * 2019-08-28 2022-07-22 腾讯科技(深圳)有限公司 网络时延测量方法、装置、电子设备及存储介质
CN110839017B (zh) * 2019-10-21 2022-02-08 腾讯科技(深圳)有限公司 代理ip地址识别方法、装置、电子设备及存储介质
CN112825201A (zh) * 2019-11-20 2021-05-21 苏州博瑞尔特信息科技有限公司 一种针对网络考勤的处理方法
CN111953810B (zh) * 2020-08-03 2023-05-19 腾讯科技(深圳)有限公司 识别代理互联网协议地址的方法、装置及存储介质
CN112491791B (zh) * 2020-10-20 2021-08-03 广州数智网络科技有限公司 快速识别http代理ip地址的方法、装置及电子设备
US20240113970A1 (en) * 2021-02-01 2024-04-04 Beijing Xiaomi Mobile Software Co., Ltd. Network path determining method and apparatus, communication device and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060098586A1 (en) * 2001-03-09 2006-05-11 Farrell Craig A Method and apparatus for application route discovery
US20060203808A1 (en) * 1999-06-30 2006-09-14 Kui Zhang Method and apparatus for measuring latency of a computer network
US20070192845A1 (en) * 2006-02-07 2007-08-16 Xoom Corporation System and method for passively detecting a proxy
US20090144408A1 (en) * 2004-01-09 2009-06-04 Saar Wilf Detecting relayed communications

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6684250B2 (en) * 2000-04-03 2004-01-27 Quova, Inc. Method and apparatus for estimating a geographic location of a networked entity
US7305461B2 (en) * 2000-12-15 2007-12-04 International Business Machines Corporation Method and system for network management with backup status gathering
US7937470B2 (en) * 2000-12-21 2011-05-03 Oracle International Corp. Methods of determining communications protocol latency
US7012900B1 (en) * 2001-08-22 2006-03-14 Packeteer, Inc. Method for measuring network delay using gap time
US7257630B2 (en) * 2002-01-15 2007-08-14 Mcafee, Inc. System and method for network vulnerability detection and reporting
US7979694B2 (en) * 2003-03-03 2011-07-12 Cisco Technology, Inc. Using TCP to authenticate IP source addresses
EP1872241B1 (en) 2005-03-24 2019-01-02 EMC Corporation System and method for detecting a proxy between a client and a server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060203808A1 (en) * 1999-06-30 2006-09-14 Kui Zhang Method and apparatus for measuring latency of a computer network
US20060098586A1 (en) * 2001-03-09 2006-05-11 Farrell Craig A Method and apparatus for application route discovery
US20090144408A1 (en) * 2004-01-09 2009-06-04 Saar Wilf Detecting relayed communications
US20070192845A1 (en) * 2006-02-07 2007-08-16 Xoom Corporation System and method for passively detecting a proxy

Also Published As

Publication number Publication date
CN104767837A (zh) 2015-07-08
KR102047585B1 (ko) 2019-11-21
TW201528732A (zh) 2015-07-16
WO2015105842A1 (en) 2015-07-16
TWI648969B (zh) 2019-01-21
EP3092749A1 (en) 2016-11-16
JP6517819B2 (ja) 2019-05-22
US20150195381A1 (en) 2015-07-09
HK1207764A1 (en) 2016-02-05
JP2017502605A (ja) 2017-01-19
CN104767837B (zh) 2018-08-24
EP3092749B1 (en) 2019-07-10
EP3092749A4 (en) 2017-08-16

Similar Documents

Publication Publication Date Title
KR102047585B1 (ko) 프록시 ip 어드레스를 식별하는 방법 및 장치
US20220045990A1 (en) Methods and systems for api deception environment and api traffic control and security
US9083716B1 (en) System and method for detecting address resolution protocol (ARP) spoofing
US10097520B2 (en) Method and apparatus for causing delay in processing requests for internet resources received from client devices
US9843590B1 (en) Method and apparatus for causing a delay in processing requests for internet resources received from client devices
US10547636B2 (en) Method and system for detecting and mitigating denial-of-service attacks
US10652211B2 (en) Control device, border router, control method, and control program
JP2017502605A5 (ko)
US9961066B1 (en) Method and apparatus for limiting traffic rate to an origin server
US11178163B2 (en) Location spoofing detection using round-trip times
US9509777B2 (en) Connection method and management server
CN107623916B (zh) 一种进行WiFi网络安全监控的方法与设备
CN108769086B (zh) 一种用于通过用户设备检测中间人攻击的方法与设备
CN109150655B (zh) 一种IPv4防火墙IPv6绕过的检测方法
CN110995763B (zh) 一种数据处理方法、装置、电子设备和计算机存储介质
US8001243B2 (en) Distributed denial of service deterrence using outbound packet rewriting
CN113098727A (zh) 一种数据包检测处理方法与设备
CN106656912A (zh) 一种检测拒绝服务攻击的方法及装置
US9455911B1 (en) In-band centralized control with connection-oriented control protocols
US20110013634A1 (en) Ipsec Encapsulation Mode
KR20170077540A (ko) 로그 관리 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
CN114697380B (zh) 访问请求的重定向方法、系统、装置以及存储介质
CN111526126B (zh) 数据安全传输方法,数据安全设备及系统

Legal Events

Date Code Title Description
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)