KR100533785B1 - Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet - Google Patents

Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet Download PDF

Info

Publication number
KR100533785B1
KR100533785B1 KR10-2003-0039636A KR20030039636A KR100533785B1 KR 100533785 B1 KR100533785 B1 KR 100533785B1 KR 20030039636 A KR20030039636 A KR 20030039636A KR 100533785 B1 KR100533785 B1 KR 100533785B1
Authority
KR
South Korea
Prior art keywords
address
packet
dhcp
host
arp
Prior art date
Application number
KR10-2003-0039636A
Other languages
Korean (ko)
Other versions
KR20040109985A (en
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 주식회사 인티게이트
Priority to KR10-2003-0039636A priority Critical patent/KR100533785B1/en
Publication of KR20040109985A publication Critical patent/KR20040109985A/en
Application granted granted Critical
Publication of KR100533785B1 publication Critical patent/KR100533785B1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A62LIFE-SAVING; FIRE-FIGHTING
    • A62BDEVICES, APPARATUS OR METHODS FOR LIFE-SAVING
    • A62B1/00Devices for lowering persons from buildings or the like
    • A62B1/20Devices for lowering persons from buildings or the like by making use of sliding-ropes, sliding-poles or chutes, e.g. hoses, pipes, sliding-grooves, sliding-sheets
    • AHUMAN NECESSITIES
    • A62LIFE-SAVING; FIRE-FIGHTING
    • A62BDEVICES, APPARATUS OR METHODS FOR LIFE-SAVING
    • A62B11/00Devices for reconditioning breathing air in sealed rooms

Landscapes

  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Pulmonology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은, DHCP(Dynamic Host Configuration Protocol) 프로토콜을 이용하여 IP 주소를 할당받는 환경에서, DHCP 패킷을 스누핑 (Snooping)하여 각각의 포트를 통하여 연결된 호스트들에 대한 주소 할당 정보를 'MAC 주소, IP 주소' 형태의 데이터베이스로 구성한 후, 잠재적인 공격자(Hacker)가 될 수 있는 각각의 호스트들로부터 해당 포트로 들어오는 ARP 스푸핑(Spoofing) 패킷이나 IP 스푸핑 패킷을 버림으로써, ARP나 IP 스푸핑을 방지하여 망과 망 내의 시스템을 보호할 수 있는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법에 관한 것이다.According to an embodiment of the present invention, in an environment where an IP address is allocated using a DHCP (Dynamic Host Configuration Protocol) protocol, snooping a DHCP packet to obtain address allocation information about hosts connected through respective ports, may include 'MAC address and IP'. After configuring the database as 'address' type, the ARP spoofing packet or IP spoofing packet is dropped from each host that can be a potential attacker, thereby preventing ARP or IP spoofing. The present invention relates to a method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet that can protect a system in a network.

본 발명에 따른 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법은, 스푸핑된 ARP/IP 패킷이 호스트로부터 포트로 입력되거나 호스트로 전송되어 나가는 것을 차단함으로써 스푸핑된 ARP/IP 패킷이 시스템 내의 호스트나 상위 망으로 전파되는 것을 차단하고, 이와 같이 해킹의 기본적인 수단으로 사용되는 스푸핑을 차단함으로써 시스템과 망의 보안성을 높일 수 있는 현저한 효과가 있다.In the method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using DHCP packets according to the present invention, spoofed ARP / IP spoofed by blocking spoofed ARP / IP packets from being input to or transmitted from the host to the host. Blocking the propagation of packets to hosts or higher networks in the system, and blocking spoofing used as a basic means of hacking, has a significant effect of increasing the security of the system and the network.

Description

DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법{METHOD FOR PREVENTING ARP/IP SPOOFING AUTOMATICALLY ON THE DYNAMIC IP ADDRESS ALLOCATING ENVIRONMENT USING DHCP PACKET}ARP / IP SPOOFING AUTOMATICALLY ON THE DYNAMIC IP ADDRESS ALLOCATING ENVIRONMENT USING DHCP PACKET}

본 발명은 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법에 관한 것으로서, 구체적으로, DHCP(Dynamic Host Configuration Protocol) 프로토콜을 이용하여 IP 주소를 할당받는 환경에서, DHCP 패킷을 스누핑 (Snooping)하여 각각의 포트를 통하여 연결된 호스트들에 대한 주소 할당 정보를 'MAC 주소, IP 주소' 형태의 데이터베이스로 구성한 후, 잠재적인 공격자(Hacker)가 될 수 있는 각각의 호스트들로부터 해당 포트로 들어오는 ARP 스푸핑(Spoofing) 패킷이나 IP 스푸핑 패킷을 버림으로써, ARP나 IP 스푸핑을 방지하여 망과 망 내의 시스템을 보호할 수 있는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법에 관한 것이다.The present invention relates to a method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet. Specifically, the present invention relates to a DHCP packet in an environment in which an IP address is allocated using a DHCP (Dynamic Host Configuration Protocol) protocol. Snooping to configure the address allocation information for hosts connected through each port into a database in the form of 'MAC address, IP address' and then the corresponding port from each host that can be a potential attacker. Automatically prevents ARP / IP spoofing in dynamic IP address assignment environment by using DHCP packets to protect ARP or IP spoofing to protect network and system in network by discarding incoming ARP spoofing packet or IP spoofing packet. It is about a method.

인터넷의 사용이 날로 증가함에 따라 해킹의 기술 또한 증가하고 있으며, 현재에 이르러서는 해킹 프로그램 등이 네트워크 상에 산재하는 상황에까지 이르게 됨으로써 이제 전문가가 아닌 일반인도 해커가 될 수 있는 상황에 이르렀다. 이와 같이, DoS, DDoS, Sniffing 또는 Hijacking 과 같은 해킹을 위해 사용되는 근본적인 수단이 ARP 또는 IP 스푸핑(Spoofing)이다. 이 중 ARP(Address Resolution Protocol) 스푸핑은 센더(Sender) 하드웨어 주소와 센더 IP 주소를 조작하는 것으로서, 로컬 네트워크에서 다른 시스템의 IP 주소에 대해서 공격 시스템의 MAC 주소를 ARP Reply 패킷의 소스 정보로 사용하여 로컬 네트워크 내의 다른 라우터나 스위치, 호스트들의 ARP 테이블을 변경함으로써, 공격 시스템의 IP 주소가 아닌 패킷을 공격 시스템의 MAC 주소를 달고 공격 시스템으로 전달되게 만드는 공격 기법이다. 또한, IP 스푸핑은 자신의 소스 IP 를 변경하여 다른 시스템에게 자신이 누군지 모르게 또는 다른 시스템으로 오인하도록 만드는 공격을 위한 수단으로 사용된다.As the use of the Internet is increasing day by day, the technology of hacking is also increasing, and nowadays, hacking programs are scattered on the network, and now people who are not experts can become hackers. As such, the fundamental means used for hacking such as DoS, DDoS, Sniffing or Hijacking is ARP or IP spoofing. Among them, ARP (Address Resolution Protocol) spoofing manipulates sender hardware address and sender IP address, using the attacker's MAC address as the source information of the ARP Reply packet for the IP address of another system on the local network. By changing the ARP table of other routers, switches, and hosts in the local network, an attack technique is used to send a packet that is not the IP address of the attacking system to the attacking system's MAC address. In addition, IP spoofing is used as a means of attack that changes its source IP to cause other systems to know who they are or to misunderstand them.

현재, ARP나 IP 스푸핑 공격으로 인한 피해는 해킹 피해의 대부분을 차지한다고 볼 수 있으며, 누구나 인터넷에서 돌아 다니는 스푸핑 툴을 이용하여 특정 호스트를 공격하거나 망 내에서 돌아다니는 정보를 훔쳐 봄으로써 보안이 유지되어야 할 개인 정보들이 쉽게 도용되는 일이 빈번한 실정이다. 예를 들면, ARP 스푸핑을 통하여 동일한 내부 네트워크에 연결된 다른 호스트에서 행하여지는 여러가지 IP 패킷들을 훔쳐 봄으로써 개인 정보가 유출될 수 있고 심지어 금융정보까지도 노출되는 위험이 있으며, 특정 서버의 관리자 레벨의 ID와 패스워드를 훔쳐 봄으로써 서버 정보를 마음대로 조작하는 것이 가능한 게 현실이다. 더 나아가, IP 스푸핑을 하여 외부 네트워크 상에서 행하여지는 온라인 작업을 훔쳐 볼 경우 더 많은 시스템이 공격에 쉽게 노출되게 된다.Currently, the damage caused by ARP or IP spoofing attacks accounts for most of the hacking damage, and security is maintained by anyone attacking a specific host or stealing information from the network using spoofing tools that roam the Internet. It is often the case that personal information to be stolen is easily stolen. For example, ARP spoofing can steal various IP packets from other hosts connected to the same internal network, potentially exposing personal information and even exposing financial information. The reality is that it is possible to manipulate server information by stealing passwords. Furthermore, IP spoofing can steal online work done on external networks, leaving more systems vulnerable to attack.

이러한 IP 스푸핑을 방지하기 위하여 현재 사용되고 있는 기법으로는, 필터링 기능이 있는 라우터를 사용하여 외부 망으로부터 들어오는 IP 패킷에 대해서 각각의 포트에 연결된 호스트들에 대한 개별적인 IP 주소를 이용하지 않고 로컬 네트워크에 할당된 IP 네트워크 주소와 마스크를 이용하여 필터링하는 방법이 있다. 그러나, 상기 방법은, 필터링에 각 호스트의 개별적인 IP 주소가 아니라 로컬 네트워크 주소를 사용함으로 인해 공격자가 임의의 로컬 네트워크의 다른 주소를 이용한 스푸핑을 할 경우 이를 잡아내지 못할 뿐만 아니라, ARP 스푸핑에 대해서는 전혀 대처하지 못하는 문제점이 있었다.In order to prevent such IP spoofing, the currently used technique is to use a router with filtering function to allocate IP packets from external networks to the local network without using separate IP addresses for hosts connected to each port. There is a method of filtering by using an IP network address and a mask. However, the method uses local network addresses rather than each host's individual IP address for filtering, so that attackers will not be able to catch spoofs using any other address on any local network, as well as no ARP spoofing. There was a problem that could not cope.

또한, 종래에는 ARP 스푸핑에 대해서는 일반적인 방법이 없어서 공격에 그대로 노출될 수밖에 없었으며, 이에 대한 방어수단으로 스위치나 호스트에서 정적으로 ARP 테이블을 구성하여 스푸핑된 ARP 패킷에 의해서 ARP 테이블이 변경되지 않도록 하는 방법이 사용되었다. 그러나, 상기 방법은 망이 큰 곳이나 인터페이스 카드를 빈번히 교체하는 곳에서는 운용자가 직접 ARP 테이블의 엔트리를 매번 수정해야 하므로 현실적으로 사용이 곤란한 문제점이 있었다.In addition, there was no conventional method for ARP spoofing, so it was inevitable to be exposed to an attack. As a defense against this, the ARP table was statically configured in a switch or a host so that the ARP table was not changed by spoofed ARP packets. The method was used. However, the above method has a problem that it is difficult to use it in a place where a network is large or the interface card is frequently replaced because the operator must directly modify the entry of the ARP table every time.

본 발명은 상기와 같은 문제점을 해결하고자 제시된 것으로서, 본 발명의 목적은, DHCP 프로토콜을 사용하여 IP 주소를 할당하는 환경에서 자동적으로 각각의 포트를 통하여 개별 호스트들에게 할당되는 IP 주소를 모니터링하여 ARP나 IP 스푸핑을 자동적으로 차단함으로써 ARP/IP 스푸핑 공격에 의한 피해를 줄일 수 있고, 망 내의 스위치나 라우터 시스템 동작 오류로 인해 잘못된 호스트로 IP 패킷이 전달되는 것을 방지할 수 있으며, ISP와 서비스 사용자 간에 DHCP를 통하여 IP 주소를 할당하도록 되어 있는 계약을 위반하고 임의의 IP 주소를 할당하여 사용하는 것을 차단하여 망 관리를 용이하게 할 수 있도록 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법을 제공하는 것이다. The present invention has been presented to solve the above problems, and an object of the present invention is to monitor an IP address assigned to individual hosts through each port automatically in an environment in which an IP address is assigned using the DHCP protocol. By automatically blocking IP spoofing, you can reduce the damage caused by ARP / IP spoofing attacks, and prevent IP packets from being sent to the wrong host due to a switch or router system operation error in the network. ARP / IP spoofing in dynamic IP address assignment environment using DHCP packets that violate the contract to assign IP address through DHCP and block network allocation by using random IP address. It is to provide an automatic prevention method.

