Chapter 8 주소 변환 프로토콜(ARP).

Slides:



Advertisements
Similar presentations
HTTPS Packet Capture Tutorial
Advertisements

컴퓨터와 인터넷.
Part TCP / IP(계속) 3. IP 주소 4. IP 라우팅 5. 응용 프로토콜.
2장. TCP/IP, 서브넷팅 2012년 2학기 중부대학교 정보보호학과 이병천 교수.
16장 X.25 패킷 교환망 16.1 X.25 계층 구조 16.2 패킷 계층 프로토콜 16.3 요약.
Chapter 7 ARP and RARP.
Network Lab. Young-Chul Hwang
PHP입문 Izayoi 김조흔.
제 7장 정적 라우팅 프로토콜.
24 장 TCP/IP 24.1 개요 24.2 네트워크층 24.3 주소 지정 24.4 서브넷팅틍
Internet Group Management Protocol (IGMP)
ARP의 실험 발표자 : 이직수
VoIP (Voice Over Internet Protocol)
9장 데이터 링크층 개요 (Introduction To Data-Link Layer)
제 14장 Multicast & Broadcast
Internet Control Message Protocol Version 4 (ICMPv4)
제 15 장 점 대 점 프로토콜 15.1 천이상태 15.2 PPP 계층 15.3 링크 제어 프로토콜 15.4 인증
11 장 LAN 기본 개념과 Ethernet LAN
15장 X.25 패킷 교환망 15.1 X.25 계층 15.2 X.25와 관련된 기타 프로토콜 15.3 요약.
Chapter 21 Network Layer: ARP, ICMP (IGMP).
Chapter 06. UDP 서버/클라이언트.
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
ARP Project 조 충 호 교수님 김 세 진 조교님 조 진 형 변 익 수
10 장 데이터 링크 제어(Data Link Control)
13 장 광역 통신망(WAN) 13.1 점대점 WAN 13.2 교환형 WAN 13.3 ATM LAN 13.4 요약.
4. LAN의 배선체계 (3장. LAN: Local Area Network)
17장 X.25 패킷 교환망 17.1 X.25 계층 17.2 X.25와 관련된 기타 프로토콜 17.3 요약.
Chapter 6 IP 패킷 전달과 포워딩.
Chapter 19 솔라리스 네트워크 관리 Solaris1 . TCP/IP 개요
2장. TCP/IP, 서브넷팅 2012년 2학기 중부대학교 정보보호학과 이병천 교수.
제 11 장 UDP 11.1 프로세스-대-프로세스 통신 11.2 사용자 데이터그램 11.3 검사합 11.4 UDP 동작
2장. 인터넷의 개념과 주소.
22 장 전송층(Transport Layer)
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
2장. TCP/IP, 서브넷팅 2012년 2학기 중부대학교 정보보호학과 이병천 교수.
제 15 장 BOOTP와 DHCP BOOTP 15.2 동적 호스트 설정 프로토콜.
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
네트워크 프로토콜.
TCP/IP 인터네트워킹 INTERNETWORKING with TCP/IP <vol
16 장 네트워크 보안 : 방화벽과 VPN 16.1 개요 16.2 기밀성 16.3 전자 서명 16.4 인터넷 보안
Network 네트워크 이론 및 실습 TCP / IP 4장.
20 장 네트워킹과 인터네트워킹 장치 20.1 리피터(Repeaters) 20.2 브리지(Bridges)
10 장 데이터 링크 제어(Data Link Control)
10 장 데이터 링크 제어(Data Link Control)
2 네트워크 모델 학습 목표 모듈 개념을 알아보고 계층 구조의 필요성을 이해한다.
01. 라우팅 및 원격 액세스의 개요 라우팅은 패킷을 송신지부터 수신지까지 어떠한 경로를 통해 보낼 것인지를 결정하는 방법
3 네트워크 기술 학습 목표 회선 교환 시스템과 패킷 교환 시스템의 차이와 원리를 이해한다.
Chapter 26 IP over ATM.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
Chapter 2 네트워크 모델 (Network Models).
Ping Test.
(Dynamic Host Configuration Protocol)
Addressing the Network – IPv4
Chapter 27 Mobile IP.
LAN의 구성요소 학습내용 서버 클라이언트 NIC(Network Interface Card) 전송매체
라우터의 이해 (보충자료) TCP/IP구성 Ping명령어를 이용한 연결검사 비트와 바이트 10진수/2진수/16진수
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
제 13 장 인터넷 그룹 관리 프로토콜 정보통신연구실.
UNIT 25 SPI 로봇 SW 교육원 조용수.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
제 6 장 IP 패킷 전달과 라우팅 6.1 연결형 서비스와 비연결형 서비스 6.2 직접 전달과 간접 전달 6.3 라우팅 방법
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
Chapter 2 네트워크 모델 (Network Models).
D H C P 김민섭 박영운.
4. IP 데이터그램과 라우팅 (6장. 인터넷과 IP) IP 데이터그램 : 특정 물리망에 종속되지 않은 가상의 패킷 형식.
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
ARP.
Presentation transcript:

