리눅스에서 ping 명령어를 통해 특정 서버와의 네트워크 연결 상태를 확인할 수 있다. ping 명령어는 ICMP(인터넷 제어 메시지 프로토콜)를 사용하여 클라이언트와 서버 간의 요청과 응답을 주고받으며, 이를 통해 두 호스트(클라이언트와 서버)의 통신 가능 여부와 연결 상태, 응답 시간을 측정할 수 있다.
일반적으로 네트워크 연결 문제 진단, 지연 시간 확인, 원격 호스트에 연결할 수 있는지를 확인하는 데 사용된다.

# 명령어 기본 문법 ping <옵션> <도메인 or ip 주소># ping 옵션 리스트 -c <count> : 지정한 횟수만큼 ping 요청 (기본적으로 핑은 무한 반복) -i <time_interval> : 핑 간격 설정 (기본 값은 1초, 단위 : 초) -W <time_out> : 응답 대기시간 설정 (응답 시간 설정 후 응답이 없으면 타임 아웃 오류 표시, 단위 : 초) -s <size> : ICMP 패킷의 크기 설정 (기본 값은 56byte) -t <TTL> : ping 패킷의 TTL 설정 (요청 TTL 설정, 기본 값은 64, 1~255 사이 값으로 설정 가능)# 네이버와의 ping 확인 ping naver.com
ping명령어의 출력 내용을 분석하면 다음과 같다.
root@8537f95009c9:/tmp# ping naver.com PING naver.com (223.130.192.248) 56(84) bytes of data. 64 bytes from 223.130.192.248: icmp_seq=1 ttl=63 time=0.780 ms
PING naver.com (223.130.192.248) 56(84) bytes of data.
64 bytes from 223.130.192.248: icmp_seq=1 ttl=63 time=0.780 ms
리눅스에서 traceroute 명령어를 통해 요청 패킷이 목적지(서버)까지 이동하는 경로를 추적할 수 있다.
traceroute는 네트워크 상에서 패킷이 어떤 라우터들을 거쳐서 목적지까지 도달하는지를 확인일반적으로 클라이언트가 특정 서버에 요청 패킷을 보낼 때, 이를 한 번에 서버로 전달하지 않는다. 요청 패킷은 목적지 서버에 도착하기 위해 여러 홉(Hops)을 거쳐서 도착하는 게 일반적이다.
traceroute 명령어의 출력 결과를 통해 병목 현상, 지연 시간 측정, 패킷 손실이 발생 위치 파악 등 네트워크 문제를 해결하는 데 사용한다.
traceroute는 ICMP 패킷 또는 UDP 패킷을 사용하여 목적지 까지의 경로를 추적한다. 패킷은 각 홉을 거칠 때마다 TTL 값을 증가시키며, 이를 통해 목적지 경로상의 각 홉을 추적할 수 있다.
# 명령어 기본 문법 traceroute <옵션> <도메인 or ip 주소># traceroute 옵션 리스트 -n : 호스트 이름 확인 없이 IP 주소 표시 -m <hops> : 추적할 최대 홉 설정 -q <queries> : 홉에 전송할 패킷 수 설정 (기본 한 개 홉에 3개 전송) -w <time_out> : 응답을 기다리는 시간 설정 -f <first_ttl> : 초기 TTL 설정 -I : ICMP 프로토콜 사용 -T : TCP 프로토콜 사용
ping명령어의 출력 내용을 분석하면 다음과 같다.
root@8537f95009c9:/tmp# traceroute google.com traceroute to google.com (142.250.180.78), 30 hops max, 60 byte packets 1 192.168.1.1 (192.168.1.1) 1.094 ms 1.219 ms 1.421 ms 2 10.0.0.1 (10.0.0.1) 2.234 ms 2.435 ms 2.569 ms 3 172.217.1.1 (172.217.1.1) 10.123 ms 10.456 ms 10.567 ms 4 142.250.180.78 (142.250.180.78) 20.876 ms 21.134 ms 21.312 ms 5 * * * ...
traceroute to google.com (142.250.180.78), 30 hops max, 60 byte packets
1 192.168.1.1 (192.168.1.1) 1.094 ms 1.219 ms 1.421 ms
(1개 홉에 기본 3개 패킷을 전송하기 때문에 응답 시간이 3개 출력)
5 * * *
방화벽 및 보안, 트래픽 제한, 네트워크 장비 설정, 응답 시간 초과, 패킷 손실 등의 다양한 이유로 응답 결과를 얻지 못하는 경우 Asterisks(*)로 값을 표시한다.