SlideShare a Scribd company logo
1 of 17
㈜유미테크
DHCP Snooping
(DHCP Spoofing 방어하기 위한 기법)
Switch, Router, IP Router, Hub
Switch, Router, IP Router, Hub
• Switch
– 네트워크 단위들을 연결하는 통신 장비
– Hub 와 유사 하나 전송 속도 개선
3 Node.js & Vert.x
…
Switch, Router, IP Router, Hub
• Router
– 라우터는 인접한 라우터에서 전달받은 패킷의 수신처 주소를 조사하여 최적
경로를 선택해 새롭게 패킷을 중계
4 Node.js & Vert.x
…
Switch, Router, IP Router, Hub
• IP Router (공유기)
– 일반적인 라우터에서 포트 수를 줄이고 NAT 기능을 추가한 것
– 정확한 명칭은 IP DSL Switch
5 Node.js & Vert.x
Switch, Router, IP Router, Hub
• Hub
– 장비들을 케이블을 사용하여 연결해 주는 장치
– 컴퓨터나 프린터들과 네트워크 연결
– 근거리 네트워크 연결
6 Node.js & Vert.x
– 네트워크 장비와 연결
– 네트워크 상태 점검
– 신호 증폭 기능
…
DHCP?
DHCP?
• DHCH 란?
– DHCP : Dynamic Host Configuration Protocol
– 호스트 IP구성 관리를 단순화하는 IP 표준
– 호스트의 IP 주소와 각종 TCP/IP 프로토콜의 기본 설정을 동적으로
8 Node.js & Vert.x
• DHCH 할당방법
– 동적 할당 (Dynamic allocation)
– 자동 할당 (automatic allocation)
– 정적 할당 (static allocation)
DHCP?
• IP 할당
9 Node.js & Vert.x
DHCP?
10 Node.js & Vert.x
• IP 할당
– DHCP Discover
• Client MAC: 단말의 MAC 주소
– DHCP Offer
• Client MAC: 단말의 MAC 주소
• Your IP: 단말에 할당(임대)할 IP 주소
• Subnet Mask (Option 1)
• Router (Option 3): 단말의 Default Gateway IP 주소
• DNS (Option 6): DNS 서버 IP 주소
• IP Lease Time (Option 51): 단말이 본 IP 주소(Your IP)를 사용(임대)할 수 있는 기간(시간)
• DHCP Server Identifier (Option 54): 본 메시지(DHCP Offer)를 보낸 DHCP 서버의 주소. 2개 이
상의 DHCP 서버가 DHCP Offer를 보낼 수 있으므로 각 DHCP 서버는 자신의 IP 주소를 본 필드
에 넣어서 단말에 보냄
DHCP?
11 Node.js & Vert.x
• IP 할당
– DHCP Request
• Client MAC: 단말의 MAC 주소
• Requested IP Address (Option 50): 난 이 IP 주소를 사용하겠다. (DHCP Offer의 Your IP 주소가 여기에
들어감)
• DHCP Server Identifier (Option 54): 2대 이상의 DHCP 서버가 DHCP Offer를 보낸 경우, 단말은 이 중
에 마음에 드는 DHCP 서버 하나를 고르게 되고, 그 서버의 IP 주소가 여기에 들어감. 즉, DHCP Server
Identifier에 명시된 DHCP 서버에게 "DHCP Request" 메시지를 보내어 단말 IP 주소를 포함한 네트워크
정보를 얻는 것임
– DHCP Offer
• Client MAC: 단말의 MAC 주소
• Your IP: 단말에 할당(임대)할 IP 주소
• Subnet Mask (Option 1)
• Router (Option 3): 단말의 Default Gateway IP 주소
• DNS (Option 6): DNS 서버 IP 주소
• IP Lease Time (Option 51): 단말이 본 IP 주소(Your IP)를 사용(임대)할 수 있는 기간(시간)
• DHCP Server Identifier (Option 54): 본 메시지(DHCP Offer)를 보낸 DHCP 서버의 주소. 2개 이
상의 DHCP 서버가 DHCP Offer를 보낼 수 있으므로 각 DHCP 서버는 자신의 IP 주소를 본 필드
에 넣어서 단말에 보냄
DHCP?
• DHCP Relay Agent
12 Node.js & Vert.x
Server
DHCP Snooping
DHCP?
14 Node.js & Vert.x
• Snooping 공격을 방어 하기 위한 방법
• 스위치가 DHCP 메시지 내부까지 검사하는 것
• Option 82 패킷 활성화
– 동작 방식
• 정상이라고 판단되는 포트를 Trust 활성화
DHCP?
15 Node.js & Vert.x
• Option 82
– 사용자가 설정이 가능한 커스텀 패킷
– default Format
DHCP?
16 Node.js & Vert.x
• Option 82
DHCP?
17 Node.js & Vert.x