상기의 목적을 달성하기 위하여, 본 발명에 따른 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법은, 스위치 시스템의 각 포트에 연결된 각 호스트에 대하여 DHCP 서버로부터 할당되는 IP 주소를 모니터링하여 각 호스트의 맥(MAC) 주소와 IP 주소를 저장하는 소정의 데이터베이스를 구축하고, 데이터베이스를 이용하여 포트를 통해 전송되는 ARP/IP 패킷 중 맥 주소 및/또는 IP 주소가 변조된 패킷을 필터링함으로써 ARP/IP 스푸핑을 방지하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법으로서, DHCP 서버로 IP 주소의 할당을 요청하기 위하여 호스트로부터 포트로 입력되는 제 1 DHCP 패킷을 탐지하고, 데이터베이스 중 호스트에 대하여 할당된 엔트리의 맥 주소 필드에 호스트의 클라이언트 하드웨어 주소를 기록하고, IP 주소 필드를 초기화하는 제 1 단계; DHCP 서버로부터 호스트의 IP 주소할당을 승인하기 위하여 포트로부터 호스트로 전송되어 나가는 제 2 DHCP 패킷을 탐지하고, 제 2 DHCP 패킷으로부터 호스트에 할당된 IP 주소를 추출하여 IP 주소 필드에 기록하는 제 2 단계; 호스트를 소스로 하여 포트를 통과하는 ARP 및/또는 IP 패킷인 전송패킷을 탐지하고, 전송패킷으로부터 전송패킷을 전송하는 호스트를 특정하기 위한 하드웨어 주소와 호스트의 IP 주소를 추출하는 제 3 단계; 데이터베이스로부터 맥 주소 필드값이 추출된 하드웨어 주소와 동일하고, IP 주소 필드값이 추출된 IP 주소와 동일한 엔트리를 검색하는 제 4 단계; 및 검색된 엔트리가 있으면 전송패킷을 포워딩시키고, 검색된 엔트리가 없으면 전송패킷의 전송을 차단하는 제 5 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, ARP / IP spoofing automatic prevention method in a dynamic IP address assignment environment using a DHCP packet according to the present invention, IP address assigned from the DHCP server for each host connected to each port of the switch system By monitoring the network, a predetermined database is stored to store the MAC address and IP address of each host, and the modified MAC address and / or IP address of the ARP / IP packets transmitted through the port is used. A method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment by using a DHCP packet that prevents ARP / IP spoofing by filtering a first DHCP packet input from a host to a port to request an IP address assignment from a DHCP server. Detect and host the host's client hardware in the Mac Address field of the entry assigned for the host in the database. Recorded, and a first step of initializing the IP address field; A second step of detecting a second DHCP packet transmitted from the port to the host to approve the host's IP address assignment from the DHCP server, extracting the IP address assigned to the host from the second DHCP packet, and writing it in the IP address field ; Detecting a transmission packet that is an ARP and / or an IP packet passing through the port using the host as a source, and extracting a hardware address and an IP address of the host from the transmission packet to specify a host transmitting the transmission packet; A fourth step of searching for an entry whose MAC address field value is the same as the extracted hardware address and whose IP address field value is the same as the extracted IP address; And a fifth step of forwarding the transmission packet if there is a searched entry and blocking transmission of the transport packet if there is no searched entry.

바람직하게는, 전송패킷이 ARP 패킷일 경우, 제 3 단계에서, 하드웨어 주소로 센더 하드웨어 주소를 추출하고, IP 주소로 센더 IP 주소를 추출하도록 하며,Preferably, when the transmission packet is an ARP packet, in the third step, the sender hardware address is extracted from the hardware address and the sender IP address is extracted from the IP address.

전송패킷이 IP 패킷일 경우, 제 3 단계에서, 하드웨어 주소로 전송패킷의 이더넷 헤더로부터 소스 맥 주소를 추출하고, IP 주소로 전송패킷의 IP 헤더로부터 소스 IP 주소를 추출하도록 한다.If the transport packet is an IP packet, in the third step, the source MAC address is extracted from the Ethernet header of the transport packet by the hardware address, and the source IP address is extracted from the IP header of the transport packet by the IP address.

또한, 제 3 단계와 제 4 단계 사이에, 추출된 하드웨어 주소 및 추출된 IP 주소가 유니캐스트가 아니면 전송패킷의 전송을 차단하는 제 3-1 단계를 더 포함하는 것이 바람직하다.In addition, it is preferable to further include a step 3-1 between the third step and the fourth step to block transmission of the transmission packet if the extracted hardware address and the extracted IP address are not unicast.

또한, 상기의 목적을 달성하기 위하여, 본 발명에 따른 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법의 또 다른 실시례는, DHCP 서버로 IP 주소의 할당을 요청하기 위하여 호스트로부터 포트로 입력되는 제 1 DHCP 패킷을 탐지하고, 데이터베이스 중 호스트에 대하여 할당된 엔트리의 맥 주소 필드에 호스트의 클라이언트 하드웨어 주소를 기록하고, IP 주소 필드를 초기화하는 제 1 단계; DHCP 서버로부터 호스트의 IP 주소할당을 승인하기 위하여 포트로부터 호스트로 전송되어 나가는 제 2 DHCP 패킷을 탐지하고, 제 2 DHCP 패킷으로부터 호스트에 할당된 IP 주소를 추출하여 IP 주소 필드에 기록하는 제 2 단계; 호스트를 목적지로 하여 포트를 통과하는 IP 패킷을 탐지하고, IP 패킷으로부터 목적지 맥 주소 및 목적지 IP 주소를 추출하는 제 3 단계; 데이터베이스로부터 맥 주소 필드값이 목적지 맥 주소과 동일하고, IP 주소 필드값이 목적지 IP 주소와 동일한 엔트리를 검색하는 제 4 단계; 및 검색된 엔트리가 있으면 IP 패킷을 포워딩시키고, 검색된 엔트리가 없으면 IP 패킷의 전송을 차단하는 제 5 단계를 포함하는 것을 특징으로 한다.In addition, in order to achieve the above object, another embodiment of the automatic ARP / IP spoofing prevention method in the dynamic IP address assignment environment using the DHCP packet according to the present invention, to request the assignment of the IP address to the DHCP server Detecting a first DHCP packet input from a host to a port, recording a client hardware address of the host in a MAC address field of an entry assigned to the host in a database, and initializing an IP address field; A second step of detecting a second DHCP packet transmitted from the port to the host to approve the host's IP address assignment from the DHCP server, extracting the IP address assigned to the host from the second DHCP packet, and writing it in the IP address field ; Detecting an IP packet passing through the port using the host as a destination, and extracting a destination MAC address and a destination IP address from the IP packet; A fourth step of retrieving from the database an entry whose MAC address field value is equal to the destination MAC address and whose IP address field value is equal to the destination IP address; And forwarding an IP packet if there is a searched entry, and blocking transmission of the IP packet if there is no searched entry.

바람직하게는, 제 3 단계와 제 4 단계 사이에, 목적지 맥 주소 및 목적지 IP 주소가 유니캐스트가 아니면 포워딩시키는 제 3-1 단계를 더 포함하도록 한다.Preferably, the third step and the fourth step further includes a step 3-1 of forwarding the destination MAC address and the destination IP address if they are not unicast.

또한, 상기 각 실시례에서, 제 1 단계가, 호스트로부터 포트로 입력되는 제 1 DHCP 패킷을 탐지하는 제 1-1 단계; 제 1 DHCP 패킷으로부터 호스트의 클라이언트 하드웨어 주소와 제 1 DHCP 패킷의 메시지 타입을 추출하는 제 1-2 단계; 메시지 타입이 디스커버(DISCOVER)이면, 데이터베이스 중 맥 주소 필드값이 클라이언트 하드웨어 주소와 동일한 엔트리를 검색하는 제 1-3 단계; 검색된 엔트리가 있으면, 엔트리의 맥 주소 필드에 클라이언트 하드웨어 주소를, IP 주소 필드에 '0.0.0.0'을 기록하는 제 1-4 단계; 및 검색된 엔트리가 없으면, 새로운 엔트리의 맥 주소 필드에 클라이언트 하드웨어 주소를, IP 주소 필드에 '0.0.0.0'을 기록하는 제 1-5 단계를 포함하고, 1-4 단계 및 1-5 단계가 선택적으로 수행되도록 하며,Further, in each of the above embodiments, the first step may include: a first step of detecting a first DHCP packet input from a host to a port; Extracting the client hardware address of the host and the message type of the first DHCP packet from the first DHCP packet; If the message type is DISCOVER, steps 1-3 of searching for an entry in the database whose MAC address field value is the same as the client hardware address; 1-4, if there is an entry found, writing the client hardware address in the MAC address field of the entry and '0.0.0.0' in the IP address field; And if there is no entry found, steps 1-5 of writing the client hardware address in the MAC address field of the new entry and '0.0.0.0' in the IP address field, wherein steps 1-4 and 1-5 are optional. To be performed as

이때, 데이터베이스가 각 엔트리 중 필요없는 엔트리의 삭제시기를 기록하는 에이징 타임 필드를 더 구비하고, 1-4 단계 및 1-5 단계에서, 에이징 타임 필드에 소정의 설정값인 최대 대기시간을 기록하도록 하고,At this time, the database further includes an aging time field for recording the time of deletion of the unnecessary entries of each entry, and in steps 1-4 and 1-5, to record the maximum waiting time which is a predetermined value in the aging time field. and,

아울러, 제 2 단계가, 포트로부터 호스트로 전송되어 나가는 제 2 DHCP 패킷을 탐지하는 제 2-1 단계; 제 2 DHCP 패킷으로부터 호스트의 클라이언트 하드웨어 주소, 할당된 IP 주소 및 제 2 DHCP 패킷의 메시지 타입을 추출하는 제 2-2 단계; 데이터베이스 중 맥 주소 필드값이 클라이언트 하드웨어 주소와 동일한 엔트리를 검색하는 제 2-3 단계; 검색된 엔트리가 존재하고 메시지 타입이 액크(ACK)이면, 엔트리의 맥 주소 필드에 클라이언트 하드웨어 주소를, IP 주소 필드에 할당된 IP 주소를 기록하는 제 2-4 단계; 및 검색된 엔트리가 존재하고 메시지 타입이 낵크(NACK)이면, 검색된 엔트리를 삭제하는 제 2-5 단계를 포함하고, 2-4 단계 및 2-5 단계가 선택적으로 수행되도록 하며,In addition, the second step, the second step of detecting a second DHCP packet transmitted from the port to the host; Extracting the client hardware address of the host, the assigned IP address and the message type of the second DHCP packet from the second DHCP packet; Step 2-3 of searching for an entry in the database whose MAC address field value is the same as the client hardware address; If the retrieved entry exists and the message type is ACK, steps 2-4 of recording the client hardware address in the MAC address field of the entry and the IP address assigned in the IP address field; And if the searched entry exists and the message type is NACK, steps 2-5 of deleting the searched entry, and steps 2-4 and 2-5 are selectively performed.

이때, 데이터베이스가 각 엔트리 중 필요없는 엔트리의 삭제시기를 기록하는 에이징 타임 필드를 더 구비하고, 2-2 단계에서, 제 2 DHCP 패킷으로부터 IP 주소 리스타임을 추출하고, 2-4 단계에서, 에이징 타임 필드에 IP 주소 리스타임을 기록하도록 한다.At this time, the database further includes an aging time field for recording the deletion time of the unnecessary entries of each entry, in step 2-2, extract the IP address re-list from the second DHCP packet, and in step 2-4 Record the IP address rename in the time field.