Chapter 8 주소 변환 프로토콜(ARP)

학습목표(OBJECTIVES): 논리 주소 (IP 주소)와 물리 주소 (MAC 주소)간의 차이점을 이해 논리 주소가 물리 주소로 변환하는 방법인 정적(static) 과 동적(dynamic) 방법에 대해 설명 ARP (address resolution protocol )에 의하여 논리 주소가 동적으로 물리 주소로 변환하는 방법 설명 서브넷팅 효과를 얻기 위해 프록시(proxy) ARP를 사용하는 방법 기반 네트워크가 ATM WAN 인 경우 ATMARP를 사용하여 IP 주소를 변환하는 방법 설명 ARP 소프트웨어가 5개의 구성요소로 되어있음을 보여줌 ARP 소프트웨어 패키지에서 사용된 각 모듈에 대해 pseudocode 를 보여줌

Chapter Outline 8.1 주소 변환(Address Mapping) 8.2 ARP Protocol 8.3 ATM ARP 8.4 ARP Package

8-1 주소 변환(ADDRESS MAPPING) 호스트나 라우터로 패킷을 전달하기 위해서는 두 레벨의 주소지정이 필요하다: 논리(logical)와 물리(physical). 따라서, 논리 주소를 대응하는 물리 주소로 또는 그 반대로 변환하는 기능이 필요하다. 이것을 정적(static) 또는 동적(dynamic) 변환으로 가능하다.

인터넷에서 사용하는 주소 논리 주소(logical address) 물리 주소(physical address) 호스트나 라우터가 사용하는 네트워크 레벨 주소 전세계적으로 유일한 주소 IP 주소 32 비트 길이 물리 주소(physical address) 로컬 네트워크에서 유효한 주소 로컬 주소(local address) 로컬에서만 유일하면 됨 보통 하드웨어로 구현 호스트나 라우터내에 설치된 NIC에 들어 있음

인터넷에서 사용하는 주소 정적 변환(static mapping) 논리 주소와 물리 주소 연관 테이블 생성 네트워크상의 각 시스템에 저장 필요시 테이블 검색 물리 주소가 변경될 경우 정적 테이블의 주기적인 갱신으로 인한 오버헤드 (NIC 변경, 이동 컴퓨터의 네트워크 이동 등)

인터넷에서 사용하는 주소 동적 변환(dynamic mapping) 물리 주소와 논리 주소 쌍 중 하나만 알면 프로토콜을 이용하여 다른 하나를 알아냄 ARP : 논리 주소를 물리 주소로 변환 RARP : 물리 주소를 논리 주소로 변환

인터넷에서 사용하는 주소 ARP와 RARP Address Resolution Protocol Reverse Address Resolution Protocol:현재 사용하지 않음