More Related Content

Similar to DHCP Snooping (Dynamic Host Configuration Protocol)

Tcp server / client
Tcp server / clientTcp server / client
Tcp server / client
문익 장
 
[네트워크] TCP, 믿을 수 있나요!?
[네트워크] TCP, 믿을 수 있나요!?[네트워크] TCP, 믿을 수 있나요!?
[네트워크] TCP, 믿을 수 있나요!?
용민 박
 

Similar to DHCP Snooping (Dynamic Host Configuration Protocol) (20)

Wire shark 사용법 및 네트워크 개론 살짝 설명
Wire shark 사용법 및 네트워크 개론 살짝 설명Wire shark 사용법 및 네트워크 개론 살짝 설명
Wire shark 사용법 및 네트워크 개론 살짝 설명
 
TCP/IP Protocol - JAVA
TCP/IP Protocol - JAVATCP/IP Protocol - JAVA
TCP/IP Protocol - JAVA
 
Tcp server / client
Tcp server / clientTcp server / client
Tcp server / client
 
소켓프로그래밍 기초요약
소켓프로그래밍 기초요약소켓프로그래밍 기초요약
소켓프로그래밍 기초요약
 
Zimiidle
ZimiidleZimiidle
Zimiidle
 
Private cloud network architecture (2018)
Private cloud network architecture (2018)Private cloud network architecture (2018)
Private cloud network architecture (2018)
 
서버 인프라를지탱하는기술(1.3,1.4)
서버 인프라를지탱하는기술(1.3,1.4)서버 인프라를지탱하는기술(1.3,1.4)
서버 인프라를지탱하는기술(1.3,1.4)
 
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
 
Open source Embedded systems
Open source Embedded systemsOpen source Embedded systems
Open source Embedded systems
 
[네트워크] TCP, 믿을 수 있나요!?
[네트워크] TCP, 믿을 수 있나요!?[네트워크] TCP, 믿을 수 있나요!?
[네트워크] TCP, 믿을 수 있나요!?
 
웹기반원격감시제어 2010 CPD
웹기반원격감시제어 2010 CPD웹기반원격감시제어 2010 CPD
웹기반원격감시제어 2010 CPD
 
IP, DNS, URL, 이딴게 도대체 뭐죠???
IP, DNS, URL, 이딴게 도대체 뭐죠???IP, DNS, URL, 이딴게 도대체 뭐죠???
IP, DNS, URL, 이딴게 도대체 뭐죠???
 
L4교육자료
L4교육자료L4교육자료
L4교육자료
 
실무로 배우는 시스템 성능 최적화 10부. 네트워크 모니터링
실무로 배우는 시스템 성능 최적화   10부. 네트워크 모니터링실무로 배우는 시스템 성능 최적화   10부. 네트워크 모니터링
실무로 배우는 시스템 성능 최적화 10부. 네트워크 모니터링
 
프로젝트용 PC 환경구성 이찬희
프로젝트용 PC 환경구성   이찬희프로젝트용 PC 환경구성   이찬희
프로젝트용 PC 환경구성 이찬희
 
Implementing remote procedure calls rev2
Implementing remote procedure calls rev2Implementing remote procedure calls rev2
Implementing remote procedure calls rev2
 
DGMIT 제3회 R&D 컨퍼런스 r&d1 team : HTTP 프로토콜 개요
DGMIT 제3회 R&D 컨퍼런스 r&d1 team : HTTP 프로토콜 개요DGMIT 제3회 R&D 컨퍼런스 r&d1 team : HTTP 프로토콜 개요
DGMIT 제3회 R&D 컨퍼런스 r&d1 team : HTTP 프로토콜 개요
 
