14 DNS.

Slides:



Advertisements
Similar presentations
정보 보안 개론과 실습 네트워크 해킹과 보안 3부 해킹 전 정보 획득 Chapter 10. 목록화.
Advertisements

Part TCP / IP(계속) 3. IP 주소 4. IP 라우팅 5. 응용 프로토콜.
CHAP 22. 블루투스.
김태원 심재일 김상래 강신택. 김태원 심재일 김상래 강신택 인터넷 통신망의 정보를 제공하는 서비스 인터넷의 자원 및 정보는 NIC가 관리 IP주소 또는 도메인으로 정보 검색 이용자 및 통신망 관한 정보를 제공.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
Network Lab. Young-Chul Hwang
연결리스트(linked list).
PHP입문 Izayoi 김조흔.
소켓 모델 주소 지정 in_addr_t inet_addr(const char *ip_address) 연결 지향 모델 (TCP)
24 장 TCP/IP 24.1 개요 24.2 네트워크층 24.3 주소 지정 24.4 서브넷팅틍
4 Whois와 DNS 조사.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
네트워킹 CHAPTER 13 Section 1 네트워킹의 개요와 java.net 패키지 Section 2 인터넷 주소와 URL
8장. 원격지 시스템 관리하기.
Chapter 21 Network Layer: ARP, ICMP (IGMP).
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
FTP 프로그램 채계화 박재은 박수민.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
제 19 장 TFTP 19.1 메시지 19.2 연결 19.3 데이터 전송 19.4 UTP 포트 19.5 TFTP 예제
Chapter 06. UDP 서버/클라이언트.
TCP/IP 응용 프로그램에 적용 가능한 다양한 소켓 옵션을 이해하고 활용한다.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
모바일 자바 프로그래밍 JDBC / WAP Ps lab 오민경.
18강. 데이터 베이스 - II JDBC 살펴보기 Statement객체 살펴보기 Lecturer Kim Myoung-Ho
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
Chapter 5 UDP Socket 소켓 프로그래밍.
Slice&link.
Network Security WireShark를 활용한 프로토콜 분석 I.
Chapter 03 Whois와 DNS 조사.
소리가 작으면 이어폰 사용 권장!.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
제 15 장 BOOTP와 DHCP BOOTP 15.2 동적 호스트 설정 프로토콜.
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
8장 쿠키와 세션 한빛미디어(주).
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
오라클 넷(Oracle Net)의 개념 및 구성
CGI란 무엇인가? CGI(Common Gateway Interface)의 정의
Network 네트워크 이론 및 실습 TCP / IP 4장.
DHCP 조지훈 김대성 이정민 용석중.
2 네트워크 모델 학습 목표 모듈 개념을 알아보고 계층 구조의 필요성을 이해한다.
01. 라우팅 및 원격 액세스의 개요 라우팅은 패킷을 송신지부터 수신지까지 어떠한 경로를 통해 보낼 것인지를 결정하는 방법
14강. 세션 세션이란? 세션 문법 Lecturer Kim Myoung-Ho Nickname 블스
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
웹(WWW).
(Dynamic Host Configuration Protocol)
12강. 컨트롤러 컨트롤러 클래스 제작 요청 처리 메소드 제작 뷰에 데이터 전달
라우터의 이해 (보충자료) TCP/IP구성 Ping명령어를 이용한 연결검사 비트와 바이트 10진수/2진수/16진수
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
01. 개요 DNS(Domain Name System)는 인터넷 주소를 IP 주소로 바꾸기 위한 체계적인 방법
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
제 13 장 인터넷 그룹 관리 프로토콜 정보통신연구실.
3장 JSP프로그래밍의 개요 이장에서 배울 내용 : JSP페이지의 기본적인 개요설명과 JSP페이지의 처리과정 그리고 웹 어플리케이션의 구조에 대해서 학습한다.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
JSP Programming with a Workbook
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
인공지능실험실 박사 1학기 장성만 TCP/IP Socket Programming… 제 8장 도메인 이름과 인터네 주소 인공지능실험실 박사 1학기 장성만
바이트 순서 변환 함수 주소 변환 함수 바이트 조작 함수 원격지 호스트 정보를 얻는 함수
제 4 장 Record.
소리가 작으면 이어폰 사용 권장!.
 6장. SQL 쿼리.