8-2 ARP 프로토콜 어떤 호스트나 라우터가 다른 호스트나 라우터에 보낼 IP 데이터그램을 가지고 있다면 송신자는 수신자의 논리주소인 IP 주소를 가지고 있다. 그러나 IP 데이터그램은 물리 네트워크를 통과하기 위해 프레임으로 캡슐화되어야 한다. 즉, 송신자는 수신자의 물리 주소를 알아야 한다. 변환(mapping)이란 논리 주소를 물리 주소로 변환하는것이다. ARP는 IP 프로토콜로부터 논리 주소를 받아 이를 해당하는 물리 주소로 변환한 후 데이터링크계층에 전달한다.

TCP/IP 프로토콜에서 ARP의 위치

ARP 동작 TCP/IP Protocol Suite

ARP 패킷

ARP 패킷 Hardware type : 네트워크 유형 정의(이더넷 : 1) Protocol type : 프로토콜 정의(IPv4 : 080016) Hardware length : 물리 주소의 바이트 단위 길이 Protocol length : 논리 주소의 바이트 단위 길이 Operation : 패킷 유형-ARP 요청(1), ARP 응답(2) Sender hardware address : 송신자 물리 주소 Sender protocol address : 송신자 논리 주소 Target hardware address : 타깃 물리 주소 Target protocol address : 타깃 논리 주소

ARP 패킷 캡술화

An ARP request is broadcast; an ARP reply is unicast. Note An ARP request is broadcast; an ARP reply is unicast.

ARP 동작 ARP 프로세스의 캡슐화 동작 과정 송신자는 타깃 IP 주소를 알고 있다 IP가 ARP에게 ARP 요청 메시지 생성 요청 (송신자 물리 주소, IP 주소; 타깃 IP 주소, 물리 주소(O)) 데이터링크층에 전달되면 발신지 주소는 송신자의 물리주소, 목적지 주소는 물리 브로드캐스트 주소로 하는 프레임에 캡슐화 모든 호스트나 라우터가 프레임을 수신하여 자신의 ARP에 전달

ARP 동작 타겟 시스템을 자신의 물리 주소를 포함한 ARP 응답 메시지 송신(유니케스트) 송신자는 응답 메시지를 받고 타겟 시스템의 물리 주소를 알게 된다 IP 데이터그램은 프레임으로 캡슐화 되어 목적지에 유니캐스트

ARP가 사용되는 4가지 case 송신자가 호스트로서 같은 네트워크상에 다른 호스트에 패킷 전송(논리주소는 목적지 IP주소)

ARP가 사용되는 4가지 경우

Example 8.1 IP 주소가 130.23.43.20이고 물리주소가 B2:34:55:10:22:10인 호스트가 IP 주소가 130.23.43.25이고 물리 주소가 A4:6E:F4:59:83:AB인 호스트에게 보낼 패킷을 가지고 있다. 두 호스트는 같은 이더넷 네트워크에 있다. 이더넷 프레임에 캡슐화된 ARP 요청(request)과 응답(reply) 패킷을 보여라. Solution 다음 쪽 그림은 ARP 요청과 응답 패킷을 보여준다. 이 경우 ARP 데이터 필드는 28 바이트이고 각 주소는 4 바이트 경계에 맞지 않는다. 이것이 주소를 위한 4 바이트 경계에 맞지 않는 이유이다. IP 주소는 16 진수로 나타나 있다.

Example 8.1

Proxy ARP 서브넷팅 효과를 얻기 위해 사용

8-3 ATM ARP 7장에서 ATM 상의 IP에 대해 설명하였다. IP 패킷이 ATM WAN을 통과하는 경우, ATM WAN 내 진출점 라우터의 물리 주소를 찾기 위해 프로토콜이 필요하다. 이는 LAN에서 ARP에 의해 수행되는 작업과 동일하다. 그렇지만, LAN과 ATM 네트워크 사이의 차이점이 있다. LAN 데이터링크계층에서 브로드캐스트 네트워크이고; ARP는 ARP 요구를 전송하기 위해 LAN의 브로드캐스트 기능을 이용한다.

ATM ARP 패킷

