본문 바로가기
네트워크 (LAN,WAN)

네트워크 문제 진단을 위한 필수 테스트 방법과 도구 (명령어)

by 날으는물고기 2025. 1. 27.

네트워크 문제 진단을 위한 필수 테스트 방법과 도구 (명령어)

네트워크 통신 테스트는 네트워크 문제를 진단하고 서비스 상태를 점검하는 데 중요한 역할을 합니다. 각 프로토콜(ICMP, TCP, UDP) 및 관련 도구와 명령어 방법입니다.


1. ICMP 테스트

특징

  • ICMP는 연결 상태를 확인하거나 경로 추적을 위해 사용됩니다.
  • ICMP 기반 도구는 pingtraceroute가 대표적입니다.

명령어

  1. Ping (응답 시간 및 패킷 손실 여부 확인)
    ping <destination_IP>
    ping -c 4 <destination_IP>    # 4번만 테스트
    ping -i 0.2 <destination_IP>  # 간격 0.2초로 패킷 전송
  2. Traceroute (경로 추적)
    traceroute <destination_IP>
    traceroute -I <destination_IP>  # ICMP를 이용한 경로 추적
    • -I: ICMP 사용.
    • -m: 최대 홉 제한 설정.

주의점

  • 방화벽에서 ICMP 요청을 차단하면 결과를 받을 수 없습니다.

2. TCP 테스트

특징

  • 신뢰성 있는 연결 확인 및 서비스 상태 점검.
  • TCP 포트를 통해 특정 서비스(HTTP, SSH 등)가 동작하는지 확인.

명령어 및 도구

  1. Netcat (nc)
    nc -zv <destination_IP> <port>
    • -z: 연결 테스트.
    • -v: 상세한 출력.
    예시
    nc -zv 192.168.1.1 80
  2. Telnet
    telnet <destination_IP> <port>
    예시
    telnet 192.168.1.1 22
  3. hping3
    hping3 -S -p <port> -c <count> <destination_IP>
    • -S: TCP SYN 패킷 전송.
    • -p: 포트 지정.
    • -c: 전송 패킷 수.
    예시
    hping3 -S -p 80 -c 5 192.168.1.1
  4. curl
    curl -I http://<destination_IP>:<port>
    • HTTP/HTTPS 서비스 상태 확인.
    예시
    curl -I http://192.168.1.1:8080

장점

  • TCP 서비스(HTTP, SSH, FTP 등) 상태를 직접 확인 가능.

단점

  • UDP 기반 서비스는 확인 불가.

3. UDP 테스트

특징

  • 비연결 지향 프로토콜로 빠른 데이터 전송이 가능.
  • 응답이 없는 경우도 있기 때문에 추가 분석 필요.

명령어 및 도구

  1. Netcat (nc)
    echo "Test packet" | nc -u -v <destination_IP> <port>
    • -u: UDP 모드.
    • -v: 상세 출력.
    예시
    echo "Hello" | nc -u -v 192.168.1.1 53
  2. hping3
    hping3 -2 -p <port> -c <count> <destination_IP>
    • -2: UDP 프로토콜 사용.
    • -p: 목적지 포트.
    예시
    hping3 -2 -p 53 -c 1 8.8.8.8
  3. Nmap
    nmap -sU -p <port> <destination_IP>
    • -sU: UDP 스캔.
    예시
    nmap -sU -p 53 8.8.8.8

4. 추가 테스트 도구 및 방법

Wireshark

  • 네트워크 트래픽 분석 및 프로토콜 세부 정보 확인.
  • 특정 패킷 캡처 후 분석 가능.

Tcpdump

  • CLI 기반의 패킷 캡처 도구.
  • 특정 포트나 프로토콜에 대한 트래픽 확인.
  • 명령어
    tcpdump -i <interface> port <port>
    tcpdump -i eth0 tcp

Iperf

  • 네트워크 대역폭 및 성능 테스트 도구.
  • 서버/클라이언트 모드로 동작.
  • 명령어
    1. 서버 실행
      iperf -s
    2. 클라이언트 테스트
      iperf -c <destination_IP>

MTR

  • pingtraceroute를 결합한 도구.
  • 연결 상태 및 경로 상태를 실시간 확인 가능.
  • 명령어
    mtr <destination_IP>

5. 테스트 시 유의사항

  1. 방화벽 규칙
    • ICMP, TCP, UDP 테스트가 차단될 수 있으므로 방화벽 설정을 확인.
  2. 루트 권한 필요
    • 일부 명령어(hping3, tcpdump 등)는 루트 권한이 필요.
  3. 대체 도구
    • 문제 분석이 어려운 경우 Wireshark, Tcpdump와 같은 캡처 도구 사용.
  4. 네트워크 인터페이스 지정
    • 다중 네트워크 인터페이스 환경에서는 명령어 옵션으로 인터페이스를 지정해야 함.
      hping3 -I eth0 -p 80 -S 192.168.1.1

6. 프로토콜 및 도구 비교

프로토콜 특징 테스트 도구 주요 사용 사례
ICMP 연결 상태 점검 (비포트 기반) ping, traceroute 네트워크 연결 확인
TCP 연결 지향, 신뢰성 보장 nc, telnet, hping3 HTTP, SSH, FTP 등 서비스 점검
UDP 비연결 지향, 속도 우선 nc, hping3, nmap DNS, DHCP, SNMP 등 서비스 점검

이 방법들을 활용하면 네트워크의 다양한 측면에서 문제를 진단하고 분석할 수 있습니다. 필요에 따라 도구를 조합하여 활용하세요!

728x90

댓글