추적 경로 소개
Linux Traceroute 명령은 대상에 도달하는 데 필요한 홉 수와 패킷 이동 경로를 결정하는 데 도움이 되는 네트워크 문제 해결 유틸리티입니다. 로컬 시스템에서 원격 시스템으로 데이터가 전송되는 방식을 표시하는 데 사용됩니다. 웹 페이지를 로드하는 것은 Traceroute의 일반적인 예 중 하나입니다. 웹페이지 로딩은 네트워크와 라우터를 통해 데이터를 전송합니다. Traceroute는 네트워크를 통한 라우터의 경로, IP 주소 및 호스트 이름을 표시할 수 있습니다. 네트워크 문제를 진단하는 데 유용할 수 있습니다.
컴퓨팅에서 Tracert 및 Traceroute는 가능한 경로를 표시하고 IP 네트워크 전체의 패킷 전송 지연을 측정하기 위한 컴퓨터 네트워크 진단 명령입니다. 경로 기록은 경로에 있는 모든 연속 호스트의 패킷 왕복 시간으로 기록됩니다. 모든 홉의 평균 시간 합계는 연결을 생성하는 데 소요된 총 시간 측정값입니다.
preg_match
전송된 모든 패키지가 두 번 이상 손실되지 않는 한 Traceroute 명령은 계속됩니다. 연결이 끊어지고 경로를 평가할 수 없습니다. 반면에 ping 명령은 대상 지점을 통과하는 마지막 왕복 시간만 측정합니다. 경우에 따라 도구의 이름이 IPv6에 대해 Tracert6 및 Traceroute6이라는 유사한 이름을 갖는 경우도 있습니다.
통사론:
traceroute [OPTION...] HOST
옵션:
Traceroute 명령은 다음 명령줄 옵션을 지원합니다.
-f, --first-hop=NUM: 초기 홉 거리를 설정하는데 사용됩니다.
-g, --gateways=게이트: 느슨한 소스 라우팅을 위한 게이트웨이 목록을 표시하는 데 사용됩니다.
-나, --icmp: ICMP ECHO를 프로브로 사용하도록 지정되었습니다.
-m, --max-hop=NUM: 최대 홉 수를 설정하는 데 사용되며 기본값은 64입니다.
-M, --type=방법: Traceroute 작업에 대한 METHOD(icmp 또는 udp)를 지정하며 기본 방법은 udp입니다.
-p, --port=포트: 대상 PORT 포트를 사용하도록 정의되어 있으며 기본 PORT는 33434입니다.
-q, --tries=NUM: 홉당 NUM개의 프로브 패킷을 전달하는 데 사용되며 기본값은 3입니다.
--해결-호스트 이름: 호스트 이름을 확인하는 데 사용됩니다.
-t, --tos=NUM: 서비스 유형(TOS)을 NUM으로 설정하는 데 사용됩니다.
-w, --wait=NUM: 응답을 초 단위로 기다리는 데 사용되며 기본값은 3입니다.
-?, --돕다: 지원되는 명령줄 옵션 및 사용법에 대한 간략한 설명이 포함된 도움말 매뉴얼을 표시하는 데 사용됩니다.
--용법: 짧은 사용법 메시지가 표시됩니다.
-V, --버전: Traceroute의 버전 정보를 표시하는 데 사용됩니다.
주제의 빠른 색인을 살펴 보겠습니다.
jquery 클릭
- Traceroute 명령 설치
- 어떻게 작동하나요?
- IPv6을 사용하여 경로 추적
- IPv4를 사용하여 경로 추적
- IP 주소 및 호스트 이름 매핑 비활성화
- 홉당 쿼리 수 설정
- 응답 대기 시간 설정
- 사용할 인터페이스 지정
- 초기 TTL 값 설정
- 최대 홉 수 설정
- 도움을 받다
추적 경로 구현
Traceroute 명령은 여러 최신 OS에서 사용할 수 있습니다. Linux, macOS, FreeBSD와 같은 Unix 계열 시스템에서는 명령줄 도구로 사용할 수 있습니다. 또한 Traceroute는 macOS의 네트워크 유틸리티 제품군 내에서 그래픽으로 액세스할 수 있습니다. 이러한 유틸리티는 macOS Big Sur가 출시된 이후 더 이상 사용되지 않습니다.
ReactOS와 Microsoft Windows는 유사한 경로 추적 기능을 구현하는 Tracert라는 프로그램을 제공합니다. 또한 Windows NT 기반 OS는 ping 명령의 기능을 Tracert와 결합할 수 있는 PathPing을 제공합니다. ReactOS 에디션은 Get Murphy에 의해 통합되었으며 GPL에 따라 라이센스가 부여되었습니다.
기본적으로 Traceroute는 Unix 계열 OS에서 UDP(사용자 데이터그램 프로토콜) 패킷 순서를 전송하며 포트 대상 번호는 33434~33534입니다. macOS, DragonFly BSD, OpenBSD, NetBSD, FreeBSD 및 Linux와 함께 제공되는 Traceroute 구현은 다음과 같습니다. ICMP 또는 TCP SYN 패킷을 사용하여 TCP 및 UDP와 같은 ICMP 에코 요청 패킷을 활용하는 옵션입니다. 기본적으로 Tracert는 UDP 패킷 추적 경로 전송 대신 Windows에서 ICMP Echo 요청 패킷을 전송합니다.
추적 경로 사용
대부분의 구현에는 홉당 전송할 쿼리 수, 응답 대기 시간, 홉 제한 및 사용된 포트를 정의하는 옵션이 최소한 몇 가지 있습니다. 지정된 옵션으로 Traceroute를 호출하지 않으면 사용 가능한 옵션 목록이 표시되는 반면 man Traceroute 명령은 오류 플래그와 같은 자세한 내용을 나타냅니다.
추적 경로의 유래
Traceroute의 매뉴얼 페이지에는 실제 Traceroute 프로그램이 Steve Deering의 추천을 바탕으로 1987년 Van Jacobson에 의해 지정되었으며 특히 C. Philip Wood, Ken Adelman 및 Tim Seaver의 강력한 수정 사항 및 권장 사항이 포함되어 있다고 명시되어 있습니다. ping 프로그램 작성자인 Mike Muuss는 처음에 ping 프로그램을 지정하는 동안 원시 ICMP 소켓을 활성화하기 위해 이전에 코딩한 커널 ICMP의 지원으로 추적 경로가 지정되었다고 말합니다.
추적 경로의 한계
Traceroute의 한계는 악명 높으며 도구를 사용할 때 고려해야 합니다. 예를 들어, Traceroute는 인터페이스 수준에서는 경로를 인식하지만 경로 수준에서는 인식하지 않습니다. 라우터가 검사에 응답하지 않거나 라우터에 ICMP 응답에 대한 제한 사항이 포함된 경우 다른 제한 사항이 발생합니다.
Traceroute는 트래픽 부하 분산이 존재하는 경우 존재하지 않는 경로를 나타낼 수 있습니다. 이 문제를 최소화하기 위해 검사 흐름 식별자를 관리하여 로드 밸런싱을 무시하는 Paris-traceroute라는 추적 경로 수정을 사용할 수 있습니다.
Traceroute 명령 설치
Traceroute는 기본 유틸리티가 아닙니다. 리눅스 체계. Traceroute를 사용하려면 수동으로 설치해야 합니다. 설치하려면 다음 명령 중 하나를 실행하십시오.
sudo apt install inetutils-traceroute sudo apt install traceroute
위의 명령은 시스템에 Traceroute 유틸리티를 설치합니다. 성공적으로 설치되면 출력은 다음과 같습니다.
어떻게 작동하나요?
연결된 네트워크 호스트의 경로를 추적하려면 연결하려는 서버 이름이나 IP 주소를 전달하세요. 예를 들어 'javatpoint.com' 서버의 경로를 추적하려면 아래 명령을 실행합니다.
traceroute javatpoint.com
위 명령은 해당 경로에 대한 홉, 패킷 및 기타 많은 정보를 표시합니다. 아래 출력을 고려하십시오.
위의 출력에서 우리는 몇 가지를 볼 수 있습니다. 출력의 각 부분을 이해해 보겠습니다.
- 첫 번째 줄에는 도달할 호스트 이름과 IP 주소, Traceroute 명령이 시도할 홉, 전송할 패킷 크기가 표시됩니다.
- 두 번째 줄부터 각 줄에는 대상까지의 홉이 표시됩니다. 호스트 이름 뒤에는 호스트의 IP 주소, 왕복 시간이 옵니다. 왕복 시간은 신호가 전송되는 데 걸리는 시간과 호스트에 응답하는 데 걸리는 시간의 합입니다.
- 기본적으로 각 호스트에 대해 3개의 패킷을 전송하므로 3개의 응답 시간이 나열됩니다.
- '*' 기호는 패킷 손실을 나타냅니다. 패킷 손실은 네트워크 중단, 네트워크 정체로 인한 높은 트래픽 또는 방화벽이 트래픽을 삭제하는 경우 발생합니다. 패킷이 많이 손실되면 Traceroute는 '목적지에 도달하지 못했습니다.'라는 오류를 표시합니다.
IPv6를 사용하여 경로 추적
'6' 옵션은 Ipv6 프로토콜을 사용하여 호스트 네트워크에 대한 경로를 추적하는 데 사용됩니다. 아래 명령을 고려하십시오.
traceroute6 google.com
위 명령은 Ipv6 프로토콜을 사용하여 'google.com'에 대한 경로를 추적합니다. 아래 출력을 고려하십시오.
IPv4를 사용하여 경로 추적
'4' 옵션은 Ipv6 프로토콜을 사용하여 호스트 네트워크에 대한 경로를 추적하는 데 사용됩니다. 아래 명령을 고려하십시오.
traceroute 4 google.com
위 명령은 Ipv6 프로토콜을 사용하여 'google.com'에 대한 경로를 추적합니다. 아래 출력을 고려하십시오.
IP 주소 및 호스트 이름 매핑 비활성화
'n' 옵션은 IP 주소와 호스트 이름 매핑을 비활성화하는 데 사용됩니다. 아래 명령을 고려하십시오.
예제 이진 검색 트리
traceroute n google.com
위 명령은 다음과 같은 출력을 생성합니다.
홉당 쿼리 수 설정
'-q' 옵션은 홉당 쿼리 수를 설정하는 데 사용됩니다. 아래 명령을 고려하십시오.
traceroute -q 2 google.com
위 명령은 다음과 같은 출력을 생성합니다.
응답 대기 시간 설정
'-w' 옵션은 Traceroute에서 응답 대기 시간을 설정하는 데 사용됩니다. 프로브에 응답하기 위한 대기 시간을 초 단위로 지정합니다. 아래 명령을 고려하십시오.
traceroute -w 1 google.com
위 명령에서 응답 대기 시간은 1초입니다. 다음과 같은 출력이 생성됩니다.
사용할 인터페이스 지정
'i' 옵션은 Traceroute가 사용해야 하는 네트워크 인터페이스를 설정하는 데 사용됩니다. 설정되지 않은 경우 라우팅 테이블에 따라 인터페이스를 설정합니다. 아래 명령을 고려하십시오.
traceroute i wlp3s0b1 google.com
위 명령은 다음과 같은 출력을 생성합니다.
초기 TTL 값 설정
기본값 외에 초기 TTL(Time to Live) 값을 설정할 수 있습니다. 일부 홉을 건너뜁니다. 일반적으로 각 테스트 세트에 대해 1, 2, 3 등으로 설정됩니다. 따라서 이를 7로 설정하면 첫 번째 테스트에서는 홉 7을 시도하고 홉을 1에서 6으로 건너뜁니다. 아래 명령을 고려하십시오.
traceroute -f 7 google.com
위 명령은 바로 7번 홉으로 이동합니다. 아래 출력을 고려하십시오.
자바의 tostring
최대 홉 수 설정
'-m' 옵션은 패킷이 대상에 도달하기 위한 최대 홉 수를 설정하는 데 사용됩니다. 최대 홉 수의 기본값은 30입니다. 아래 명령을 고려하십시오.
traceroute -m 7 google.com
위 명령은 패킷이 대상에 도달하기 위한 최대 홉을 7개로 설정합니다. 아래 출력을 고려하십시오.
도움을 받다
사용법 요약 및 지원되는 옵션이 포함된 도움말 매뉴얼을 표시하려면 아래 명령을 실행하십시오.
traceroute --help
위 명령을 실행하면 도움말이 표시됩니다. 다음과 같은 출력이 생성됩니다.
다음과 같이 man 명령을 실행하여 매뉴얼 페이지에 액세스할 수도 있습니다.
man traceroute
위의 명령은 Traceroute 명령의 매뉴얼 페이지를 표시합니다. 다음과 같이 보일 것입니다:
자세한 내용을 보려면 페이지를 스크롤하고 매뉴얼 페이지를 종료하려면 'q' 키를 누르십시오.