[Network] Traceroute 의 작동 원리

Song-YunMin·2021년 2월 7일
2

Network

목록 보기
4/9

Traceroute의 작동 원리

Traceroute의 작동 원리는 ICMP 방식으로 이루어 집니다.

Traceroute는 ICMP 의 type30으로써, TTL(Time to live) 방식을 사용합니다.

여기서 TTL은 컴퓨터나 네트워크에서 데이터의 유효기간을 나타내기 위한 방법입니다. TTL은 계수기나 타임스탬프의 형태로 데이터에 포함되며, 정해진 유효기간이 지나면 데이터는 폐기됩니다. 컴퓨터 네트워크에서 TTL은 패킷의 무한 순환을 방지하는 역할을 합니다.

여기서 사용되는 TTL은 내가 이동할 수 있는 최대 라우팅 홉을 의미합니다.

예를 들어 TTL을 1로 설정하고 패킷을 보내면, 다음 라우터에서 바로 TTL이 0이 되면서 Error를 반환합니다.

ICMP traceroute는 TTL을 1로 시작해서 보내고, 목표 라우터에 도달할 때까지 TTL을 1씩 계속 늘려가며 패킷을 보냅니다. 그러면 가능 경로에 있는 모든 라우터들은 TTL 0 을 경험하기 때문에 ICMP Error를 통해 본인의 라우팅 IP를 반환합니다.

간단하게 정리하면

  1. TTL을 1로 패킷을 전송합니다,
  2. TTL이 0이된 바로 다음 라우터는 ICMP error 메세지를 돌려줍니다. (경로 상에 있는 첫번째 라우터 IP를 알아냅니다.)
  3. TTL을 2로 패킷을 전송합니다.
  4. TTL이 0이된 경로중 2번째에 있는 라우터는 ICMP error 메세지를 돌려줍니다. (경로 상에 있는 두번째 라우터 IP를 알아냅니다.)
  5. 위와 같은 방식으로 도착할 때 까지 모든 TTL을 늘려가며 전송합니다.
  6. 목적지의 ICMP 메세지를 받으면 , 라우팅 경로의 모든 IP를 알 수 있습니다.

Reference

<<경로 추적>> traceroute

profile
고독한 서버 개발 3년차

0개의 댓글