본문 바로가기

OSI Model

10. ICMP (3계층 Network Layer 네크워크 계층)

(3계층 Network Layer 네크워크 계층)

ICMP(internet Control Message Protocol)은 인터넷 그룹 관리를 위한 프로토콜로

신뢰성이 없는 IP를 보조하기 위해서 사용한다

네트워크의 연결성을 확인하고 오류를 보고받기 위해 사용되는 프로토콜이다

ICMP를 이용한 네트워크 검사 명령으로는 ping 와 traceroute가 있다

 

Ping

은 네트워크의 소통 상태를 확인하는 명령이다 패킷이 올바르게 도착하여 응답이 일어나는지 확인한다 정상적으로 ping이 이루어지면 패킷이 무사히 전달된것이다

 

traceroute

네트워크 경로를 조사하기 위한 명령이다 출발지에서 TTL값을 1로 세팅해서 보낸다 그러면 다음 라우터에서는 TTL값이0 이 되 목적지까지 도달하지 못하고 드랍된다 목적지에 도달하지 못하고 드랍되면 출발지에서 ttl값을 2로 다시 세팅하고 보낸다 이런식으로 목적지까지 도달하지 못하면 도달할 때까지 TTL값을 +1씩 하여 진행한다 TTL은 어떤 라우터를 경유하는지 정보를 목록으로 표시한다 ping이 정상적으로 완료되지 않은 경우는 이 명령을 사용하여 경로상에서 어루를 일으키고 있는 위치를 찾아낼 수 있다

또한 경로상에 존재하는 각 라우터로부터 리스폰스 시간을 잴 수도 있으므로 네트워크의 병목 부분(경로상에서 통신 속도가 안 나는 요인이 되는 부분)을 파악할 수 있다

 

TTL(Time To Live)

- 패켓 생존 시간 (생존 시간 단위 : 라우터 개수)

- 목적 : 패켓 루프 방지 및 거리 측정 가능

 

운영체제 TTL 기본값

- Cisco 255

- Window 128

- Linux 64

공식: 운영체제 TTL기본값 - 경로상 라우터수 = TTL값

 

 

ICMP 취약점

디도스 공격은 ping을 이용한 공격이다

공격자가 자기 ip를 공격할 도메인의 ip를 설정하고 계속해서 ping을 보내는 것이다 그렇게 되면 ICMP 요청도 계속 들어가고 ICMP 응답도 계속해서 나오므로 서버과부하로 서버가 다운된다