Over the limit

Ping, Curl, Telnet 사용법과 특징 본문

Network

Ping, Curl, Telnet 사용법과 특징

ellapk 2024. 10. 11. 14:14

[ping]

 

ping은 네트워크 연결 상태를 확인하기 위한 도구로, ICMP (TCP/IP에서 IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜) 패킷을 보내서 대상 호스트가 응답하는지 확인한다.

주로 네트워크 상태나 지연 시간을 측정하기 위해 사용된다.

 

언급한 ICMP 프로토콜이 3계층에 속하는 프로토콜이므로, 4계층의 Transport layer에서 사용하는 port 정보를 이용하지 않는다.

그래서 ping 명령어로는 포트가 열려있는지 까지는 확인할 수 없다.

 

 

사용법

ping [옵션] 대상_IP_또는_도메인

 

 

옵션

 

  • -c [횟수]: 특정 횟수만큼 핑을 보냄 (리눅스)
  • -t [횟수]: TTL(Time To Live) 값을 설정하여 패킷이 목적지까지 갈 수 있는 홉의 수를 제한 (윈도우는 -n)

 

주요 기능:

  • 호스트 간 연결 상태를 확인한다.
  • 네트워크 지연 시간을 측정한다.
  • 네트워크 경로 상의 문제를 확인할 수 있다.

 

 

 

[curl]

 

curl은 명령줄에서 데이터를 전송하거나 가져오기 위한 도구로, HTTP,FTP등 다양한 프로토콜을 지원한다. 주로 웹 서버에서 데이터를 다운로드 하거나 API 요청을 테스트할 때 사용한다.

 

즉, curl을 활용하여 endpoint에 HTTP 프로토콜을 활용하여 PUT,POST 등의 요청을 보내고 그 결과를 확인할 수 있다.

 

 

사용법

curl [옵션] URL

 

 

 

옵션:

  • -X [METHOD]: HTTP 요청 메서드 지정 (GET, POST, PUT 등)
  • -d [데이터]: POST 요청 시 보낼 데이터
  • -H [헤더]: HTTP 헤더 설정
  • -o [파일명]: 응답 데이터를 파일로 저장
  • -I: HTTP 응답 헤더만 확인
  • -L: 리다이렉션을 따라가도록 설정

 

주요 기능:

  • API 테스트 및 HTTP 요청/응답 확인
  • 웹 페이지나 파일 다운로드
  • POST, PUT 등 다양한 HTTP 메서드 지원
  • 다양한 프로토콜(FTP, SMTP 등)을 통한 데이터 전송

 

 

 

[Telnet]

 

telnet은 원격 호스트의 특정 포트에 연결하기 위한 프로토콜로, 주로 TCP 포트가 열려있는지 확인하거나 원격 서버에 접속하여 명령을 실행할 때 사용한다. SSH와는 달리 보안에 취약하므로 민감한 정보 전송 시에는 적합하지 않다.

 

ping은 단지 요청을 받아서 분석하는거라면 telnet을 사용하면 컴퓨터와 컴퓨터 사이를 연결해주는 명령어이다.

윈도우에서 사용하기 위해선 설정을 통해 telnet, 맥에서는 brew를 통해 활성화 시켜야한다.

 

 

사용법

telnet [호스트] [포트]

 

 

주요 기능:

  • 원격 서버에 명령을 실행할 수 있다.
  • 특정 포트가 열려 있는지 확인할 수 있다.
  • 네트워크 문제를 진단하거나 서비스의 가용성을 확인할 수 있다.

 

 

 

 

 

공통점:

  • 세 가지 도구 모두 네트워크 상태 확인 및 통신 관련 문제를 진단하는 데 사용한다.
  • 네트워크 상의 다른 호스트나 서버와 통신하기 위해 IP 주소 또는 도메인을 사용한다.
  • 서버와 클라이언트 간의 네트워크 연결 상태를 확인하거나 관리하는 도구로 사용할 수 있다.

 

차이점:

  • ping은 ICMP 패킷을 사용하여 단순히 네트워크 연결 상태와 응답 속도를 확인하는 도구이다. 데이터를 직접 주고받거나 포트와 상호작용하지 않는다.
  • curl은 다양한 프로토콜을 통해 웹 서버나 API와 데이터를 주고받는 데 사용된다. 파일을 다운로드하거나 http 요청을 수행하는 데 특화되어 있다.
  • telnet은 tcp연결을 통해 특정 포트로 접속하여 원격으로 명령을 실행하거나 포트가 열려있는지 확인할 수 있다. 주로 포트 테스트나 원격 명령어 실행에 적합하다.

'Network' 카테고리의 다른 글

Traceroute로 네트워크 경로 추적하기  (0) 2025.02.07
HSTS로 HTTPS 강제하기  (0) 2025.02.07
윈도우 방화벽에서 특정 TCP 포트 열기  (0) 2024.10.11
클라우드 아키텍쳐 기본  (0) 2024.09.12
Rounting 라우팅이란  (2) 2024.09.05