1. time exceeded로 인해 error가 발생되었음을 알리는 ICMP 패킷 발생 확인

 

 -Time Exceeded로 인하여 발생한 Time Exceeded Message은 192.168.52.72로 송신자 측의 ip가 저장되어 있고 Destination측은 106.10.212.150으로 kr.yahoo.com의 ip가 적혀있다. 그리고 이 패킷의 Type은 11이고 Code는0이다. 이 Type과 Code는 Time to live equals 0 during transit으로 “TTL의 값이 0이 되어 패킷을 버렸다” 라는 것을 송신측에 알려주기 위하여 발생하는 패킷이다.

 

 

2. unreachable ICMP 패킷 수집 실습

 

unreachable ICMP 패킷을 수집하기 위하여 CMD창에서 기본게이트 웨이주소를 통하여 tftp 192.168.52.1 GET a.txt 명령어를 실행 시켰다. tftp는 Trivial File Transfer Protocol의 약자로서 간단한 파일을 전송 시킬 때 사용하는 프로토콜이다.

 

⦁ Unreachable ICMP 패킷이 수집되는 이유

 

Destination Unreachable(Port Unreachable) ICMP 패킷은 Type은 3이며, Code는 3이다. Type 3, Code 3은 목적지의 포트가 없거나 포트가 차단되어 있을 때 발생하는 패킷이다. tftp의 포트번호는 69번으로 192.168.52.1은 기본게이트웨이 주소로 이 목적지에 해당 69번 포트가 없거나 차단되어 이 Destination Unreachable(Port Unreachable)ICMP 패킷이 발생하였다.

 

(UDP) port unreachable을 알리는 ICMP 패킷 발생 확인

 

 - tftp 192.168.52.1 GET a.txt 명령어를 CMD에서 실행 시킨 후 Wireshark에 수집된 Destination unreachable(Port unreachable) ICMP 패킷들이다. tftp의 포트번호는 69번으로 192.168.52.1은 기본게이트웨이 주소로 이 목적지에 해당 69번 포트가 없거나 차단되어 이 Destination Unreachable(Port Unreachable)ICMP 패킷이 발생하였다.

 

4. 웹 서버가 설치되어 있지 않은 컴퓨터에 웹브라우저로 접속 실습

 ⦁ 컴퓨터로부터 응답되는 ICMP 패킷의 종류가 무엇인지 확인 (Unreachable ICMP 패킷)

 

Unreachable ICMP 패킷의 Type은 3이다. 이 3이 뜻하는 것은 Destination Unreachable이 발생하였다는 뜻으로 이것은 목적지를 찾을 수가 없다라는 것을 뜻한다. 이 Type 3에 해당하는 code는 0~15번 까지 16개가 있다.

- 0번 : Network unreachable : 라우터에서 목적지로 가는 네트워크 경로를 찾지 못한 경우에 생성된다.

- 1번 : Host unreachable : 패킷이 목적지 단말 직전의 라우터 까지 송신이 되었지만 그 후에 목적지 까지 가능 방법을 모르는 경우에 생성된다.

- 2번 : Protocol unreachable : 패킷이 목적지 까지 도착하였지만 목적지에서 패킷을 열었을 때 패킷에 해당하는 전송프로토콜을 사용할 수 없을 경우에 생성된다.

- 3번 : Port unreachable : 목적지 단말에서 해당 포트가 막혀있거나 해당 포트가 없을 경우 즉, 해당 포트를 사용 할 수 없을 경우에 생성된다.

 

- 4번 : Fragmentation needed for DF=1 : 패킷의 크기가 매우커서 Fragment(분할)이 필요하지만 DF=1(Don’t Fragment=1로 이 패킷을 분할 할 수 없다)의 값이라 패킷을 분할하지 못할 경우 생성된다.

 

- 10번 : Destination host administratively prohibited : 관리자에 의하여 목적지에 접근이 거부된 것을 알려주는 것이다. 이 패킷은 보안상의 문제로 목적지 관리자 호스트에 의하여 접근이 제한되었을 경우 생성된다.

 