ATMARP 패킷 형식 Hardware type : 네트워크 유형 정의(ATM: 1316) Protocol type : 프로토콜 정의(IPv4 : 080016) Hardware length : 물리 주소의 바이트 단위 길이 operation : 패킷 유형- 표 8.1 참조 Sender Protocol Length: 프로토콜 주소 길이(IPv4: 4) Target Hardware Length: 수신자 물리주소 길이(ATM:20) Target Protocol Length: 프로토콜 주소 길이(IPv4: 4) Sender hardware address : 송신자 물리 주소(ATM: 20) Sender protocol address : 송신자 논리 주소 Target hardware address : 타깃 물리 주소 Target protocol address : 타깃 논리 주소

ATMARP 동작-두 라우터 연결 PVC(Permanent Virtual Circuit) 연결 네트워크 사업자에 의해 두 종단 사이에 설정 VPI와 VCI가 영구적인 연결위해 정의 이 값들은 각 교환기의 테이블에 입력 ATMARP 서버 필요 없음 회선이 설정되면 라우터는 물리주소를 IP주소와 결합 필요 인버스 요청 메시지와 인버스 응답 메시지 이용 교환 뒤에 양 라우터는 물리주소를 PVC에 테이블 항목 추가 다음 쪽 그림 참조

Note The inverse request and inverse reply messages can bind the physical address to an IP address in a PVC situation.

PVC 결합(Binding)

ATMARP 동작-두 라우터 연결 SVC(Switched Virtual Circuit) 연결 라우터가 다른 라우터(컴퓨터)와 연결생성을 원할 때마다 새로운 가상회선 살정 가상회선은 진입점 라우터가 진출점 라우터 물리주소를 아는 경우만 연결 생성 각 라우터는 클라이언트 ATMARP 프로그램 동작 다음 쪽 그림 참조

ATMARP 결합(Binding) Finding physical address

가상연결 설정 단계 서버에 연결하기 물리주소 받기 가상회선 설정하기 보통은 각 라우터와 서버 사이에 PVC 존재 없으면 SVC 연결 위해 라우터의 물리주소를 알아야 함 물리주소 받기 진입점 라우터와 서버 사이에 연결이 있을 때 ATMARP 요청을 서버에게 보냄 서버는 찾으면 ATMARP 응답을 보냄 가상회선 설정하기 진입점 라우터가 진출점 라우터와 SVC 요청(물리주소 사용)

IP address in an SVC situation. Note The request and reply message can be used to bind a physical address to an IP address in an SVC situation.

테이블 만들기 ATM 서버가 맵핑 테이블 만드는 방법 ATMARP와 두 개의 인버스 메시지(요청과 응답) 사용 라우터는 자신의 IP 주소와 물리 주소를 포함한 인버스 응답 메시지로 응답 두 주소를 사용하여 서버는 라우팅 테이블에 추가

테이블 만들기

Note The inverse request and inverse reply can also be used to build the server’s mapping table.

Figure 8.12 LIS

LIS(Logical IP Subnet) 대규모 ATM 네트워크도 논리적(물리적이 아님) 서브네트워크로 나눌 수 있다 B, C, D 하나의 논리적 서브넷 F, G, H 하나의 논리적 서브넷 A, E 는 양쪽 서브넷에 속함 서로 다른 서브넷에 속한 라우터끼리 통신시에는 반드시 A나 E를 통해서 가능

LIS allows an ATM network to be divided into several logical subnets. Note LIS allows an ATM network to be divided into several logical subnets. To use ATMARP, we need a separate server for each subnet.

8-4 ARP PACKAGE 이 절에서, 간단화된 ARP 소프트웨어 패키지 예를 보인다. 목적은 가상적 ARP 패키지의 구성요소와 구성요소들간의 상호작용을 보이는 것이다. 다음 쪽 그림은 이들 구성요소와 상호작용을 보여준다. ARP 패키지는 5개의 구성요소로 구성되어있는데, 이는 cache table, queues, output module, input module, cache-control module 이다.

ARP 구성요소