또한, 에이징 타임 필드값을 소정 단위로 감소시키고, 에이징 타임 필드값이 '0'이 되면 해당 엔트리를 삭제하는 제 6 단계를 더 포함하고, 제 6 단계는 각 단계와 순서에 무관하게 수행되도록 한다.The method may further include a sixth step of reducing the aging time field value by a predetermined unit and deleting the corresponding entry when the aging time field value becomes '0', and the sixth step may be performed irrespective of each step and order. .

이하에서는, 첨부한 도면을 참조하여 본 발명의 장점, 특징 및 바람직한 실시례에 대해 상세히 설명하도록 한다.Hereinafter, with reference to the accompanying drawings will be described in detail the advantages, features and preferred embodiments of the present invention.

1. DHCP 패킷 형식DHCP packet format

DHCP 패킷 형식은 도 1 에 도시되어 있다. DHCP 패킷은 DHCP 클라이언트에게 IP 주소를 할당하기 위하여 클라이언트와 서버 간에 주고받는 패킷으로서, 각 필드에 대하여 설명하면 이하와 같다.The DHCP packet format is shown in FIG. The DHCP packet is a packet exchanged between the client and the server in order to allocate an IP address to the DHCP client. Each field will be described below.

먼저, OP 코드는 '1'이면 'Request'를, '2'이면 'Reply'를 나타내며, 하드웨어 타입값이 '1'이면 'Ethernet', '2'이면 'Experimental Ethernet'을 나타낸다. 하드웨어 주소 길이는 하드웨어의 주소 영역으로 16 바이트가 할당되어 있으며, 실제로 하드웨어 타입에 따른 주소의 길이를 나타낸다. 홉 카운트(Hop Count)는 Relay Agent에 의해 사용된다.First, the OP code indicates 'Request' if '1', 'Reply' for '2', 'Ethernet' for hardware type value '1', and 'Experimental Ethernet' for '2'. The hardware address length is allocated to the hardware address area of 16 bytes, and actually represents the length of the address according to the hardware type. Hop count is used by the relay agent.

트랜잭션 ID는 클라이언트와 서버 사이에 메시지와 응답의 연관성을 나타내는 값으로서 클라이언트에서 임의로 선택되며, Number of Seconds는 클라이언트에서 IP 주소 획득(Acquisition) 또는 갱신(Renew) 프로세스를 시작한 후 현재까지 걸린 시간을 나타낸다.The transaction ID is a value that is arbitrarily chosen by the client as a value indicating the association of the message and the response between the client and the server. The Number of Seconds represents the time taken since the client started the process of acquiring or renewing an IP address. .

또한, 클라이언트 IP 주소는 클라이언트의 IP 주소로서 클라이언트가 서버에게 자신의 IP 주소가 밸리드(Valid)함을 나타내기 위해 사용되며, Your IP 주소는 서버가 클라이언트에게 클라이언트 주소를 알려 주기 위해 사용된다. 서버 IP 주소는 서버가 클라이언트에게 클라이언트가 Configuration 과정에서 사용할 다음 서버의 주소를 나타내며, 이때 다음 서버의 이름은 서버 호스트 이름(Server Host Name) 필드에 기록된다. 게이트웨이 IP 주소는 Relay Agent의 IP 주소를 나타내는 것으로 Relay Agent에서 DHCP 패킷을 받아들인 인터페이스의 주소를 기록하게 되며, 부트 파일 이름(Boot File Name)은 클라이언트가 다음 서버에 요구해야 할 파일의 이름을 나타낸다.In addition, the client IP address is the client's IP address, which is used by the client to indicate to the server that its IP address is valid, and Your IP address is used by the server to inform the client of the client's address. The server IP address indicates to the client the address of the next server that the client will use in the configuration process. The name of the next server is recorded in the Server Host Name field. The gateway IP address indicates the IP address of the relay agent. The gateway IP address records the address of the interface that received the DHCP packet from the relay agent. The boot file name indicates the name of the file that the client should request to the next server. .

옵션으로는 'DHCP 메시지 타입(코드 53)', 'Requested IP Address(코드 50)', 'IP 주소 리스타임(IP address lease time, 코드 51)' 등이 있다. Options include 'DHCP message type (code 53)', 'Requested IP Address (code 50)' and 'IP address lease time (code 51)'.

또한, 플래그(Flags)에 대하여는 본 발명이 속한 기술분야의 통상의 전문가라면, RFC1542를 참조하여 쉽게 알 수 있는 것이므로 상세한 설명은 생략하도록 한다.In addition, the flags (flags) can be easily understood by those skilled in the art to which the present invention pertains, and thus, detailed descriptions thereof will be omitted.

DHCP 클라이언트와 서버 간에 주고받는 각각의 메시지 타입은 표 1 과 같다.Table 1 shows each message type exchanged between DHCP client and server.

value 메시지 타입Message type 주소 할당/해제 여부Address assignment / release 1One DHCPDISCOVERDHCPDISCOVER 해제 (새로운 IP 주소 요구)Off (require new IP address) 22 DHCPOFFERDHCPOFFER 해제 (새로운 IP 주소 제안)Off (suggest new IP address) 33 DHCPREQUESTDHCPREQUEST 해제 또는 유지 (새로운 IP 주소 요구 또는 Renew)Release or Retain (Require New IP Address or Renew) 44 DHCPDECLINEDHCPDECLINE 해제 (할당된 주소 사용 거부)Off (deny to use assigned address) 55 DHCPACKDHCPACK 할당 (호스트가 사용할 수 있는 주소 할당 과정 완료)Assignment (Completes the process of assigning addresses available to the host) 66 DHCPNACKDHCPNACK 해제 (호스트가 요구한 주소 사용 허가 거부)Release (deny permission to use host requested) 77 DHCPRELEASEDHCPRELEASE 해제 (호스트가 사용 중인 주소 자발적으로 해제)Release (voluntarily release the address the host is using) 88 DHCPINFORMDHCPINFORM 해당 없음Not applicable 99 DHCPFORCERENEWDHCPFORCERENEW 해당 없음Not applicable

2. DHCP 처리과정2. DHCP Process

DHCP를 통해 클라이언트인 호스트에 IP 주소를 할당하기 위하여 클라이언트와 서버 간에 일정한 패킷을 주고받게 되는데, 이때 클라이언트의 상태 변화는 도 2 에 도시되어 있다. 도 2 는 RFC2131 및 RFC3203을 기초로 한 것으로서, 도 2 에 도시된 내용은 본 발명에 속한 기술분야의 통상의 전문가라면 누구나 쉽게 파악할 수 있는 것이므로 상세한 설명은 생략하도록 한다.In order to assign an IP address to a host which is a client through DHCP, a certain packet is exchanged between the client and the server. The state change of the client is shown in FIG. FIG. 2 is based on RFC2131 and RFC3203, and the contents shown in FIG. 2 are easily understood by those skilled in the art, and thus detailed descriptions thereof will be omitted.

DHCP 클라이언트가 IP 주소를 할당받는 과정은 새로운 IP 주소를 할당받는 과정과 이미 할당받은 IP 주소를 갱신(Renew)하는 과정으로 나눌 수 있으며, 이는 도 3 에 도시되어 있다. 도 3a 는 클라이언트가 새로운 IP 주소를 할당받는 과정을 나타내며, 도 3b 는 클라이언트가 이미 할당받은 IP 주소를 갱신하는 과정을 나타낸다.The process of assigning an IP address to a DHCP client may be divided into a process of allocating a new IP address and a process of renewing an already allocated IP address, which is illustrated in FIG. 3. 3A illustrates a process in which a client is assigned a new IP address, and FIG. 3B illustrates a process in which the client renews an IP address that is already assigned.

도 3a 에 도시한 바와 같이, 클라이언트가 새로운 IP 주소를 받는 경우에는 DHCP 클라이언트와 서버 사이에 DISCOVER, OFFER, REQUEST, ACK 과정을 거치게 된다. 클라이언트는 DHCP ACK를 받은 후에 할당받은 IP 주소를 사용할 수 있게 된다. 또한, 클라이언트가 IP를 할당받은 후 새로운 IP 주소를 필요로 할 때는 DHCP DISCOVER부터 새로 시작하게 된다. 한편, 이미 할당받은 IP 주소를 갱신 (Renew)하는 경우에는, 도 3b 에 도시한 바와 같이, REQUEST와 ACK 과정만을 거치게 된다.As shown in FIG. 3A, when the client receives a new IP address, the client goes through a DISCOVER, OFFER, REQUEST, and ACK process between the DHCP client and the server. After receiving the DHCP ACK, the client can use the assigned IP address. In addition, if a client needs a new IP address after it is assigned an IP address, it will start over from DHCP DISCOVER. On the other hand, in case of renewing the already allocated IP address, as shown in FIG. 3B, only the REQUEST and ACK processes are performed.

3. 시스템 구성3. System Configuration

DHCP를 이용하여 각 호스트에 IP 주소를 할당하는 시스템의 구성은 도 4 에 도시되어 있다. 도 4 는 본 발명에 따른 DHCP 모니터링을 위한 시스템 구성도이다. 도 4 에 도시한 바와 같이, L2 또는 L3 스위치인 스위치 A의 업링크(Uplink) 포트에는 네트워크가 연결되며, 다운링크(Downlink) 포트에는 각각의 호스트(호스트 A1, A2, A3,..)와 또 다른 스위치 B가 연결된다. 또한, L2 스위치인 스위치 B의 다운링크 포트에는 또 다른 호스트(B1, B2,..)가 연결된다. 각각의 호스트 (A1, A2, A3, B1, B2..)는 DHCP 프로토콜을 수행하여 스위치 A에 연결된 DHCP 서버로부터 IP 주소를 할당받게 된다.The configuration of a system for assigning IP addresses to each host using DHCP is shown in FIG. 4 is a system configuration diagram for DHCP monitoring according to the present invention. As shown in FIG. 4, a network is connected to an uplink port of switch A, which is an L2 or L3 switch, and each host (hosts A1, A2, A3, ..) is connected to a downlink port. Another switch B is connected. In addition, another host B1, B2, ... is connected to the downlink port of the switch B, which is an L2 switch. Each host (A1, A2, A3, B1, B2 ..) performs the DHCP protocol and is assigned an IP address from a DHCP server connected to switch A.

이때, 스위치 A에 직접 연결된 호스트 A1, A2, A3에 대하여, 스위치 A의 다운링크 포트를 통과하는 DHCP 패킷들을 훔쳐봄(스누핑)으로써 각 포트를 통하여 할당된 IP 주소를 알 수 있으며, 이를 MAC 주소와 함께 관리할 경우 어떤 MAC 주소를 가진 호스트가 어떤 IP 주소를 할당받았는지를 알 수 있게 된다. 이러한 방법으로 각 호스트에 대하여 데이터베이스(DHCP 모니터링 데이터베이스)를 구축할 수 있으며, 각 포트로부터 입력되는 소스/목적지 IP 주소를 구축된 데이터베이스와 비교 확인함으로써 스푸핑된 ARP/IP 패킷을 걸러낼 수 있게 된다. DHCP 모니터링 데이터베이스의 각 테이블은 각 호스트의 MAC 주소, 할당된 IP 주소, 바운드 및 에이징 타임 필드로 이루어진다.At this time, for hosts A1, A2, and A3 directly connected to Switch A, the IP address assigned through each port can be known by snooping DHCP packets passing through the downlink port of Switch A. When managed with, you can see which IP address the host with which MAC address is assigned to. In this way, a database (DHCP monitoring database) can be established for each host, and the spoofed ARP / IP packets can be filtered out by comparing the source / destination IP address input from each port with the established database. Each table in the DHCP monitoring database consists of each host's MAC address, assigned IP address, bound and aging time fields.