ARP.
소리가 작으면 이어폰 사용 권장!.
20 XMLHttpRequest.
Presentation transcript:

14 DNS

학습목표 내용 도메인 이름과 IP 주소를 변환하는 과정이 필요한 이유를 이해한다. 계층 구조의 네임 스페이스, 도메인, 존의 개념을 이해한다. 도메인 정보를 관리하기 위한 자원 레코드를 알아본다. 이름 관리를 위한 해석기와 네임 서버의 동작 원리를 이해한다. DNS 클라이언트와 서버가 전송하는 DNS 메시지를 살펴본다. 내용 DNS 서비스 도메인 네임 스페이스 네임 서버와 해석기 DNS 프로토콜 요약 연습문제

01_DNS 서비스 IP 주소 체계 IP 주소IP Address : 32비트의 이진수, 호스트 구분 8비트의 십진수인 www.xxx.yyy.zzz 형태로 표현 클래스 구분

01_DNS 서비스 주소 클래스 클래스 A : 224개의 호스트 수용 클래스 B : 216개의 호스트 수용 클래스 C : 28개의 호스트 수용 클래스 D : 멀티캐스팅 지원

01_DNS 서비스 DNS 필요성 도메인 이름 : 문자형으로 표기되는 호스트 이름 (일반 사용자가 선호) IP 주소 : IP 프로토콜에서 호스트 구분을 위하여 반드시 필요 DNS : 도메인 이름을 이용하여 IP 주소로 변환하는 서비스 /etc/hosts 파일 인터넷 초기에 수작업으로 관리 파일의 내용은 (도메인 이름, IP 주소)의 쌍으로 구성 인터넷 보급이 확산되면서 DNS를 이용하여 자동으로 처리

01_DNS 서비스 DNS 계층구조의 도메인 기반 주소 표기 방법을 위한 분산 데이터베이스 시스템 도메인 이름에서 IP 주소를 얻음 해석기Resolver IP 주소를 원하는 응용 프로그램은 도메인 이름을 매개변수로 해석기 호출함 UDP를 이용해 DNS 네임 서버에 변환을 요청하여 호스트의 IP 주소를 얻음 nslookup 명령 DNS를 이용해 주소 변환 요구를 수행하는 대화형 프로그램 예) 도메인 이름이 information.korea.co.kr인 호스트의 IP 주소를 얻기 ❶ nslookup 실행 ❷ DNS 서버의 도메인 이름 ❸ IP 주소

01_DNS 서비스 DNS : 도메인 네임 스페이스, 네임 서버, 해석기로 구성 도메인 네임 스페이스Domain Name Space 트리 구조의 네임 스페이스를 비롯해 데이터에 대한 이름 관련 규칙을 정의 트리에 연결된 호스트는 자원 레코드(Resource Records)로 표현 DNS 서비스는 자원 레코드의 특정 유형 정보를 얻는 과정 네임 서버Name Server 도메인 트리 구조와 트리에 보관된 자원 레코드를 관리하는 프로그램 여러 네임 서버가 구역을 분할해 전체 도메인을 관리함 해석기Resolver 클라이언트의 요청을 받아 네임 서버로부터 정보를 얻어냄 하나의 이상의 네임 서버와 접촉