ARP 패키지 캐쉬 테이블 송신자가 같은 목적지에 여러 개의 IP 데이터그램을 보낼 때 매번 ARP 프로토콜을 사용하는 것은 비 효율적 호스트나 라우터가 IP 데이터그램에 해당되는 물리 주소를 수신하면 캐쉬 테이블에 저장 그런 다음 같은 수신자로 보내지는 데이터그램에 사용 테이블의 용량은 한정되어 무한정 유지될 수 없음

ARP 패키지 캐쉬 테이블의 엔트리 구성 상태(State) : FREE, PENDING, RESOLVED 하드웨어 유형(Hardware type) : 하드웨어 길이(Hardware length) : 프로토콜 길이(Protocol length) : 인터페이스 번호(Interface number) : 큐 번호(Queue number) : 시도(Attempt) : ARP 요청 횟수 타임아웃(Time-out) : 엔트리 수명 하드웨어 주소(Hardware address) : 목적지 하드웨어 주소 프로토콜 주소(Protocol address) : 목적지 IP 주소

출력 모듈

입력 모듈

캐쉬-제어 모듈

예에 사용되는 초기 캐쉬 테이블

Example 8.2 ARP 출력 모듈은 IP 계층으로부터 목적지 주소가 114.5.7.89인 데이터그램을 수신한다. 케쉬 테이블을 확인한 결과 이 주소를 위한 엔트리가 RESOLVED 상태(테이블의 R)임을 알 수 있다. 하드웨어 주소 457342ACAE32를 꺼내어, 패킷과 이 주소를 데이터 링크층에 전달한다. 캐쉬 테이블은 변화가 없다.

Example 8.3 20초 후에, ARP 출력 모듈은 IP 계층으로부터 목적지 주소가 6.1.7.22인 IP 데이터그램을 받는다. 캐쉬 테이블을 확인한 결과 이 목적지에 해당하는 엔트리가 없음을 알 수 있다. 모듈은 새 엔트리를 테이블에 추가하고 이 엔트리의 상태를 PENDING으로 설정한 후 시도 값을 1로 설정한다. 그런 다음, 모듈은 이 목적지에 해당하는 새로운 큐를 만들고 패킷을 이 큐에 넣는다. 그 다음에 이 목적지를 위해 데이터링크층에 ARP 요청을 보낸다. 새로운 캐쉬 테이블은 Table 8.6에 나타나 있다.

Example 8.4 15초 후, ARP 입력 모듈은 타깃 프로토콜(IP) 주소가 188.11.8.71인 ARP 패킷을 수신하였다. 모듈은 테이블을 검사하고 이 주소가 있음을 확인한다. 엔트리에 대한 상태를 RESOLVED로 바꾸고 time-out 값을 900으로 설정한다. 모듈은 엔트리에 대한 타깃 하드웨어 주소(E34573242ACA)를 삽입한다. 큐 18에 접근하여, 이 큐에서 기다리고 있는 모든 패킷을 데이터링크층에 하나씩 보낸다. 새로운 캐쉬 테이블은 표 8.7과 같다.

Example 8.5 25초 후에, cache-control 모듈은 모든 엔트리를 갱신한다. 처음 세 개의 resolved 엔트리의 타임아웃 값을 60씩 감소한다. 마지막 resolved 엔트리에 대한 타임아웃 값은 25만큼 감소한다. 마지막 엔트리 바로 위의 엔트리에 대한 상태는 타임아웃이 zero이므로 상태를 FREE로 바꾼다. 세 개의 pending 엔트리 각각에 대해 시도 필드 값을 1씩 증가시킨다. 증가시킨 후에, 한 엔트리(IP 주소가 201.11.56.7인)의 시도 값이 최대치이므로; 상태를 FREE로 바꾸고, 큐는 제거된다, 그리고 ICMP 메시지가 원래의 목적지에 보내진다 (9장 참조). 표 8.8을 보라.

알림 연습문제 풀이해서 Report로 다음주까지(일주일 후) 제출해 주세요!