보다 상세하게는, 호스트 방향의 포트들로부터 입력되는 패킷이 ARP 패킷일 경우에는 ARP 패킷 내의 센더(Sender) 하드웨어 주소와 센더 IP 주소가 유니캐스트 (Unicast) 주소이면, 이를 DHCP 모니터링 데이터베이스에서 검색하여 존재하는 주소값이면 해당 패킷을 포워딩시키고 존재하지 않는 주소값이면 하드웨어 주소나 IP 주소가 스푸핑된 것으로 간주하여 해당 패킷을 버린다. 또한, 상기 입력되는 패킷이 IP 패킷일 경우에는 IP 패킷 내의 소스 MAC 주소와 소스 IP 주소가 유니캐스트 주소이면, 이를 DHCP 모니터링 데이터베이스에서 검색하여 존재하는 주소값이면 해당 패킷을 포워딩시키고 존재하지 않는 주소값이면 MAC이나 IP 주소가 스푸핑된 것으로 간주하여 해당 패킷을 버린다. 마찬가지로, 각각의 호스트 방향의 포트에서 호스트쪽으로 나가는 IP 패킷에 대해서는 목적지 MAC/IP 주소를 이용하여 동일하게 처리한다.More specifically, when the packet input from the ports in the host direction is an ARP packet, if the sender hardware address and the sender IP address in the ARP packet are unicast addresses, they are retrieved from the DHCP monitoring database. If it is an address value, forward the packet. If the address value does not exist, the packet is regarded as a spoofed hardware address or an IP address. In addition, when the input packet is an IP packet, if the source MAC address and the source IP address in the IP packet are unicast addresses, the packet is forwarded to the DHCP monitoring database if the address is present. Then discard the packet, considering the MAC or IP address as spoofed. Similarly, IP packets going out to the host from ports in each host direction are processed identically using the destination MAC / IP address.

이와 같이, 스푸핑된 패킷이 포워딩되는 것을 차단할 수 있게 되므로 각 시스템이나 망을 공격으로부터 보호할 수 있게 된다. 또한, DHCP로 IP를 할당하는 망 내에서 호스트 시스템 사용자가 임의로 IP 주소를 할당하여 사용할 경우, 해당 IP 주소를 소스 IP 주소로 가진 패킷은 전송되지 않고 버려지게 되므로, 임의의 사용자가 임의로 고정 IP 주소를 설정하여 사용함으로써 초래될 혼란으로부터 망을 보호하고 관리의 효율성을 기할 수 있다.As such, the spoofed packet can be prevented from being forwarded, thereby protecting each system or network from attack. In addition, if a host system user randomly assigns an IP address and uses it in a network that allocates IP with DHCP, a packet having the corresponding IP address as a source IP address will be discarded without being transmitted, and thus a random user may use a fixed IP address. It can protect the network from the confusion caused by setting up and using it and increase the efficiency of management.

한편, 스위치 B를 통해 연결된 호스트(B1, B2,..)에 대하여, 만일 스위치 A에서는 DHCP 모니터링이 수행되지만 스위치 B에서는 DHCP 모니터링을 수행되지 않을 경우, 스위치 B 내에서는 스푸핑(Spoofing)이 가능해지게 된다. 그러나, 이 경우에도 스위치 A에서 DHCP 모니터링을 수행하고 있으므로 스푸핑된 IP 패킷들을 걸러낼 수 있게 된다. 물론, 스위치 B에서도 DHCP 모니터링을 수행한다면 호스트 B1과 B2에서의 ARP/IP 스푸핑을 방지할 수 있으며, 호스트가 직접 연결된 모든 스위치 시스템에서 DHCP 모니터링을 통한 IP 패킷 필터링을 수행한다면 ARP나 IP 스푸핑을 완전히 방지할 수 있을 것이다.On the other hand, for hosts (B1, B2, ..) connected through switch B, if DHCP monitoring is performed on switch A but DHCP monitoring is not performed on switch B, spoofing is enabled in switch B. do. However, even in this case, since switch A is performing DHCP monitoring, spoofed IP packets can be filtered out. Of course, if you perform DHCP monitoring on switch B, you can prevent ARP / IP spoofing on hosts B1 and B2, and if you perform IP packet filtering through DHCP monitoring on all switch systems to which the host is directly connected, ARP or IP spoofing is completely disabled. Will be prevented.

또한, DHCP 모니터링을 통한 IP 패킷 필터링은 호스트 방향의 포트 쪽에서만 수행되는 것은 아니며, DHCP 서버 방향의 링크가 업링크(Uplink)와 동일한 포트이면 업링크에서도 수행될 수 있다. 예를 들어, L2 스위치의 서버 방향과 동일한 업링크에서 DHCP 모니터링을 통한 필터링을 할 수 있으며, 업링크의 경우에는 해당 포트로 들어오는 IP 패킷에 대해서는 목적지 MAC/IP 주소를 가지고 DHCP 모니터링을 검색하고, 나가는 IP 패킷에 대해서는 소스 MAC/IP 주소를 가지고 DHCP 모니터링을 검색하도록 한다. 한편, DHCP 패킷은 브로드캐스트(Broadcast) 패킷이기 때문에 어느 포트가 다운링크이고 업링크인지를 DHCP 패킷의 흐름만을 보고 자동적으로 알아 낼 수는 없다. 따라서, 검색하는 MAC/IP 주소가 소스인지 목적지인지가 바뀌게 되므로 링크의 특성을 규정하는 운용자가 이를 설정하도록 한다.In addition, IP packet filtering through DHCP monitoring is not performed only on the port side in the host direction, and may be performed on the uplink if the link in the DHCP server direction is the same port as the uplink. For example, filtering can be done through DHCP monitoring on the same uplink as the server direction of the L2 switch. For uplinks, DHCP monitoring is performed with the destination MAC / IP address for IP packets entering the port. For outgoing IP packets, look for DHCP monitoring with the source MAC / IP address. On the other hand, since the DHCP packet is a broadcast packet, it is not possible to automatically determine which port is the downlink and the uplink based on the flow of the DHCP packet. Therefore, the MAC / IP address to be searched is changed whether it is a source or a destination, so that the operator who defines the characteristics of the link sets it.

한편, 상기한 바와 같은 DHCP 모니터링과 패킷 필터링 방법은 소프트웨어만으로 구현하거나 하드웨어 칩에 이를 ASIC화하여 구현할 수도 있으며, 소프트웨어와 하드웨어 칩을 혼용하여 구현할 수도 있다. 예를 들어, 소프트웨어를 통해 DHCP 모니터링 데이터베이스를 구축하고, 패킷 필터링은 하드웨어 칩을 통해 수행하도록 할 수 있다.On the other hand, the DHCP monitoring and packet filtering method as described above may be implemented in software only, or may be implemented by ASIC on a hardware chip, may be implemented by using a combination of software and hardware chip. For example, you can build a DHCP monitoring database through software, and packet filtering can be done through a hardware chip.

이하에서는, 각 포트를 통과하는 DHCP 패킷을 모니터링하여 DHCP 모니터링 데이터베이스 구축하는 과정과 구축된 데이터베이스를 이용하여 스푸핑된 ARP 또는 IP 패킷을 핑터링하는 과정에 대하여 설명하도록 한다.Hereinafter, a process of building a DHCP monitoring database by monitoring DHCP packets passing through each port and a process of puttering spoofed ARP or IP packets using the established database will be described.

4. DHCP 모니터링4. DHCP monitoring

DHCP 모니터링은 어떤 포트(링크)에 연결된 호스트들에게 할당된 IP 주소들을 검출하는 것으로, 그 결과 구축되는 DHCP 모니터링 데이터베이스를 통해 패킷 필터링을 수행할 수 있게 된다. 다시 말해서, 하나의 포트를 가진 xDSL 모뎀이나 여러 개의 포트를 가진 xDSLAM, 스위치, 라우터 시스템과 같은 망 장비에서 전송되는 DHCP 패킷을 훔쳐보면서(스누핑) 각각의 호스트에 할당되는 IP 주소를 알아내고, '호스트의 하드웨어 주소, 할당받은 IP 주소'를 테이블 기반의 DHCP 모니터링 데이터베이스로 구축하여 관리한다. 이렇게 구축된 DHCP 모니터링 데이터베이스는 스푸핑(Spoofing)된 ARP/IP 패킷을 필터링하는데 사용된다.DHCP monitoring detects the IP addresses assigned to hosts connected to a port (link), and as a result, packet filtering can be performed through the established DHCP monitoring database. In other words, it looks at the IP address assigned to each host by sniffing (snooping) DHCP packets from a single port xDSL modem or network device such as multiple ports xDSLAM, switch, or router system. Host hardware address and assigned IP address' are built and managed as a table-based DHCP monitoring database. The DHCP monitoring database thus constructed is used to filter spoofed ARP / IP packets.

특정 포트에 연결된 호스트들이 DHCP 프로토콜에 의해서 IP 주소가 할당되는 것을 검출하는 과정은, 각각의 MAC 주소를 가진 호스트들에 대한 DHCP 프로토콜 상태를 모니터링하면서 IP 주소가 할당되는 과정을 추적함으로 이루어진다.Detecting IP addresses assigned by DHCP protocols for hosts connected to a particular port consists of tracking the IP address assignments while monitoring the DHCP protocol status for hosts with each MAC address.

DHCP 모니터링과 이를 통한 DHCP 모니터링 데이터베이스를 구축 과정에 대하여는 도 5a 내지 도 5c 에 도시되어 있다. 도 5a 는 스위치 중 호스트 방향의 각 포트로 각각의 호스트로부터 입력되는 패킷을 모니터링(Ingress 패킷 모니터링)하는 과정을 도시한 도이고, 도 5b 는 호스트 방향의 각 포트로부터 각각의 호스트로 나가는 패킷을 모니터링(Egress 패킷 모니터링)하는 과정을 도시한 도이며, 도 5c 는 DHCP 모니터링 데이터베이스의 각 테이블 엔트리에 대한 에이징을 나타낸 도이다. 각각에 대하여 도 5a 내지 도 5c 를 참조하여 상세히 설명하면 이하와 같다.DHCP monitoring and the process of building the DHCP monitoring database through the same are shown in Figures 5a to 5c. 5A is a diagram illustrating a process of monitoring a packet input from each host to each port in a host direction of the switch (Ingress packet monitoring), and FIG. 5B is a diagram of a packet going to each host from each port in a host direction. (Egress packet monitoring) is a diagram showing a process, and FIG. 5C is a diagram illustrating aging of each table entry in the DHCP monitoring database. Each of them will be described below in detail with reference to FIGS. 5A to 5C.

(1) 인그레스 DHCP 패킷 모니터링(1) Ingress DHCP packet monitoring

DHCP 모니터링 시스템은 각 호스트로부터 각 포트로 입력되는 DHCP 패킷을 탐지하여, 검출된 DHCP 패킷이 있으면 이를 파싱한 후 해당 패킷으로부터 클라이언트 하드웨어 주소와 DHCP 메시지 타입을 추출한다(ST500, ST505). 다음으로, DHCP 모니터링 데이터베이스의 테이블을 클라이언트 하드웨어 주소로 검색하여, 매치되는 엔트리가 있으면 DHCP 메시지 타입을 판단하도록 한다(ST510 내지 ST520). DHCP 모니터링 데이터베이스 검색의 키값인 클라이언트 하드웨어 주소는 MAC 프레임 내의 소스 MAC 주소와 동일하다.The DHCP monitoring system detects a DHCP packet input to each port from each host, parses the detected DHCP packet if there is, and extracts a client hardware address and a DHCP message type from the packet (ST500, ST505). Next, the table in the DHCP monitoring database is searched by the client hardware address to determine the DHCP message type if there is a match (ST510 to ST520). The client hardware address, the key of the DHCP monitoring database lookup, is the same as the source MAC address in the MAC frame.

만일, 메시지 타입이 DISCOVER일 경우, 매치된 엔트리의 각 필드값을, MAC 주소는 클라이언트 하드웨어 주소로, IP 주소는 0.0.0.0으로, 에이징 타임은 'MAX_WATING_TIME'으로, 그리고 바운드(BOUND)='0'으로 갱신하도록 한다(ST525).If the message type is DISCOVER, the value of each field of the matched entry, MAC address is the client hardware address, IP address is 0.0.0.0, the aging time is' MAX_WATING_TIME ', and the bound (BOUND) =' 0 'To be updated (ST525).

