이것이 내 추적 경로의 결과입니다.
추적 경로 211.140.5.120
1 141.1.31.2 (111.1.31.2) 0.397 ms 0.380 ms 0.366 ms
2 141.1.28.38 (111.1.28.38) 3.999 ms 3.971 ms 3.982 ms
3 142.11.124.193 (112.11.124.133) 1.315 ms 1.533 ms 1.455 ms
4 (201.141.0.261) 2.615 ms 2.749 ms 2.572 ms
5 (201.141.0.82) 2.705 ms 2.564 ms 2.680 ms
6 (201.118.231.14) 5.375 ms 5.126 ms 5.252 ms
7 * * *
8 * * *
9 * * *
10 * * *
11 * * *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *
***가 무엇을 의미하는지 알고 싶습니다. 결과는 내 호스트와 대상 서버 사이에 실제로 30개 이상의 홉이 있다는 것을 의미합니까?
답변1
모든 Traceroute 구현은 발신자에게 전송되는 ICMP(유형 11) 패킷에 의존합니다.
이 프로그램은 작은 ttl(Time to Live)로 UDP 프로브 패킷을 시작한 다음 게이트웨이에서 ICMP "시간 초과" 응답을 수신하여 경로 추적을 시도합니다. ttl 1로 프로브를 시작하고 ICMP "포트에 연결할 수 없음"("호스트"에 도달했음을 의미)이 발생하거나 최대값에 도달할 때까지(기본값은 30홉이며 -m 플래그로 변경 가능) 1씩 증가합니다. ). 세 개의 프로브(-q 플래그로 변경)가 각 ttl 설정에서 전송되고 ttl, 게이트웨이 주소 및 각 프로브의 왕복 시간을 보여주는 줄이 인쇄됩니다(그래서 three * ). 5초 이내에 응답이 없을 경우 시간 초과 간격(-w 플래그로 변경), 해당 프로브에 대해 "*"가 인쇄됩니다.
따라서 귀하의 경우에는 201.118.231.14까지만 응답을 받았다고 결론을 내릴 수 있습니다. 이후 노드는 최대 TTL(최대 홉 수)인 홉 30까지 ICMP 패킷(유형 11)에 응답하지 않습니다. -m 플래그를 사용하여 최대 수명을 늘릴 수 있습니다.
답변2
Traceoute는 출력을 생성하기 위해 대상 서버와 각 중간 홉의 응답이 필요합니다. 라우터가 Time-to-live exceeded
응답을 생성하지 않으면 Traceroute는 해당 홉에 대해 아무것도 알 수 없습니다. 출력되는 홉은 * * *
해당 홉의 라우터가 추적 경로에 사용했던 패킷 유형에 응답하지 않는다는 것을 의미합니다(기본적으로 Unix 계열에서는 UDP이고 Windows에서는 ICMP입니다).
-e
내가 가지고 있는 것과 동일한 버전의 Traceroute를 사용하고 있다면 방화벽을 회피하는 옵션과 -P
ICMP, TCP 또는 ICMP를 사용하는 옵션을 사용해 볼 수 있습니다.GREUDP 대신 패킷. 옵션을 사용하여 필터링되지 않을 특정 포트(예: 80 또는 25)를 지정할 수도 있습니다 -p
.
응답을 받는 데 도움이 되는 다른 옵션이 있을 수 있습니다. 을 체크 해봐Traceroute 매뉴얼 페이지.
질문의 두 번째 부분에 대답하자면, 아니요. 이 추적 경로는 사용자와 대상 서버 사이에 정확히 30개의 홉이 있다는 것을 의미하지 않습니다. Traceroute는 특정 수의 홉 후에 "포기"됩니다. 이는 Linux에서 기본적으로 30인 패킷의 최대 TTL을 제한하여 수행됩니다. 옵션을 사용하여 이를 변경할 수 있습니다 -m
. 더 많거나 더 적은 홉이 있을 수 있지만 6번째 이후에는 응답이 없기 때문에 우리는 알 수 없습니다.