웹 서버가 설치되어 있지 않은 컴퓨터에 접속할 때 발생하는 상태이다.

- 이 때 발생하는 패킷의 Type은 3이며, Code는 10이다.

- 이 값은 Destination host administratively prohibited를 뜻한다. 이 패킷은 목적지 호스트와 통신이 차단되었을 때 발생하는 패킷이다. 이 패킷은 보안상의 문제 때문에 목적지 호스트에서 발생시키는 패킷이다.

웹서버가 설치되어 있는 컴퓨터에 웹브라우저로 접속했을 때의 사진이다. 이 때 ICMP Message는 발생하지 않는다. 그 이유는 ICMP Message는 네트워크에 오류가 생기거나 송신측에서 목적지 측의 네트워크가 살아있는지 죽었는지 확인하기 위해 ping을 사용할 때 발생하는데 위와 같은 상황은 정상적으로 웹브라우저에 접속이 가능했기 때문에 ICMP Message는 발생 하지 않는다.

 

 

8. 연습문제 풀이

 

[1] Tracert를 사용하는 단말 에서는 ICMP ______ 패킷을 송신하고, ICMP  ______ 패킷을 수신한다.

 

a) Echo Reply, Time Exceed   b) Source Quench, Time Exceed

c) Time Exceed, Echo Reply   d) Echo Request, Time Exceed

 

→ Tracert는 라우터의 정보와 목적지 단말의 정보를 알아 낼 수 있고 또, 송신측에서 목적지 단말까지 몇 개의 라우터를 거쳐지나갔는지 알 수 있다. 알아 낼 수 있는 이유는 송신측에서 처음 ICMP Request Message를 보낼 때 패킷 안의 TTL의 값을 1로 해서 보낸다. 이 패킷이 라우터를 지나 갈 때 TTL의 값은 –1씩 줄어들고 이 값이 0이 되면 해당 라우터는 송신측으로 Time Exceeded Message를 보낸다. 이 Message를 받은 송신측은 다은 ICMP Request Message를 보낼 때 TTL의 값을 +1증가시켜 보낸다. 이런 식으로 반복하여 라우터 정보와 목적지 단말의 정보를 알아내며 지나간 라우터의 개수도 알아낸다.

 

[2] 라우터에 혼잡이 발생하면, ICMP_____패킷을 _____ 에게 송신한다.

 

a) Echo Reply, 다음라우터   b) Source Quench, 이전라우터  

c) Source Quench, 발신지   d) Time Exceed, 발신지

 

→ 라우터에 혼잡이 발생하면 Source Quench를 보낸다. 이 Source Quench는 패킷 전송속도를 줄여달라고 송신측 즉, 패킷 발신지로 보내는 Message이다. Echo Reply는 Echo Request에 응답하는 Message이며 Time Exceed는 1번에서 설명했다시피 TTL이 0이 되면 발생하는 Message이다.

 

[3] 자신이 라우터임을 알리는 ICMP 패킷은 ______이다.

 

a) Router Advertisement     b) Source Quench

c) Ping                      d) Router Solicitation

 

→ Router Advertisement는 자신이 라우터라는 것을 알리는 패킷으로 이 패킷의 Type은 9이며, Code는 0이다. Source Quench는 Type은 4이며, Code는 0이다. Router Solicitation은 단말이 라우터를 찾을 때 생기는 Message이다. 이 패킷은 Type은 10이고, Code는 0이다.

 

[4] 자신의 망에 있는 라우터들을 탐색하는 용도로 사용되는 ICMP 패킷은  ______이다.

 

a) Router Advertisement     b) Traceroute

c) Ping                      d) Router Solicitation

 

→ 1번에서 설명한 것처럼 Traceroute는 송신측과 목적지 사이의 라우터의 정보와 목적지 단말의 정보를 알아내며, 목적지 까지 몇 개의 라우터를 거치는지 알아낼 수 있는 기능을 한다.

 

[5] 수신된 IP헤더부분에 오류가 발견되면, ICMP _____ 패킷을   _____에 송신한다.

 