02_도메인 네임 스페이스 도메인 네임 스페이스의 구조 DNS : 거대한 분산 데이터베이스 도메인 네임 스페이스 최상위에 루트가 존재, 그 아래로 모든 호스트가 트리 구조로 이어짐 레이블 : 호스트의 이름 도메인 이름 : 점(.)으로 구분한 호스트 레이블의 연속 도메인 네임 스페이스의 구조 계층적인 트리 구조를 지원 도메인 이름 최하위 호스트의 레이블을 맨 왼쪽에 두고, 상위 노드로 이동하면서 점(.)으로 구분한 레이블 이름을 연속으로 붙임 TLDTop LevelDomain : 최상위 도메인, 도메인 이름의 맨 오른쪽에 위치 도메인 도메인 네임 스페이스에서 하부 트리 전체를 의미, 해당 도메인의 명칭은 하부 트리의 맨 상위에 위치한 호스트의 도메인 이름

02_도메인 네임 스페이스

02_도메인 네임 스페이스 최상위 도메인의 분류

02_도메인 네임 스페이스 도메인 이름 : 하위 호스트의 레이블부터 루트에 이르는 경로에 위치한 모든 호스트의 레이블을 점(.)으로 연결한 것

02_도메인 네임 스페이스 데이터베이스 서비스 계층 구조의 네임 서버 각 네임 서버는 자신의 하부에 위치한 호스트 정보만을 관리 이웃하는 네임 서버끼리 정보가 필요할 때는 상위 네임 서버의 중개가 필요

02_도메인 네임 스페이스 도메인 영역 존Zone : 임의의 네임 서버가 관리하는 영역

02_도메인 네임 스페이스 자원 레코드RR, Resource Record 이름과 주소 정보를 저장하기 위한 레코드 트리에 연결된 각 호스트의 정보는 자원 레코드와 관계됨 DNS 네임 서버가 해석기에 반환하는 데이터가 자원 레코드 정보 질의 레코드 : DNS 클라이언트가 DNS 서버에 정보를 요청하는 용도

02_도메인 네임 스페이스 자원 레코드 필드 Name(이름) : 찾고자 하는 가변 길이의 도메인 이름 Type(유형) : 16비트 크기로 자원의 종류 Class(클래스) : 프로토콜 패밀리를 의미 TTLTime To Live(생존 기간) : 자원 레코드가 만기까지의 유효 시간을 초 단위로 표시 RD Length(RD 길이) : 자원 데이터의 길이를 바이트 단위로 나타냄 RD(자원 데이터) : 자원 레코드와 관계된 데이터가 기록

02_도메인 네임 스페이스 자원 레코드의 유형

03_네임 서버와 해석기 해석기 인터넷에서 여러 네임 서버가 유기적으로 동작하여 정보의 일관성 유지 인증 데이터 도메인 이름과 호스트 주소 정보를 원하는 응용 프로그램은 해석기에게 요청 해석기는 DNS 서버와 접촉하는 DNS 클라이언트 역할을 수행 인증 데이터 네임 서버가 하나면 이 서버가 DNS에 관한 모든 정보를 관리 네임 서버의 부담을 줄이기 위하여 캐시 정보 활용 인증 데이터 : 해당 데이터를 직접 관리할 책임이 있는 네임 서버로부터 받은 정보 캐시 데이터 : 이전 요청에 의하여 호스트가 보관하던 정보 캐시 데이터를 오래 보관하면 클라이언트에 다른 정보를 전달할 염려가 있음 해당 정보의 인증 서버가 TTL이라는 정보를 제공하여 초과된 정보는 자동으로 무효 처리하고 인증 서버에 다시 정보를 요청해서 캐시 데이터를 갱신함

03_네임 서버와 해석기 존 존은 자원 레코드에 포함된 인증 데이터의 집합체로 정의됨 포함하는 영역 존에 속하는 모든 호스트의 전체 자원 레코드 집합체 존에 포함된 최상위 호스트 위임 서브 존: 자신의 존에 속하지만 인증이 위임된 경우 위임된 서버 존에 관한 글루 데이터: 서브 존의 네임 서버에 접근할 수 있도록 해줌 예) test.info.mit.edu의 호스트 정보를 얻고자 하는 경우 info.mit.edu를 관리하는 네임 서버의 IP 주소를 알면 간단히 처리 info.mit.edu의 네임 서버가 서브존 도메인 내부에 위치하여 IP 주소를 얻기 곤란한 경우에 글루 데이터가 필요