상기한 바와 같이, 각 호스트들은 DHCP 서버로 DHCP 프로토콜 수행 상태에 따라 DHCP DISCOVER, DHCP REQUEST, DHCP DECLINE, DHCP RELEASE를 송신하고, DHCP 서버로부터는 DHCP OFFER, DHCP ACK, DHCP NAK 등의 패킷이 각 호스트들로 전달된다. 이때, 특정 MAC 주소로부터 DHCP DISCOVER가 송신되었다는 것은 그 MAC 주소를 가진 호스트에서 DHCP 프로토콜을 통하여 IP 주소 할당과정을 시작했다는 것을 나타내므로, DHCP 모니터링 시스템에 의해서 해당 MAC 주소를 가진 호스트가 IP 주소 할당을 요구하였음을 DHCP 모니터링 테이블에 기록해 두도록 한다. 한편, 호스트로부터 DHCP 요구만 나가고 서버로부터 응답을 못 받는 경우, DHCP 모니터링 테이블 중 해당 호스트에 대한 엔트리는 필요없이 공간만 점유하게 되므로, 이를 방지하기 위하여 'MAX_WAITING_TIME'을 정의하여 이를 에이징 타임으로 사용하도록 한다.As described above, each host transmits a DHCP DISCOVER, a DHCP REQUEST, a DHCP DECLINE, a DHCP RELEASE to a DHCP server according to a DHCP protocol execution state, and a packet such as a DHCP OFFER, a DHCP ACK, a DHCP NAK, or the like is transmitted from the DHCP server. Is delivered to. In this case, sending a DHCP DISCOVER from a specific MAC address indicates that the host with that MAC address has started the IP address allocation process through the DHCP protocol. Make a note of the request in the DHCP monitoring table. On the other hand, if only a DHCP request is sent from a host and a response is not received from the server, the entry for the host in the DHCP monitoring table is occupied only by space, so to prevent this, define 'MAX_WAITING_TIME' and use it as aging time. do.

DHCP 요구를 보낸 호스트에 대한 MAC 주소를 DHCP 패킷의 클라이언트 하드웨어 주소로 미리 기록하는 것은, DHCP 패킷 자체가 브로드캐스트(Broadcast)로 전송되므로 서버로부터 응답이 왔을 때 응답 패킷이 해당 포트에서 나간 요청(Request) 패킷을 위한 것인지 아닌지를 구분할 수 있도록 하기 위함이다.The pre-recording of the MAC address for the host that sent the DHCP request as the client hardware address of the DHCP packet means that the DHCP packet itself is sent as a broadcast, so when a response is received from the server, a response packet is sent from that port. This is to distinguish whether or not it is for a packet.

한편, DHCP 메시지 타입이 RELEASE나 DECLINE일 경우 매치된 엔트리를 삭제하도록 한다(ST530 내지 ST535). DHCP DECLINE 패킷은 서버로부터 할당받은 IP 주소에 대해서 호스트가 ARP를 통하여 누군가 사용하고 있는지를 검사하여, 누군가가 이미 사용하고 있다면 이를 DHCP 서버로 알리는데 사용된다. 이때 호스트 자신은 DHCP DISCOVER부터 다시 시작하여 새로운 IP를 할당받으려 할 것이다. 또한, DHCP RELEASE는 이미 할당받아서 사용하고 있는 IP 주소를 더 이상 사용하지 않지 않을 때 DHCP 서버에게 할당 해제를 요구하는데 사용된다. 따라서, DHCP 모니터링 시스템에서는 DHCP DECLINE이나 DHCP RELEASE를 검출하면 DHCP 패킷의 클라이언트 하드웨어 주소 필드의 주소를 가진 호스트에 대한 엔트리는 더이상 필요없으므로 DHCP 모니터링 테이블에서 지우도록 한다.Meanwhile, if the DHCP message type is RELEASE or DECLINE, the matched entry is deleted (ST530 to ST535). The DHCP DECLINE packet is used to check if a host is using someone through ARP for an IP address assigned by the server and to tell the DHCP server if someone is already using it. At this time, the host itself will try to get a new IP address starting from DHCP DISCOVER. DHCP RELEASE is also used to request the DHCP server to deallocate when it is no longer using an IP address that has already been assigned and used. Therefore, when the DHCP monitoring system detects a DHCP DECLINE or a DHCP RELEASE, the entry for the host having the address of the client hardware address field of the DHCP packet is no longer needed, and therefore, is deleted from the DHCP monitoring table.

또한, ST515에서 매치되는 엔트리가 없는 경우에도 메시지 타임을 판단하여 메시지 타입이 DISCOVER이면, 빈 엔트리에 해당 호스트에 대한 정보를 기록하여 새로운 엔트리를 생성하도록 한다(ST540, ST545).In addition, even if there is no match in ST515, if the message time is determined and the message type is DISCOVER, information about the host is recorded in the empty entry to generate a new entry (ST540 and ST545).

(2) 이그레스 DHCP 패킷 모니터링(2) egress DHCP packet monitoring

마찬가지로, DHCP 모니터링 시스템은 각 포트로부터 각 호스트로 나가는 DHCP 패킷을 탐지하여 검출된 DHCP 패킷이 있으면 이를 파싱한 후, 클라이언트 하드웨어 주소, Your IP 주소, DHCP 메시지 타입 및 IP 주소 리스타임을 추출한다 (ST550, ST555). 다음으로, DHCP 모니터링 데이터베이스의 테이블을 클라이언트 하드웨어 주소로 검색하여 매치된 엔트리를 추출하고, DHCP 메시지의 타입을 판단하도록 한다(ST560 내지 ST570).Similarly, the DHCP monitoring system detects DHCP packets going out from each port to each host, parses any detected DHCP packets, and then extracts the client hardware address, Your IP address, DHCP message type, and IP address re-list (ST550). , ST555). Next, the table of the DHCP monitoring database is searched by the client hardware address to extract the matched entry, and the type of the DHCP message is determined (ST560 to ST570).

이때, DHCP 메시지 타입이 ACK라면 해당 포트에 연결된 호스트에 대하여 IP 주소가 할당된 것을 나타내므로, 매치된 엔트리의 각 필드값을 갱신하도록 한다 (ST575). 구체적으로, MAC 주소는 클라이언트 하드웨어 주소로, IP 주소는 Your IP 주소로, 에이징 타임은 IP 주소 리스타임으로, 그리고 바운드(BOUND)는 '1'로 갱신하도록 한다. 한편, DHCP 메시지 타입이 NACK인 경우에는 매치된 엔트리를 삭제하도록 한다(ST580, ST585).At this time, if the DHCP message type is ACK, it indicates that an IP address is allocated to the host connected to the corresponding port, so that each field value of the matched entry is updated (ST575). Specifically, MAC addresses are updated to client hardware addresses, IP addresses to Your IP addresses, aging times to IP address leases, and BOUND to '1'. If the DHCP message type is NACK, the matched entry is deleted (ST580 and ST585).

상기의 과정을 통해 구축된 DHCP 모니터링 테이블의 일례는 표 2 와 같다.An example of the DHCP monitoring table constructed through the above process is shown in Table 2.

번호number H/W 주소H / W address 할당된 IP 주소Assigned IP address Aging TimeAging Time 1One 12:34:56:00:00:0112: 34: 56: 00: 00: 01 200.1.1.2200.1.1.2 7200 Secs (Lease Time Aging)7200 Secs (Lease Time Aging) 22 12:34:56:00:00:0B12: 34: 56: 00: 00: 0B 200.1.1.5200.1.1.5 732 Secs (Lease Time Aging)732 Secs (Lease Time Aging) 33 12:34:56:00:00:0C12: 34: 56: 00: 00: 0C 200.1.1.33200.1.1.33 4733 Secs (Lease Time Aging)4733 Secs (Lease Time Aging) 44 12:34:56:00:20:2212: 34: 56: 00: 20: 22 16 Secs (Waiting Time Aging)16 Secs (Waiting Time Aging) 55 12:34:56:00:30:0112: 34: 56: 00: 30: 01 27 Secs (Waiting Time Aging)27 Secs (Waiting Time Aging)

표 2 에서 호스트 1, 2, 3은 서버로부터 ACK 패킷을 수신하여 IP 주소를 할당받은 경우로서 에이징 타임으로 IP 주소 리스타임이 설정되어 있다. 또한, 호스트 4, 5는 서버로 DISCOVER 패킷을 전송하였지만 아직 ACK 또는 NACK 패킷을 수신하지 못하여 IP 주소를 할당받지 못한 경우로서 에이징 타임으로 'MAX_ WAITING_TIME'이 설정되어 있다.In Table 2, hosts 1, 2, and 3 receive an ACK packet from the server and are assigned an IP address. The IP address lease time is set as the aging time. In addition, hosts 4 and 5 transmit a DISCOVER packet to the server, but have not received an ACK or NACK packet and have not been assigned an IP address. As a result, 'MAX_ WAITING_TIME' is set as an aging time.

이와 같이 구성된 DHCP 모니터링 데이터베이스는 DHCP 모니터링 시스템 자체가 다시 시작하는 경우, 클라이언트와 서버 사이에 이미 생성된 정보를 DHCP 모니터링 시스템에서도 그대로 유지하여 정상적인 패킷 포워딩을 복구하기 위해서 파일로 저장되었다가 재부팅시 읽어와서 데이터베이스를 복원할 수 있어야 한다. 이때 일시적으로 할당 정보나 리스타임의 불일치 현상이 일어날 수 있으나, 이는 스위칭이나 라우팅에 영향을 주지 않을 뿐 아니라 ARP/IP 스푸핑 방지는 여전히 정상적으로 동작하게 되므로 무시해도 되는 과정이다.When the DHCP monitoring system itself is restarted, the configured DHCP monitoring database is saved as a file to restore normal packet forwarding by retaining the information already created between the client and server in the DHCP monitoring system, You should be able to restore the database. In this case, there may be a temporary mismatch between allocation information and lease time, but this does not affect switching or routing, and ARP / IP spoofing prevention is still normal and can be ignored.

(3) 에이징(3) Aging

한편, DHCP를 이용해서 IP를 할당받은 호스트가 더 이상 IP 주소를 사용하지 않을 때 항상 DHCP RELEASE를 하는 것은 아니므로, 이 경우 DHCP 모니터링 시스템이 이를 판단하여 해당 엔트리를 제거해야 한다. 따라서, 에이징 모듈은 DHCP ACK의 검출에 의해 생성된 엔트리에 대하여 에이징 타임을 IP 주소 리스타임으로 설정한 후 점차 감소시키고, 에이징 타임이 '0'이 되면 해당 엔트리가 더 이상 사용되지 않는 것으로 간주하여 삭제하도록 한다. 그러나, 에이징 타임이 '0'이 되기 전에 호스트로부터의 갱신(Renew) 요구에 의해서 해당 호스트의 MAC 주소에 대한 DHCP ACK가 다시 검출되면 현재 검출된 DHCP ACK 패킷에 있는 IP 주소 리스타임으로 테이블 엔트리를 갱신하게 된다.On the other hand, when a host assigned an IP address using DHCP no longer uses the IP address, DHCP RELEASE is not always performed. In this case, the DHCP monitoring system should determine this and remove the corresponding entry. Therefore, the aging module gradually decreases the aging time after setting the IP address lease time for the entry generated by the detection of the DHCP ACK, and assumes that the entry is no longer used when the aging time becomes '0'. Delete it. However, if the DHCP ACK for the MAC address of the host is detected again by the renewal request from the host before the aging time is '0', the table entry is set to the IP address time in the currently detected DHCP ACK packet. Will be updated.