SoftLayer 서비스 설명 4차 - 네트워크
SoftLayer 서비스 설명 4차 - 네트워크SoftLayer 서비스 설명 4차 - 네트워크
SoftLayer 서비스 설명 4차 - 네트워크
 
[OpenStack Days Korea 2016] Innovating OpenStack Network with SDN solution
[OpenStack Days Korea 2016] Innovating OpenStack Network with SDN solution[OpenStack Days Korea 2016] Innovating OpenStack Network with SDN solution
[OpenStack Days Korea 2016] Innovating OpenStack Network with SDN solution
 
802.1X 적용 사례(차세대 정보보안을 위한 동적 네트워크 환경 구성과 접근통제)
802.1X 적용 사례(차세대 정보보안을 위한 동적 네트워크 환경 구성과 접근통제)802.1X 적용 사례(차세대 정보보안을 위한 동적 네트워크 환경 구성과 접근통제)
802.1X 적용 사례(차세대 정보보안을 위한 동적 네트워크 환경 구성과 접근통제)
 

More from ymtech

More from ymtech (20)

20171120 tech day-11th-소프트웨어 테스팅2-서현용
20171120 tech day-11th-소프트웨어 테스팅2-서현용20171120 tech day-11th-소프트웨어 테스팅2-서현용
20171120 tech day-11th-소프트웨어 테스팅2-서현용
 
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
 
20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한
 
20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈
 
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
 
20170414 techday 2nd_uiux디자인-최민희
20170414 techday 2nd_uiux디자인-최민희20170414 techday 2nd_uiux디자인-최민희
20170414 techday 2nd_uiux디자인-최민희
 
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
 
Mikrotic CCR1036 라우팅 설정
Mikrotic CCR1036 라우팅 설정Mikrotic CCR1036 라우팅 설정
Mikrotic CCR1036 라우팅 설정
 
Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치
 
Installation Openstack Swift
Installation Openstack SwiftInstallation Openstack Swift
Installation Openstack Swift
 
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
 
Ubuntu Host AP Setting
Ubuntu Host AP SettingUbuntu Host AP Setting
Ubuntu Host AP Setting
 
Intel Galileo Linux Setting
Intel Galileo Linux SettingIntel Galileo Linux Setting
Intel Galileo Linux Setting
 
MarsBoard RK3066 Linux 설치
MarsBoard RK3066 Linux 설치MarsBoard RK3066 Linux 설치
MarsBoard RK3066 Linux 설치
 
HP 3800-24G-2SFP OpenFlow Setting
HP 3800-24G-2SFP OpenFlow SettingHP 3800-24G-2SFP OpenFlow Setting
HP 3800-24G-2SFP OpenFlow Setting
 
Openstack Instance Resize
Openstack Instance ResizeOpenstack Instance Resize
Openstack Instance Resize
 
Openstack live migration
Openstack live migrationOpenstack live migration
Openstack live migration
 
SDN OpenFlow Load Balancer 시나리오
SDN OpenFlow Load Balancer 시나리오SDN OpenFlow Load Balancer 시나리오
SDN OpenFlow Load Balancer 시나리오
 
TR-069 클라이언트 검토자료8편
TR-069 클라이언트 검토자료8편TR-069 클라이언트 검토자료8편
TR-069 클라이언트 검토자료8편
 
TR-069 클라이언트 검토자료7편
TR-069 클라이언트 검토자료7편TR-069 클라이언트 검토자료7편
TR-069 클라이언트 검토자료7편
 