03_네임 서버와 해석기

03_네임 서버와 해석기 요청의 처리 질의 요청이 처리되는 과정 재귀적 처리 인증 데이터가 반드시 필요한지 명시, 혹은 캐시 해석기는 질의 요청을 재귀적으로 처리하는 명시, 혹은 비재귀적 재귀적 처리 해석기가 최초로 접속을 시도한 네임 서버가 질의 요청을 추적, 관리 재귀적 요청을 받은 네임 서버가 결과적으로 해석기 역할을 수행 비재귀적: 요청을 받은 네임 서버가 다른 네임 서버의 포인터 정보를 회신

03_네임 서버와 해석기

03_네임 서버와 해석기 반복적 처리 네임 서버 2로부터 원하는 정보를 얻지 못한 로컬 네임 서버는 네임 서버 1과 직접 접촉하여 정보를 얻음 네임 서버 1의 포인터인 IP 주소는 네임 서버 2가 제공

04_DNS 프로토콜 DNS 메시지 DNS 데이터를 요청하거나, 반대로 응답할 때 DNS 메시지를 전송 DNS 메시지의 구조

04_DNS 프로토콜 DNS 헤더 Header : 다른 필드의 사용 여부를 확인함, 반드시 필요 Question : 질의 레코드가 하나 이상 존재, 질의 메시지와 응답 메시지 모두사용 Answer : 응답 메시지에서만 사용 Authority : 응답 메시지에서만 사용, 질의의 인증 권한이 있는 서버 정보제공 Additional : 응답 메시지로 사용, 해석기에 필요한 추가 정보를 제공 DNS 헤더 Identification : 요청과 응답이 연관 관계를 표시 QR : 질의 메시지, 응답 메시지 구분 OPCODE : 질의나 응답의 종류 AA : 인증 권한이 있는 네임 서버 TC : UDP 최대 크기 초과 여부 RD : 재귀적 응답 RA : 반복 응답 가능 여부 Z : 예약 필드 RCODE : 응답 오류 QUCOUNT : DNS 메시지의 Question 필드에 있는 질의 요청의 개수

04_DNS 프로토콜 ANCOUNT : 응답용 DNS 메시지에서 Answer 레코드의 개수 AUCOUNT : 응답용 DNS 메시지에서 Authority 레코드의 개수 ARCOUNT : 응답용 DNS 메시지에서 Additional 레코드의 개수

04_DNS 프로토콜 UDP의 제한 해석기와 네임 서버는 UDP 53 번 포트로 DNS 메시지 전송 DNS 메시지가 512바이트보다 크면 TCP를 사용하는데 이때도 DNS 메시지 전송 은 53번 포트를 사용함 DNS 메시지가 512바이트보다 커 TCP를 사용할 경우 미리 512 바이트보다 크다는 것을 인지하는 경우에는 처음부터 TCP 사용 사전에 인지하지 못하는 경우는 TC=1로 지정되므로, TCP 연결을 사용

04_DNS 프로토콜 DNS 프로토콜 동작 과정 질의 메시지 예) www.korea.co.kr라는 호스트의 IP 주소 찾기 Header의 Identification : 메시지 식별자, UDP의 비순서적 전송 방식을 보완하려고 사용 플래그 값은 0×0100이므로 QR=0은 질의 메시지, OPcode=0은 표준 질의, RD=1은 재귀적 응답임

04_DNS 프로토콜

04_DNS 프로토콜 응답 메시지 Question 자원 레코드

04_DNS 프로토콜 응답 메시지

04_DNS 프로토콜 Authority 자원 레코드 내용