또한, DISCOVER 패킷의 전송에 의해 DHCP 모니터링 데이터베이스에 엔트리가 생성된 후 서버로부터 ACK 또는 NACK 패킷을 받지 못하는 호스트에 대하여는, 에이징 타임으로 'MAX_WAITING_TIME'을 사용함으로써 해당 엔트리가 필요없이 DHCP 모니터링 데이터베이스의 공간을 차지하는 것을 방지하도록 한다.Also, for hosts that do not receive ACK or NACK packets from the server after an entry is made in the DHCP monitoring database by sending a DISCOVER packet, 'MAX_WAITING_TIME' is used as the aging time so that the space in the DHCP monitoring database is not required. Prevent it from being occupied.

한편, 도 5c 에서 바운드(BOUND, B) 값은 해당 호스트에 DHCP를 이용한 IP 주소 할당의 완료여부를 나타내는 값으로서, 바운드값이 '0'이면 IP 주소가 아직 할당되지 않은 상태를 나타내며, 바운드값이 '1'이면 IP 주소할당이 완료된 상태를 나타낸다.Meanwhile, in FIG. 5C, the bound (BOUND, B) value indicates whether the IP address allocation is completed using DHCP to the corresponding host. If the bound value is '0', it indicates that the IP address has not been assigned yet. '1' indicates that IP address allocation is completed.

5. 패킷 필터링5. Packet Filtering

DHCP 모니터링 데이터베이스가 구축되면 각 테이블의 MAC 주소, IP 주소 및 에이징 타임값을 이용하여 스푸핑된 ARP 또는 IP 패킷을 검출하여 필터링함으로써 시스템 또는 망이 공격받는 것을 방지할 수 있다. 즉, DHCP 모니터링이 수행되는 포트를 통해 전송되는 패킷의 소스 MAC/IP 주소 또는 목적지 MAC/IP 주소를 DHCP 모니터링 데이터베이스에서 검색하여, 매치하는 엔트리가 존재하면 해당 패킷을 포워딩시키고 매치하는 엔트리가 없으면 해당 패킷을 버림으로써 스푸핑된 ARP/IP 패킷이 상위 망으로 전송되는 것을 차단할 수 있다.Once the DHCP monitoring database is established, the system or network can be prevented from being attacked by detecting and filtering spoofed ARP or IP packets using the MAC address, IP address and aging time value of each table. That is, the source MAC / IP address or destination MAC / IP address of a packet transmitted through the port where DHCP monitoring is performed is searched in the DHCP monitoring database. If a match is found, the packet is forwarded. By discarding the packet, spoofed ARP / IP packets can be blocked from being transmitted to the upper network.

이러한 패킷 필터링 과정은 도 6a 및 도 6b 에 도시되어 있는데, 도 6a 는 호스트 방향의 각 포트로 각각의 호스트로부터 입력되는 패킷을 필터링(Ingress 패킷 필터링)하는 과정을 도시한 도이고, 도 6b 는 호스트 방향의 각 포트로부터 각각의 호스트로 나가는 패킷을 필터링(Egress 패킷 필터링)하는 과정을 도시한 도이다. 각각에 대하여 도 6a 와 도 6b 를 참조하여 상세히 설명하면 이하와 같다.This packet filtering process is illustrated in FIGS. 6A and 6B. FIG. 6A is a diagram illustrating a process of filtering a packet input from each host to each port in the host direction, and FIG. 6B is a host diagram. A diagram illustrating a process of filtering outgoing packets from each port in the direction to each host (egress packet filtering). Each will be described in detail with reference to FIGS. 6A and 6B as follows.

(1) 인그레스 패킷 필터링(1) ingress packet filtering

DHCP 모니터링 시스템은 각 호스트로부터 각 포트로 입력되는 ARP 또는 IP 패킷을 탐지한다(ST600). 탐지된 패킷이 ARP 패킷이고 ARP 패킷의 프로토콜이 IP이면 ARP 패킷에서 센더(Sender) 하드웨어 주소와 센더 IP 주소를 추출하며(ST605 내지 ST615), ARP 패킷의 프로토콜이 IP가 아니라면 포워딩시킨다(ST650). 탐지된 패킷이 ARP 패킷이 아니라면, 즉 IP 패킷이라면 이더넷 헤더에서 소스 MAC 주소를, IP 헤더에서 소스 IP 주소를 추출한다(ST620).The DHCP monitoring system detects an ARP or an IP packet input to each port from each host (ST600). If the detected packet is an ARP packet and the protocol of the ARP packet is IP, the sender hardware address and the sender IP address are extracted from the ARP packet (ST605 to ST615), and forwarded if the protocol of the ARP packet is not IP (ST650). If the detected packet is not an ARP packet, that is, an IP packet, the source MAC address is extracted from the Ethernet header and the source IP address from the IP header (ST620).

다음으로, ARP 패킷의 센더 하드웨어 주소와 센더 IP 주소, IP 패킷의 소스 MAC 주소와 소스 IP 주소가 ARP 또는 IP 패킷을 보내는 특정 호스트를 표현하는 유니캐스트(Unicast) 주소인 경우, 추출된 센더 하드웨어 주소 또는 소스 MAC 주소로 DHCP 모니터링 데이터베이스를 검색하여 매치되는 엔트리를 찾는다(ST625 내지 ST635). 이때, ARP 패킷에 대하여는 센더 하드웨어 주소를 소스 MAC 주소로 하여 DHCP 모니터링 데이터베이스를 검색하도록 한다. 만일, ARP 패킷의 센더 하드웨어 주소와 센더 IP 주소, IP 패킷의 소스 MAC 주소와 소스 IP 주소가 유니캐스트 주소가 아닌 경우에는 해당 패킷을 스푸핑된 패킷으로 간주하여 버린다(ST650).Next, if the sender hardware address and sender IP address of the ARP packet, and the source MAC address and source IP address of the IP packet are unicast addresses representing ARP or a specific host sending the IP packet, then the extracted sender hardware address Or search the DHCP monitoring database by the source MAC address to find a matching entry (ST625 to ST635). At this time, the ARP packet is searched for the DHCP monitoring database using the sender hardware address as the source MAC address. If the sender hardware address and sender IP address of the ARP packet, and the source MAC address and source IP address of the IP packet are not unicast addresses, the packet is regarded as a spoofed packet (ST650).

해당 패킷에 대하여 매치되는 엔트리가 있으면 매치된 엔트리의 IP 주소와 패킷으로부터 추출된 소스 IP 주소(ARP 패킷의 경우 센더 IP 주소)을 비교하고, 서로 동일하면 해당 패킷을 포워딩시킨다(ST640, ST645). 그러나, 해당 패킷에 대하여 매치되는 엔트리가 없거나 매치된 엔트리의 IP 주소가 소스 IP 주소 또는 센더 IP 주소와 다르다면 해당 ARP 또는 IP 패킷을 스푸핑된 패킷으로 간주하여 버리도록 한다(ST650).If there is a matching entry for the packet, the matched IP address of the matched entry and the source IP address extracted from the packet (sender IP address in the case of ARP packets) are compared, and if they are identical, the corresponding packet is forwarded (ST640, ST645). However, if there is no match for the packet or if the IP address of the matched entry is different from the source IP address or the sender IP address, the corresponding ARP or IP packet is regarded as a spoofed packet (ST650).

(2) 이그레스 패킷 필터링(2) egress packet filtering

DHCP 모니터링 시스템은 각 포트로부터 각 호스트로 전송되어 나가는 IP 패킷을 탐지하고, 탐지된 IP 패킷의 이더넷 헤더에서 목적지 MAC 주소를, 그리고 IP 헤더에서 목적지 IP 주소를 추출한다(ST660, ST665). 추출된 목적지 MAC 주소와 목적지 IP 주소가 유니캐스트이면, 추출된 목적지 MAC 주소를 키로 하여 DHCP 모니터링 데이터베이스를 검색하여 매치되는 엔트리를 찾는다(ST670 내지 ST680). 한편, 목적지 MAC 주소와 목적지 IP 주소가 유니캐스트가 아니라면 해당 패킷을 포워딩시킨다(ST690).The DHCP monitoring system detects an IP packet sent to each host from each port, and extracts a destination MAC address from the Ethernet header of the detected IP packet and a destination IP address from the IP header (ST660 and ST665). If the extracted destination MAC address and the destination IP address are unicast, the DHCP monitoring database is searched using the extracted destination MAC address as a key to find a matching entry (ST670 to ST680). Meanwhile, if the destination MAC address and the destination IP address are not unicast, the corresponding packet is forwarded (ST690).

해당 패킷에 대하여 매치되는 엔트리가 있으면 해당 엔트리의 IP 주소와 해당 패킷으로부터 추출된 목적지 IP 주소를 비교하고, 양 IP 주소가 동일하다면 해당 패킷을 포워딩한다(ST685, ST690). 그러나, 해당 패킷에 매치되는 엔트리가 없거나 매치된 엔트리의 IP 주소와 패킷의 목적지 IP 주소가 상이하다면, 해당 패킷은 임의 조작되었거나 잘못된 패킷으로 간주하여 버리도록 한다(ST695).If there is a matching entry for the packet, the IP address of the entry is compared with the destination IP address extracted from the packet, and if both IP addresses are the same, the corresponding packet is forwarded (ST685 and ST690). However, if there is no entry matching the packet or if the IP address of the matched entry and the destination IP address of the packet are different, the packet is regarded as a randomly manipulated or invalid packet (ST695).

이와 같이, DHCP 서버가 해당 호스트에게 할당하지 않은 목적지 MAC 주소와 목적지 IP 주소를 가진 IP 패킷을 버림으로써, IP 패킷이 잘못된 호스트로 전달되는 것을 방지하여 남의 패킷을 엉뚱한 호스트가 수신하는 것을 방지할 수 있다.In this way, by discarding IP packets with a destination MAC address and a destination IP address that the DHCP server has not assigned to the host, the IP packet can be prevented from being sent to the wrong host, thereby preventing the wrong host from receiving the wrong packet. have.

응용례Application example

본 발명에 따른 DHCP 모니터링 시스템에 사용되는 L2 스위치에 대하여 IEEE 802.3D 테이블을 연동시킴으로써 스위치 칩의 기능을 개선할 수 있으며, L2 스위치가 이더넷이 아닌 경우에도 적용이 가능하다.By interworking the IEEE 802.3D table for the L2 switch used in the DHCP monitoring system according to the present invention, the function of the switch chip can be improved, and the L2 switch can be applied even when the Ethernet is not Ethernet.

또한, DHCP를 이용하는 xDSL 망에서 xDSL 모뎀이나 xDSLAM 에서 본 발명에 따른 DHCP 모니터링 및 패킷 필터링 방법을 적용함으로써 ARP나 IP 스푸핑으로부터의 공격을 방어할 수 있다.In addition, by applying the DHCP monitoring and packet filtering method according to the present invention in xDSL modem or xDSLAM in xDSL network using DHCP, attack from ARP or IP spoofing can be prevented.

이상 설명한 바대로, 본 발명에 따른 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법은, 스푸핑된 ARP 또는 IP 패킷이 호스트로부터 포트로 입력되거나 호스트로 전송되어 나가는 것을 차단함으로써 스푸핑된 ARP/IP 패킷이 시스템 내의 호스트나 상위 망으로 전파되는 것을 차단하고, 이와 같이 해킹의 기본적인 수단으로 사용되는 스푸핑을 차단함으로써 시스템과 망의 보안성을 높일 수 있는 현저한 효과가 있다.As described above, the method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet according to the present invention is provided by blocking spoofed ARP or IP packets from being input to or transmitted from a host to a host. The spoofed ARP / IP packet is prevented from being propagated to a host or a higher network in the system, and the spoofing used as a basic means of hacking is prevented, thereby improving the security of the system and the network.

다시 말해서, 본 발명에 따른 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법은,In other words, the method for automatically preventing ARP / IP spoofing in a dynamic IP address allocation environment using a DHCP packet according to the present invention,

첫째로, 일반화되어 있는 해킹 방법 도구인 ARP/IP 스푸핑 패킷이 포트를 통과하는 것을 차단함으로써 개별 호스트 뿐만 아니라 망 내에서 공격을 위한 패킷 자체가 돌아 다니는 것을 방지할 수 있고,First, by preventing ARP / IP spoofing packets, a generalized hacking method tool, from passing through ports, it is possible to prevent not only individual hosts but also the packets themselves for attack within the network.