DHCP Snooping (Dynamic Host Configuration Protocol)

  • 1. ㈜유미테크 DHCP Snooping (DHCP Spoofing 방어하기 위한 기법)
  • 2. Switch, Router, IP Router, Hub
  • 3. Switch, Router, IP Router, Hub • Switch – 네트워크 단위들을 연결하는 통신 장비 – Hub 와 유사 하나 전송 속도 개선 3 Node.js & Vert.x …
  • 4. Switch, Router, IP Router, Hub • Router – 라우터는 인접한 라우터에서 전달받은 패킷의 수신처 주소를 조사하여 최적 경로를 선택해 새롭게 패킷을 중계 4 Node.js & Vert.x …
  • 5. Switch, Router, IP Router, Hub • IP Router (공유기) – 일반적인 라우터에서 포트 수를 줄이고 NAT 기능을 추가한 것 – 정확한 명칭은 IP DSL Switch 5 Node.js & Vert.x
  • 6. Switch, Router, IP Router, Hub • Hub – 장비들을 케이블을 사용하여 연결해 주는 장치 – 컴퓨터나 프린터들과 네트워크 연결 – 근거리 네트워크 연결 6 Node.js & Vert.x – 네트워크 장비와 연결 – 네트워크 상태 점검 – 신호 증폭 기능 …
  • 8. DHCP? • DHCH 란? – DHCP : Dynamic Host Configuration Protocol – 호스트 IP구성 관리를 단순화하는 IP 표준 – 호스트의 IP 주소와 각종 TCP/IP 프로토콜의 기본 설정을 동적으로 8 Node.js & Vert.x • DHCH 할당방법 – 동적 할당 (Dynamic allocation) – 자동 할당 (automatic allocation) – 정적 할당 (static allocation)
  • 9. DHCP? • IP 할당 9 Node.js & Vert.x
  • 10. DHCP? 10 Node.js & Vert.x • IP 할당 – DHCP Discover • Client MAC: 단말의 MAC 주소 – DHCP Offer • Client MAC: 단말의 MAC 주소 • Your IP: 단말에 할당(임대)할 IP 주소 • Subnet Mask (Option 1) • Router (Option 3): 단말의 Default Gateway IP 주소 • DNS (Option 6): DNS 서버 IP 주소 • IP Lease Time (Option 51): 단말이 본 IP 주소(Your IP)를 사용(임대)할 수 있는 기간(시간) • DHCP Server Identifier (Option 54): 본 메시지(DHCP Offer)를 보낸 DHCP 서버의 주소. 2개 이 상의 DHCP 서버가 DHCP Offer를 보낼 수 있으므로 각 DHCP 서버는 자신의 IP 주소를 본 필드 에 넣어서 단말에 보냄
  • 11. DHCP? 11 Node.js & Vert.x • IP 할당 – DHCP Request • Client MAC: 단말의 MAC 주소 • Requested IP Address (Option 50): 난 이 IP 주소를 사용하겠다. (DHCP Offer의 Your IP 주소가 여기에 들어감) • DHCP Server Identifier (Option 54): 2대 이상의 DHCP 서버가 DHCP Offer를 보낸 경우, 단말은 이 중 에 마음에 드는 DHCP 서버 하나를 고르게 되고, 그 서버의 IP 주소가 여기에 들어감. 즉, DHCP Server Identifier에 명시된 DHCP 서버에게 "DHCP Request" 메시지를 보내어 단말 IP 주소를 포함한 네트워크 정보를 얻는 것임 – DHCP Offer • Client MAC: 단말의 MAC 주소 • Your IP: 단말에 할당(임대)할 IP 주소 • Subnet Mask (Option 1) • Router (Option 3): 단말의 Default Gateway IP 주소 • DNS (Option 6): DNS 서버 IP 주소 • IP Lease Time (Option 51): 단말이 본 IP 주소(Your IP)를 사용(임대)할 수 있는 기간(시간) • DHCP Server Identifier (Option 54): 본 메시지(DHCP Offer)를 보낸 DHCP 서버의 주소. 2개 이 상의 DHCP 서버가 DHCP Offer를 보낼 수 있으므로 각 DHCP 서버는 자신의 IP 주소를 본 필드 에 넣어서 단말에 보냄
  • 12. DHCP? • DHCP Relay Agent 12 Node.js & Vert.x Server
  • 14. DHCP? 14 Node.js & Vert.x • Snooping 공격을 방어 하기 위한 방법 • 스위치가 DHCP 메시지 내부까지 검사하는 것 • Option 82 패킷 활성화 – 동작 방식 • 정상이라고 판단되는 포트를 Trust 활성화
  • 15. DHCP? 15 Node.js & Vert.x • Option 82 – 사용자가 설정이 가능한 커스텀 패킷 – default Format
  • 16. DHCP? 16 Node.js & Vert.x • Option 82