8.8.8.8을 ping할 때 TTL이 시스템의 기본 TTL보다 큽니다.

8.8.8.8을 ping할 때 TTL이 시스템의 기본 TTL보다 큽니다.

Linux 시스템에서 ping을 실행하고 있습니다. 내 시스템의 기본 TTL을 확인했습니다.

i@cloudshell:~$ sudo sysctl  -a | grep ttl
net.ipv4.ip_default_ttl = 64

1.1.1.1에 ping을 시도했는데 모든 것이 잘 작동합니다.

i@cloudshell:~$ ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=54 time=7.75 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=54 time=7.26 ms

하지만 8.8.8.8에 ping을 시도하면 기본 TTL보다 큰 TTL이 표시됩니다.

i@cloudshell:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=114 time=1.15 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=1.36 ms

그 사이에 라우터를 고려하고 있는데 TTL을 늘릴 수 있나요? 그게 가능합니까? 내가 아는 한, 라우터는 항상 TTL을 늘리는 것이 아니라 줄여야 합니다.

답변1

생각하다ping은 서버에서 반환된 응답 패킷의 TTL을 보여줍니다. Ping은 단지 에코가 아니라 ping하는 서버가 ping 요청을 읽고 일치하는 응답을 다시 보냅니다. 이는 새 TTL이 포함된 새 패킷입니다.

기본적으로 라우터는 각 패킷의 TTL을 1씩 감소시키고 0에 도달하는 모든 패킷을 삭제합니다. 이것이 TTL의 전부입니다.

이론적으로 라우터는 TTL을 늘릴 수 있지만 실제로 이를 수행할 수 있는 하드웨어는 없습니다. 무한한 라우팅 루프를 생성하면 실제로 문제가 발생할 수 있습니다.

따라서 여기에 표시되는 것은 google DNS(8.8.8.8) 및 cloudflare(1.1.1.1)에 대한 TTL 설정에서 그 사이의 라우터를 뺀 값입니다.

관련 정보