본문 바로가기

Linux Unix/Command

[ Linux ] ping, traceroute, telnet - 네트워크 경로 및 포트 연결 확인하기

반응형

특정 서버까지 네트워크 경로가 열려 있는지 확인하는 가장 좋은 방법은 여러 도구를 조합해서 사용하는 것입니다. 목적에 따라 다르게 접근할 수 있지만, 다음은 가장 신뢰할 수 있고 널리 쓰이는 방법들이에요:


1. Ping

  • 용도: 서버가 응답 가능한 상태인지, 기본적인 연결이 되는지 확인.
  • 명령어:
  • ping [서버 IP 또는 도메인]
  • 장점: 간단하고 빠름.
  • 단점: ICMP가 막혀 있으면 실패할 수 있음 (서버가 살아있어도).

2. Traceroute (traceroute 또는 Windows에서는 tracert)

  • 용도: 서버까지 가는 중간 경로에 어디서 문제가 생기는지 확인.
  • 명령어:
  • traceroute [서버 IP 또는 도메인]
  • 장점: 어느 구간에서 문제가 발생하는지 파악 가능.
  • 단점: 일부 홉에서 응답 안 할 수 있음 (예: * * *).

3. Telnet / nc (Netcat)

  • 용도: 특정 포트로 접속 가능한지 확인 (예: 웹 서버 80/443, SSH 22 등).
  • 명령어 예시:
  • telnet [서버 IP 또는 도메인] [포트] # 또는 nc -zv [서버 IP 또는 도메인] [포트]
  • 장점: 방화벽이나 서비스 레벨에서 포트 열려 있는지 확인 가능.
  • 단점: 해당 도구가 설치돼 있어야 함.

4. curl (웹 서버 확인 시 유용)

  • 용도: 웹 서버가 실제로 응답을 하는지 확인.
  • 명령어:
  • curl -I http://[서버 주소]
  • 장점: HTTP 상태 코드 등도 확인 가능 (예: 200, 403, 503 등).

5. mtr (My Traceroute)

  • 용도: ping + traceroute 조합으로 지속적인 경로 모니터링.
  • 명령어:
  • mtr [서버 IP 또는 도메인]
  • 장점: 실시간 패킷 손실, 지연 확인 가능.
  • 단점: 설치 필요 (apt install mtr, brew install mtr 등).

6. 추천 조합

  • 1차 확인: ping + telnet 또는 nc (포트 확인)
  • 2차 분석: traceroute 또는 mtr
  • 웹 서비스라면 curl로 상태코드까지 확인

혹시 특정 서버 주소나 포트를 확인하고 싶은 게 있다면 말해줘! 그에 맞는 명령어도 더 정확히 알려줄게.

반응형