둘째로, 포트로부터 각 호스트로 전송되는 패킷의 목적지 IP 주소를 비교 검사함으로써, 망 내의 스위치나 라우터 시스템 동작 오류로 인해 잘못된 호스트로 IP 패킷이 전달되는 것을 방지할 수 있으며,Second, by comparing and checking the destination IP address of the packets sent from the port to each host, it is possible to prevent the IP packet from being delivered to the wrong host due to a switch or router system operation error in the network.

셋째로, DHCP 서버에 의해 할당되는 IP를 사용하지 않고 호스트 사용자가 임의로 IP 주소를 할당하여 사용할 경우, 해당 호스트로부터 전송되는 패킷을 차단함으로써 DHCP 프로토콜을 사용하여 IP 주소를 할당받도록 되어 있는 망에서 임의의 사용자가 임의의 IP 주소를 고정하여 사용함으로 인해 초래될 수 있는 망의 혼란을 방지할 수 있어 망관리를 보다 편리하고 효율적으로 수행할 수 있고, Thirdly, if a host user randomly assigns an IP address without using an IP assigned by a DHCP server, randomly in a network that is assigned an IP address using the DHCP protocol by blocking a packet transmitted from the host. It is possible to prevent network confusion that can be caused by the use of fixed IP addresses by users in the network, making network management more convenient and efficient.

넷째로, 에이징 타임을 이용하여 DHCP 모니터링 데이터베이스의 각 엔트리를 에이징함으로써 필요없는 엔트리를 자동으로 삭제할 수 있으며,Fourth, the aging time can be used to automatically delete unnecessary entries by aging each entry in the DHCP monitoring database.

다섯째로, 시스템 운용자의 개입 없이 DHCP 모니터링과 패킷 필터링 기능을 인에이블(Enable) 또는 디스에이블(Disable)만 시켜주면 되므로 자동으로 스푸핑된 패킷을 걸러낼 수 있으며,Fifth, you can filter out spoofed packets automatically by enabling or disabling DHCP monitoring and packet filtering without any system operator intervention.

마지막으로, 각 호스트에 가까운 스위치나 라우터 시스템에서 DHCP 모니터링 및 필터링 기능을 수행시킴으로써 ARP/IP 스푸핑 방지 효과를 극대화할 수 있다. Finally, DHCP monitoring and filtering can be performed on the switch or router system close to each host to maximize ARP / IP spoofing protection.

본 발명의 바람직한 실시례가 특정 용어들을 사용하여 기술되어 왔지만, 그러한 기술은 오로지 설명을 하기 위한 것이며, 다음의 청구범위의 기술적 사상 및 범위로부터 이탈되지 않고서 여러 가지 변경 및 변화가 가해질 수 있는 것으로 이해되어져야 한다.While the preferred embodiments of the present invention have been described using specific terms, such descriptions are for illustrative purposes only, and it is understood that various changes and modifications may be made without departing from the spirit and scope of the following claims. Should be done.

도 1 은 DHCP 패킷의 형식을 나타낸 도.1 illustrates the format of a DHCP packet.

도 2 는 DHCP 클라이언트의 상태 전이도.2 is a state transition diagram of a DHCP client.

도 3 은 DHCP 클라이언트와 서버 사이의 절차도.3 is a procedure diagram between a DHCP client and a server.

도 4 는 DHCP 모니터링을 위한 시스템 구성도.4 is a system configuration diagram for DHCP monitoring.

도 5 는 DHCP 모니터링을 통해 DHCP 모니터링 데이터베이스를 구축하는 과정을 도시한 도.5 is a diagram illustrating a process of building a DHCP monitoring database through DHCP monitoring;

도 6 은 DHCP 모니터링 데이터베이스를 이용하여 패킷을 필터링하는 과정을 나타낸 흐름도.6 is a flowchart illustrating a process of filtering a packet using a DHCP monitoring database.

Claims (12)

스위치 시스템의 각 포트에 연결된 각 호스트에 대하여 DHCP 서버로부터 할당되는 IP 주소를 모니터링하여 상기 각 호스트의 맥(MAC) 주소와 IP 주소를 저장하는 소정의 데이터베이스를 구축하고, 상기 데이터베이스를 이용하여 상기 포트를 통해 전송되는 ARP/IP 패킷 중 맥 주소 및/또는 IP 주소가 변조된 패킷을 필터링함으로써 ARP/IP 스푸핑을 방지하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법으로서,For each host connected to each port of the switch system, a predetermined database for monitoring the MAC address and the IP address of each host is monitored by monitoring an IP address allocated from a DHCP server, and the port is used using the database. A method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using DHCP packets that prevents ARP / IP spoofing by filtering MAC addresses and / or IP address-modulated packets among ARP / IP packets transmitted through 상기 DHCP 서버로 IP 주소의 할당을 요청하기 위하여 상기 호스트로부터 상기 포트로 입력되는 제 1 DHCP 패킷을 탐지하고, 상기 데이터베이스 중 상기 호스트에 대하여 할당된 엔트리의 맥 주소 필드에 상기 호스트의 클라이언트 하드웨어 주소를 기록하고, IP 주소 필드를 초기화하는 제 1 단계;Detect a first DHCP packet entered from the host to the port to request an assignment of an IP address to the DHCP server, and enter the client hardware address of the host in the MAC address field of the entry assigned to the host in the database. Recording and initializing the IP address field; 상기 DHCP 서버로부터 상기 호스트의 IP 주소할당을 승인하기 위하여 상기 포트로부터 상기 호스트로 전송되어 나가는 제 2 DHCP 패킷을 탐지하고, 상기 제 2 DHCP 패킷으로부터 상기 호스트에 할당된 IP 주소를 추출하여 상기 IP 주소 필드에 기록하는 제 2 단계;Detects a second DHCP packet transmitted from the port to the host to approve the IP address allocation of the host from the DHCP server, extracts the IP address assigned to the host from the second DHCP packet, and selects the IP address. A second step of writing in a field; 상기 호스트를 소스로 하여 상기 포트를 통과하는 ARP 및/또는 IP 패킷인 전송패킷을 탐지하고, 상기 전송패킷으로부터 상기 전송패킷을 전송하는 상기 호스트를 특정하기 위한 하드웨어 주소와 상기 호스트의 IP 주소를 추출하는 제 3 단계;Detect a transport packet that is an ARP and / or an IP packet passing through the port using the host as a source, and extract a hardware address and an IP address of the host to specify the host that transmits the transport packet from the transport packet. A third step of doing; 상기 데이터베이스로부터 상기 맥 주소 필드값이 상기 추출된 하드웨어 주소와 동일하고, 상기 IP 주소 필드값이 상기 추출된 IP 주소와 동일한 엔트리를 검색하는 제 4 단계; 및A fourth step of searching for an entry from the database, wherein the MAC address field value is the same as the extracted hardware address and the IP address field value is the same as the extracted IP address; And 검색된 엔트리가 있으면 상기 전송패킷을 포워딩시키고, 검색된 엔트리가 없으면 상기 전송패킷의 전송을 차단하는 제 5 단계를 포함하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.And forwarding the transport packet if there is a searched entry, and blocking the transmission of the transport packet if there is no searched entry, and automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet. Way. 스위치 시스템의 각 포트에 연결된 각 호스트에 대하여 DHCP 서버로부터 할당되는 IP 주소를 모니터링하여 상기 각 호스트의 맥(MAC) 주소와 IP 주소를 저장하는 소정의 데이터베이스를 구축하고, 상기 데이터베이스를 이용하여 상기 포트를 통해 전송되는 패킷 중 IP 주소가 변조된 패킷을 필터링함으로써 ARP/IP 스푸핑을 방지하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법으로서,For each host connected to each port of the switch system, a predetermined database for monitoring the MAC address and the IP address of each host is monitored by monitoring an IP address allocated from a DHCP server, and the port is used using the database. A method for automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment by using a DHCP packet which prevents ARP / IP spoofing by filtering an IP address-modulated packet among packets transmitted through 상기 DHCP 서버로 IP 주소의 할당을 요청하기 위하여 상기 호스트로부터 상기 포트로 입력되는 제 1 DHCP 패킷을 탐지하고, 상기 데이터베이스 중 상기 호스트에 대하여 할당된 엔트리의 맥 주소 필드에 상기 호스트의 클라이언트 하드웨어 주소를 기록하고, IP 주소 필드를 초기화하는 제 1 단계;Detect a first DHCP packet entered from the host to the port to request an assignment of an IP address to the DHCP server, and enter the client hardware address of the host in the MAC address field of the entry assigned to the host in the database. Recording and initializing the IP address field; 상기 DHCP 서버로부터 상기 호스트의 IP 주소할당을 승인하기 위하여 상기 포트로부터 상기 호스트로 전송되어 나가는 제 2 DHCP 패킷을 탐지하고, 상기 제 2 DHCP 패킷으로부터 상기 호스트에 할당된 IP 주소를 추출하여 상기 IP 주소 필드에 기록하는 제 2 단계;Detects a second DHCP packet transmitted from the port to the host to approve the IP address allocation of the host from the DHCP server, extracts the IP address assigned to the host from the second DHCP packet, and selects the IP address. A second step of writing in a field; 상기 호스트를 목적지로 하여 상기 포트를 통과하는 IP 패킷을 탐지하고, 상기 IP 패킷으로부터 목적지 맥 주소 및 목적지 IP 주소를 추출하는 제 3 단계;Detecting an IP packet passing through the port using the host as a destination, and extracting a destination MAC address and a destination IP address from the IP packet; 상기 데이터베이스로부터 상기 맥 주소 필드값이 상기 목적지 맥 주소과 동일하고, 상기 IP 주소 필드값이 상기 목적지 IP 주소와 동일한 엔트리를 검색하는 제 4 단계; 및A fourth step of searching for entries from the database, wherein the MAC address field value is the same as the destination MAC address and the IP address field value is the same as the destination IP address; And 검색된 엔트리가 있으면 상기 IP 패킷을 포워딩시키고, 검색된 엔트리가 없으면 상기 IP 패킷의 전송을 차단하는 제 5 단계를 포함하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.And forwarding the IP packet if there is a searched entry, and blocking the transmission of the IP packet if there is no searched entry, and automatically preventing ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet. Way. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 제 1 단계가,The first step, 상기 호스트로부터 상기 포트로 입력되는 상기 제 1 DHCP 패킷을 탐지하는 제 1-1 단계;Detecting the first DHCP packet inputted from the host to the port; 상기 제 1 DHCP 패킷으로부터 상기 호스트의 클라이언트 하드웨어 주소와 상기 제 1 DHCP 패킷의 메시지 타입을 추출하는 제 1-2 단계;Extracting a client hardware address of the host and a message type of the first DHCP packet from the first DHCP packet; 상기 메시지 타입이 디스커버(DISCOVER)이면, 상기 데이터베이스 중 상기 맥 주소 필드값이 상기 클라이언트 하드웨어 주소와 동일한 엔트리를 검색하는 제 1-3 단계;Step 1-3, when the message type is DISCOVER, searching for an entry in the database whose MAC address field value is the same as the client hardware address; 검색된 엔트리가 있으면, 상기 엔트리의 맥 주소 필드에 상기 클라이언트 하드웨어 주소를, 상기 IP 주소 필드에 '0.0.0.0'을 기록하는 제 1-4 단계; 및1-4, if there is an entry found, writing the client hardware address in the MAC address field of the entry and '0.0.0.0' in the IP address field; And 검색된 엔트리가 없으면, 새로운 엔트리의 맥 주소 필드에 상기 클라이언트 하드웨어 주소를, 상기 IP 주소 필드에 '0.0.0.0'을 기록하는 제 1-5 단계를 포함하고,If there is no entry found, steps 1-5 of recording the client hardware address in the MAC address field of the new entry and '0.0.0.0' in the IP address field; 상기 1-4 단계 및 상기 1-5 단계가 선택적으로 수행되는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.Method 1-4 and step 1-5 are selectively performed ARP / IP spoofing automatic prevention method in a dynamic IP address assignment environment using a DHCP packet. 제 3 항에 있어서,The method of claim 3, wherein 상기 데이터베이스가 각 엔트리 중 필요없는 엔트리의 삭제시기를 기록하는 에이징 타임 필드를 더 구비하고,The database further comprises an aging time field for recording when to delete unnecessary entries of each entry, 상기 1-4 단계 및 상기 1-5 단계에서, 상기 에이징 타임 필드에 소정의 설정값인 최대 대기시간을 기록하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.In steps 1-4 and 1-5, ARP / IP spoofing is automatically prevented in a dynamic IP address allocation environment using a DHCP packet, characterized in that the maximum waiting time, which is a predetermined setting value, is recorded in the aging time field. Way. 제 4 항에 있어서,The method of claim 4, wherein 상기 에이징 타임 필드값을 소정 단위로 감소시키고, 상기 에이징 타임 필드값이 '0'이 되면 해당 엔트리를 삭제하는 제 6 단계를 더 포함하고,A sixth step of reducing the aging time field value by a predetermined unit and deleting the corresponding entry when the aging time field value becomes '0', 상기 제 6 단계는 상기 각 단계와 순서에 무관하게 수행되는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.The sixth step may be performed irrespective of the steps and the order of the ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet. 제 1 항 또는 제 2 항에 있어서,The method according to claim 1 or 2, 상기 제 2 단계가,The second step, 상기 포트로부터 상기 호스트로 전송되어 나가는 상기 제 2 DHCP 패킷을 탐지하는 제 2-1 단계;Detecting the second DHCP packet transmitted from the port to the host; 상기 제 2 DHCP 패킷으로부터 상기 호스트의 클라이언트 하드웨어 주소, 상기 할당된 IP 주소 및 상기 제 2 DHCP 패킷의 메시지 타입을 추출하는 제 2-2 단계;Extracting the client hardware address of the host, the assigned IP address and the message type of the second DHCP packet from the second DHCP packet; 상기 데이터베이스 중 상기 맥 주소 필드값이 상기 클라이언트 하드웨어 주소와 동일한 엔트리를 검색하는 제 2-3 단계;Searching for entries in the database where the MAC address field value is the same as the client hardware address; 검색된 엔트리가 존재하고 상기 메시지 타입이 액크(ACK)이면, 상기 엔트리의 맥 주소 필드에 상기 클라이언트 하드웨어 주소를, 상기 IP 주소 필드에 상기 할당된 IP 주소를 기록하는 제 2-4 단계; 및If the retrieved entry exists and the message type is ACK, recording the client hardware address in the MAC address field of the entry and the assigned IP address in the IP address field; And 검색된 엔트리가 존재하고 상기 메시지 타입이 낵크(NACK)이면, 상기 검색된 엔트리를 삭제하는 제 2-5 단계를 포함하고,If the searched entry exists and the message type is NACK, the step 2-5 of deleting the searched entry; 상기 2-4 단계 및 상기 2-5 단계가 선택적으로 수행되는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.Method 2-4 and step 2-5 are selectively performed ARP / IP spoofing automatic prevention method in a dynamic IP address assignment environment using a DHCP packet. 제 6 항에 있어서,The method of claim 6, 상기 데이터베이스가 각 엔트리 중 필요없는 엔트리의 삭제시기를 기록하는 에이징 타임 필드를 더 구비하고,The database further comprises an aging time field for recording when to delete unnecessary entries of each entry, 상기 2-2 단계에서, 상기 제 2 DHCP 패킷으로부터 IP 주소 리스타임을 추출하고,In step 2-2, extract the IP address re-list from the second DHCP packet, 상기 2-4 단계에서, 상기 에이징 타임 필드에 상기 IP 주소 리스타임을 기록하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.In step 2-4, ARP / IP spoofing automatic prevention method in a dynamic IP address assignment environment using a DHCP packet, characterized in that the recording of the IP address in the aging time field. 제 7 항에 있어서,The method of claim 7, wherein 상기 에이징 타임 필드값을 소정 단위로 감소시키고, 상기 에이징 타임 필드값이 '0'이 되면 해당 엔트리를 삭제하는 제 6 단계를 더 포함하고,A sixth step of reducing the aging time field value by a predetermined unit and deleting the corresponding entry when the aging time field value becomes '0', 상기 제 6 단계는 상기 각 단계와 순서에 무관하게 수행되는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.The sixth step may be performed irrespective of the steps and the order of the ARP / IP spoofing in a dynamic IP address assignment environment using a DHCP packet. 제 1 항에 있어서,The method of claim 1, 상기 전송패킷이 ARP 패킷이고,The transport packet is an ARP packet, 상기 제 3 단계에서,In the third step, 상기 하드웨어 주소로 센더 하드웨어 주소를 추출하고, 상기 IP 주소로 센더 IP 주소를 추출하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.A method for automatically preventing ARP / IP spoofing in a dynamic IP address allocation environment using a DHCP packet, comprising: extracting a sender hardware address with the hardware address and extracting a sender IP address with the IP address. 제 1 항에 있어서,The method of claim 1, 상기 전송패킷이 IP 패킷이고,The transport packet is an IP packet, 상기 제 3 단계에서,In the third step, 상기 하드웨어 주소로 상기 전송패킷의 이더넷 헤더로부터 소스 맥 주소를 추출하고, 상기 IP 주소로 상기 전송패킷의 IP 헤더로부터 소스 IP 주소를 추출하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.In the dynamic IP address assignment environment using a DHCP packet, the source MAC address is extracted from the Ethernet header of the transport packet with the hardware address, and the source IP address is extracted from the IP header of the transport packet with the IP address. How to automatically prevent ARP / IP spoofing. 제 1 항에 있어서,The method of claim 1, 상기 제 3 단계와 상기 제 4 단계 사이에,Between the third and fourth steps, 상기 추출된 하드웨어 주소 및 상기 추출된 IP 주소가 유니캐스트가 아니면 상기 전송패킷의 전송을 차단하는 제 3-1 단계를 더 포함하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.If the extracted hardware address and the extracted IP address is not unicast, further comprising the step 3-1 of blocking the transmission of the transmission packet ARP / in the dynamic IP address assignment environment using a DHCP packet How to prevent IP spoofing automatically. 제 2 항에 있어서,The method of claim 2, 상기 제 3 단계와 상기 제 4 단계 사이에,Between the third and fourth steps, 상기 목적지 맥 주소 및 상기 목적지 IP 주소가 유니캐스트가 아니면 포워딩시키는 제 3-1 단계를 더 포함하는 것을 특징으로 하는 DHCP 패킷을 이용한 동적 IP 주소할당 환경에서의 ARP/IP 스푸핑 자동 방지 방법.And forwarding the destination MAC address and the destination IP address if the destination IP address is not unicast, in step 3-1.
KR10-2003-0039636A 2003-06-19 2003-06-19 Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet KR100533785B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0039636A KR100533785B1 (en) 2003-06-19 2003-06-19 Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0039636A KR100533785B1 (en) 2003-06-19 2003-06-19 Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet

