<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>http://junhoahn.kr/noriwiki/index.php?action=history&amp;feed=atom&amp;title=Internet_control_message_protocol</id>
	<title>Internet control message protocol - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="http://junhoahn.kr/noriwiki/index.php?action=history&amp;feed=atom&amp;title=Internet_control_message_protocol"/>
	<link rel="alternate" type="text/html" href="http://junhoahn.kr/noriwiki/index.php?title=Internet_control_message_protocol&amp;action=history"/>
	<updated>2026-06-13T22:41:15Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>http://junhoahn.kr/noriwiki/index.php?title=Internet_control_message_protocol&amp;diff=1286&amp;oldid=prev</id>
		<title>Ahn9807: 새 문서: 분류:네트워크 계층 == 개요 == ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)는 인터넷 프로토콜 스위트에 기록된 주요 프로토콜 가운데 하나이다. 네트워크 컴퓨터 위에서 돌아가는 운영체제에서 오류 메시지(Requested service is not available 등)를 전송받는 데 주로 쓰이며 인터넷 프로토콜의 주요 구성원 중 하나로 인터넷 프로토콜에 의존하여 작업을...</title>
		<link rel="alternate" type="text/html" href="http://junhoahn.kr/noriwiki/index.php?title=Internet_control_message_protocol&amp;diff=1286&amp;oldid=prev"/>
		<updated>2023-06-08T09:38:25Z</updated>

		<summary type="html">&lt;p&gt;새 문서: &lt;a href=&quot;/noriwiki/index.php?title=%EB%B6%84%EB%A5%98:%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC_%EA%B3%84%EC%B8%B5&quot; title=&quot;분류:네트워크 계층&quot;&gt;분류:네트워크 계층&lt;/a&gt; == 개요 == ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)는 인터넷 프로토콜 스위트에 기록된 주요 프로토콜 가운데 하나이다. 네트워크 컴퓨터 위에서 돌아가는 운영체제에서 오류 메시지(Requested service is not available 등)를 전송받는 데 주로 쓰이며 인터넷 프로토콜의 주요 구성원 중 하나로 인터넷 프로토콜에 의존하여 작업을...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[분류:네트워크 계층]]&lt;br /&gt;
== 개요 ==&lt;br /&gt;
ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)는 인터넷 프로토콜 스위트에 기록된 주요 프로토콜 가운데 하나이다. 네트워크 컴퓨터 위에서 돌아가는 운영체제에서 오류 메시지(Requested service is not available 등)를 전송받는 데 주로 쓰이며 인터넷 프로토콜의 주요 구성원 중 하나로 인터넷 프로토콜에 의존하여 작업을 수행한다. 프로토콜 번호 1로 할당되고 시스템 사이에 데이터를 교환하지 않거나 최종 사용자에 적용되지 않는다는 점에서 [[TCP]]와 [[UDP]]와는 다르다.([[ping]] 이나 [[traceroute]] 같은 몇몇 진단 프로그램 제외) 인터넷 프로토콜 버전 4([[IPv4]]) 용 ICMP는 ICMPv4로 알려져 있고, 유사하게 [[IPv6]]은 ICMPv6이다.&lt;br /&gt;
&lt;br /&gt;
== 메시지 종류 ==&lt;br /&gt;
ICMPv4 기준이며, () 안은 실제 부여된 메시지 번호이다.&lt;br /&gt;
&lt;br /&gt;
# Echo request (8) : 해당 수신자가 이 메시지를 받으면 응답을 해 달라는 요청이다.&lt;br /&gt;
# Echo reply (0): Echo request 를 받은 수신자가 보내주는 응답.&lt;br /&gt;
# Destination Unreachable (3) : 네트워크가 끊겨 있거나, 장비가 꺼져 있거나, 경로가 없거나 등 여러 이유로 최종 목적지에 도달할 수 없을때 보내지는 메시지이다.&lt;br /&gt;
# Time Exceeded (11) : TTL 값이 감소하여 0 이 되었을때 이 메시지를 송신자에게 돌려 준다.&lt;br /&gt;
&lt;br /&gt;
== 이를 사용하는 유틸리티 ==&lt;br /&gt;
=== 핑(Ping) ===&lt;br /&gt;
해당 IP 를 가진 장비에 접속 가능한지 확인하는 프로그램이며 위에 언급한 echo request 를 던지고, 이로 부터 받은 echo reply 를 확인한다. 정상적으로 echo reply 를 수신하는 경우 수신까지 걸릴 시간을 계산하여 해당 장비까지 회선 속도를 가늠해 볼 수 있다. 반대로 reply 를 수신하지 못하거나, destination unreachable 을 수신하게 되면 해당 장비에 도달할 수 없다는 것을 알 수 있다.&lt;br /&gt;
 &amp;gt;&amp;gt;ping google.com&lt;br /&gt;
&lt;br /&gt;
=== 트레이스라우트(traceroute) ===&lt;br /&gt;
해당 장비까지 가는 경로를 추척하는 프로그램이다. &lt;br /&gt;
&lt;br /&gt;
간략히 설명하면 모든 라우터는 패킷을 수신하면 [[TTL]] 을 1을 감소시키고 전달해야 하는데, 만약 TTL 이 0 이 되면 패킷을 버리고, 대신 time exceeded 메시지를 송신측에게 돌려 주게 된다. 이런 특성을 이용해서 처음에는 TTL = 1 로 설정하고 패킷을 쏘면, 제일 처음 만나는 라우터가 time exceeded 메시지를 보내기에 이 라우터의 IP 주소를 알 수 있게 된다. 그 다음 TTL = 2 로 패킷을 쏘고, 그 다음에는 TTL = 3, 4, 5, 6 ... 으로 최종 목적지에 도달할 때까지 TTL 을 증가시키며 패킷을 쏜다.&lt;br /&gt;
&lt;br /&gt;
이를 이용하면 최종 목적지까지 가는 경로를 모두 확인 할 수 있다.&lt;br /&gt;
 &amp;gt;&amp;gt;traceroute naver.com&lt;br /&gt;
&lt;br /&gt;
== 보안 문제 ==&lt;br /&gt;
핑은 [[DDOS]] 공격등을 하려 할때 대상을 검색하는 용도로 사용하거나, 아니면 핑 자체를 이용해서 공격에 사용하기도 한다. 그래서, 보안 관계로 대다수의 PC 등은 핑을 받아도 reply 를 보내지 않는다. 상용 서버의 경우에도 보안을 위해서 핑에 대해서 응답하지 않는 경우가 많다.&lt;br /&gt;
&lt;br /&gt;
트레이스라우트 또한 공격 대상을 검색하려는 용도로 사용되기에, 이 역시 보안을 위해서  time exceeded 를 보내지 않도록 설정하는 경우가 많다. 이 경우 트레이스라우트에서는 * * * 을 출력하며 타임아웃 처리를 한다.&lt;br /&gt;
 &amp;gt;&amp;gt;ping naver.com =&amp;gt; 응답없음&lt;/div&gt;</summary>
		<author><name>Ahn9807</name></author>
	</entry>
</feed>