traceroute가 작동하지 않습니다. 출력은 * * *이지만 네트워크는 정상입니다 (209.85.231.104), 30 hops

내 Linux 상자에서 traceroute가 작동하지 않습니다. 출력은 다음과 같습니다

$ traceroute google.com

traceroute to google.com (209.85.231.104), 30 hops max, 52 byte packets
1  * * *
2  * * *
3  * * *
4  * * *

아무도 왜 작동하지 않는지 말해 줄 수 있습니까? 그 뒤에 가능한 이유가 있습니까?



답변

기본적으로 traceroute는 호스트 추적에 높은 UDP 포트를 사용합니다. 그러나 때때로 방화벽은 이러한 UDP 포트를 차단합니다.

“-I”(대문자 i) 매개 변수를 명령 행에 추가하십시오. 예 :

traceroute -I www.google.it

호스트 추적에 UDP 대신 ICMP를 사용합니다.


답변

방화벽을 우회하려면 -T (tcp) 또는 -U (udp)를 사용하십시오.
일부 라우터 / 방화벽은 icmp echo를 통과시키지 못하므로 2를 사용하여 통과시킵니다.
어쨌든 위키 백과에 설명 된 것처럼 데비안 상자에서 traceroute는 여전히 udp가 아닌 icmp 패킷을 사용합니다.

편집하다

나는 틀렸다 … 그것은 udp를 사용하고 … ICMP는 다시 연결할 수없는 포트입니다 … 죄송합니다


답변

그것은 당신이 UDP 패킷을 차단 상류 방화벽 일 수 있었다
추적 경로를

최신 유닉스 계열 운영 체제에서 기본적으로 traceroute 유틸리티는 대상 포트 번호가 33434에서 33534 인 UDP 데이터 그램을 사용합니다.


답변

icmp TIME_EXCEEDED 응답이 기본 게이트웨이로 사용하는 라우터 / 방화벽 또는 Linux 시스템 자체에 의해 필터링되기 때문일 수 있습니다.