Publications (2)

Publication Number Publication Date
KR20040109985A KR20040109985A (en) 2004-12-29
KR100533785B1 true KR100533785B1 (en) 2005-12-06

Family

ID=37382481

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0039636A KR100533785B1 (en) 2003-06-19 2003-06-19 Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet

Country Status (1)

Country Link
KR (1) KR100533785B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101895587A (en) * 2010-07-06 2010-11-24 中兴通讯股份有限公司 Method, device and system for preventing users from modifying IP addresses privately

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050063477A (en) * 2003-12-22 2005-06-28 백남균 Security system for network information and method thereof
KR100779072B1 (en) * 2004-12-08 2007-11-27 한국전자통신연구원 ARP poisoning detection apparatus and method
KR100714109B1 (en) * 2005-12-01 2007-05-02 한국전자통신연구원 Apparatus for generation of intrusion alert data and method thereof
KR100807933B1 (en) * 2006-11-28 2008-03-03 엘지노텔 주식회사 System and method for detecting arp spoofing and computer readable storage medium storing program for detecting arp spoofing
KR100803029B1 (en) * 2006-12-01 2008-02-18 경희대학교 산학협력단 Method for cooperatively defending of ddos attack using statistical detection
KR100863313B1 (en) * 2007-02-09 2008-10-15 주식회사 코어세스 Apparatus and Method for automatically blocking spoofing by address resolution protocol
KR101064382B1 (en) * 2007-06-07 2011-09-14 주식회사 케이티 Arp attack blocking system in communication network and method thereof
CN101110821B (en) * 2007-09-06 2010-07-07 华为技术有限公司 Method and apparatus for preventing ARP address cheating attack
KR100958283B1 (en) * 2007-10-22 2010-05-19 주식회사 다산네트웍스 apparatus having Dynamic Host Configuration Protocol - Snooping function
KR100946162B1 (en) * 2007-10-22 2010-03-11 주식회사 다산네트웍스 Server for Dynamic Host Configuration Protocol
KR100954348B1 (en) * 2007-12-07 2010-04-21 주식회사 안철수연구소 Packet monitoring system and method thereof
CN101931607A (en) * 2009-06-23 2010-12-29 中兴通讯股份有限公司 Method and device for preventing user address spoofing in broadband access equipment
KR101231975B1 (en) * 2011-05-12 2013-02-08 (주)이스트소프트 Method of defending a spoofing attack using a blocking server
KR101489178B1 (en) * 2013-09-12 2015-02-03 숭실대학교산학협력단 Device and method for arp spoofing detection
CN107786496B (en) * 2016-08-25 2020-06-19 大连楼兰科技股份有限公司 Early warning method and device for ARP (Address resolution protocol) table entry spoofing attack of local area network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101895587A (en) * 2010-07-06 2010-11-24 中兴通讯股份有限公司 Method, device and system for preventing users from modifying IP addresses privately
CN101895587B (en) * 2010-07-06 2015-09-16 中兴通讯股份有限公司 Prevent the methods, devices and systems of users from modifying IP addresses privately

Also Published As

Publication number Publication date
KR20040109985A (en) 2004-12-29

Similar Documents

Publication Publication Date Title
US7379423B1 (en) Filtering subscriber traffic to prevent denial-of-service attacks
US7490351B1 (en) Controlling ARP traffic to enhance network security and scalability in TCP/IP networks
KR100533785B1 (en) Method for preventing arp/ip spoofing automatically on the dynamic ip address allocating environment using dhcp packet
US7979903B2 (en) System and method for source IP anti-spoofing security
US8533823B2 (en) System and method for source IP anti-spoofing security
EP0943200B1 (en) Secure dhcp server
JP3459183B2 (en) Packet verification method
JP3464610B2 (en) Packet verification method
US9882904B2 (en) System and method for filtering network traffic
EP2309685B1 (en) A method and apparatus for realizing forwarding the reversal transmission path of the unique address
WO2012077603A1 (en) Computer system, controller, and network monitoring method
KR100863313B1 (en) Apparatus and Method for automatically blocking spoofing by address resolution protocol
Ullrich et al. {IPv6} security: Attacks and countermeasures in a nutshell
US20060059552A1 (en) Restricting communication service
JPH11167538A (en) Fire wall service supply method
JPH11168511A (en) Packet authentication method
CN101459653B (en) Method for preventing DHCP packet attack based on Snooping technique
CN112134891A (en) Configuration method, system and monitoring method for generating multiple honey pot nodes by single host based on linux system
KR101064382B1 (en) Arp attack blocking system in communication network and method thereof
US7551559B1 (en) System and method for performing security actions for inter-layer binding protocol traffic
Yaibuates et al. A combination of ICMP and ARP for DHCP malicious attack identification
JP2003535560A (en) Improvement of Agile Network Protocol for Secure Communication with Guaranteed System Availability
JP2001326696A (en) Method for controlling access
US7613179B2 (en) Technique for tracing source addresses of packets
Bi et al. Source address validation improvement (SAVI) solution for DHCP

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121228

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141128

Year of fee payment: 10