a) Echo Reply, 다음라우터    b) Parameter Error, 다음라우터  

c) Parameter Error, 발신지   d) Time Reply, 발신지

 

→ Parameter problem on a datagram 은 무효한 헤더 영역이 있는 것을 송신측에 알려주는 Message이다. “무효한 헤더 영역이 있다.” 라는 것은 헤더부분에 오류가 발견 된 것을 의미하며 헤더 부분에 오류가 있는 것을 송신측에 알려 재 송신하게 만든다. 따라서 발신지에 송신한다.

 

[6] 수신된 IP의 TTL값이 1인 경우에는 ICMP _____패킷을   _____에 송신한다.

 

a) Echo Reply, 다음라우터    b) Time Exceed, 다음라우터

c) Time Exceed, 발신지   d) Time Reply, 발신지

 

→ 라우터에서 수신한 패킷의 TTL의 값이 1이면 이 TTL의 값은 라우터를 거칠 때 마다 –1을 하므로 이 값은 0이 된다. TTL의 값이 0이 되면 이 패킷은 버려지게 되고 라우터에서 패킷을 버린 것을 송신측에 알려야 하기 때문에 Time Exceeded Message를 만들어 송신측에 송신한다. 따라서 Time Exceed패킷을 발신지에 송신하게 된다.

 

[7] ICMP 패킷은 _______ 에 수납되어 전송된다.

 

a) ARP   b) IP   c) UDP   d) MAC 프레임

 

→ ICMP은 망 계층인 IP와 트랜스포트 계층인 TCP/IP사이에 있다ICMP는 망 계층의 IP를 기반으로 된 프로토콜로 IP에 수납되어 전송된다.

 

[8] 목적지가 3개의 라우터를 거친 다음에 연결되어있는 경우, Tracert 시험시  ___회 의 Echo Request패킷의 전송에 의해 목적지까지의 경로를 파악할 수 있다.

 

a) 2   b) 3  c) 4   d) 5

 

→ 라우터를 각각 A, B, C라고 칭하고 목적지를 D라고 칭하였을 때 Tracert를 시행하였을 때 처음 생성되는 ICMP Request Message의 TTL값은 1이다. 이 패킷은 A라우터에 가게 되고 TTL의 값은 0이 된다. A라우터는 이 패킷을 버리고 Time Exceeded Message를 생성하여 송신측에 송신한다. 그 후 Time Exceeded Message를 받은 송신측은 다시 ICMP Request Message를 만드는데 이때 TTL의 값을 +1상승시켜 2의 값을 주어 패킷을 만든다. 이 패킷이 A라우터를 거칠떄 TTL의 값은 –1되어 1 이되고 B라우터를 거칠 때 0이 된다. 그럼 B에서 또 패킷을 버리게 되고 다시 Time Exceeded Message를 송신측에 송신한다. 그 후 송신측은 다시 TTL값을 +1시켜 TTL값이 3이 되어잇는 ICMP Request Message를 만들어 송신한다 그럼 A거칠 때 TTL 값은 2가 되고 B거칠 때 TTL값은 1이 되고 C도착하였을 때 TTL값은 0이 된다. 그럼 C에서 다시 Time Exceeded Message를 만들어 송신측에 송신한다. 마지막으로 송신측은 TTL값을 +1상승시켜 TTL값이 4인 ICMP Request Message를 만들어 송신한다. 그럼 A에서 TTL=3 B에서 TTL=2 C에서 TTL=1이 되고 TTL이 0이 아니기 때문에 목적지 D까지 갈 수 있다. 따라서 ICMP Request Message는 총 4회 생성된다.

'IT > CISCO' 카테고리의 다른 글

Basic IOS Configuration(4)  (0) 2017.02.07
Basic IOS Configuration(3)  (0) 2017.02.06
Basic IOS Configuration(2)  (0) 2017.02.06
Basic IOS Configuration(1)  (0) 2017.02.06
통신프로토콜 TCP(2)  (0) 2016.12.21

+ Recent posts