리눅스에서 네트워크 관련 문제를 진단하거나 설정을 변경할 때 자주 사용하는 명령어들이 있습니다. 이번 포스팅에서는 ip, ifconfig, ping, traceroute, netstat 명령어를 자세히 살펴보겠습니다.
1. ip 명령어
ip 명령어는 네트워크 인터페이스와 관련된 정보를 조회하고 설정할 때 사용됩니다. 최신 리눅스 배포판에서는 ifconfig 대신 ip 명령어를 권장합니다.
1.1 IP 주소 확인
ip addr show
또는
ip a
네트워크 인터페이스의 IP 주소 및 상태를 확인할 수 있습니다.
1.2 특정 인터페이스의 정보 확인
ip addr show eth0
eth0 인터페이스의 정보를 출력합니다.
1.3 라우팅 테이블 확인
ip route show
라우팅 테이블을 확인하여 패킷이 어떻게 전달되는지 확인할 수 있습니다.
1.4 네트워크 인터페이스 활성화 및 비활성화
ip link set eth0 up # 인터페이스 활성화
ip link set eth0 down # 인터페이스 비활성화
2. ifconfig 명령어
ifconfig는 예전부터 사용되던 네트워크 인터페이스 관리 명령어입니다. 최신 리눅스에서는 ip 명령어로 대체되었지만, 여전히 많이 사용됩니다.
2.1 네트워크 인터페이스 정보 확인
ifconfig
인터페이스의 IP 주소, MAC 주소, 네트워크 상태 등을 출력합니다.
2.2 특정 인터페이스의 정보 확인
ifconfig eth0
eth0의 네트워크 정보를 확인할 수 있습니다.
2.3 인터페이스 활성화 및 비활성화
ifconfig eth0 up # 인터페이스 활성화
ifconfig eth0 down # 인터페이스 비활성화
2.4 IP 주소 변경
ifconfig eth0 192.168.1.100 netmask 255.255.255.0
eth0 인터페이스의 IP 주소를 192.168.1.100으로 변경합니다.
3. ping 명령어
ping 명령어는 네트워크 연결 상태를 확인할 때 사용됩니다. 특정 IP나 도메인에 패킷을 보내 응답을 확인하는 방식입니다.
3.1 기본 사용법
ping google.com
목적지 서버에 연결할 수 있는지 확인합니다.
3.2 특정 횟수만큼 요청 보내기
ping -c 4 google.com
4번만 패킷을 전송한 후 종료됩니다.
3.3 패킷 크기 변경
ping -s 1000 google.com
패킷 크기를 1000바이트로 설정하여 전송합니다.
4. traceroute 명령어
traceroute는 목적지까지의 경로를 추적하는 명령어입니다. 네트워크 경로에서 어느 지점에서 지연이 발생하는지 확인할 수 있습니다.
4.1 기본 사용법
traceroute google.com
google.com까지의 네트워크 경로를 표시합니다.
4.2 패킷 크기 변경
traceroute -s 1000 google.com
패킷 크기를 1000바이트로 설정하여 경로를 추적합니다.
4.3 ICMP 프로토콜 사용 (Windows와 동일한 방식)
traceroute -I google.com
ICMP 패킷을 사용하여 추적합니다.
5. netstat 명령어
netstat는 네트워크 연결 상태, 라우팅 테이블, 인터페이스 상태 등을 확인할 때 사용됩니다.
5.1 현재 활성화된 연결 확인
netstat -tuln
-t : TCP 연결 보기
-u : UDP 연결 보기
-l : Listening 중인 포트 보기
-n : 숫자 형식으로 출력하기 (호스트명 해석하지 않음)
5.2 특정 포트의 사용 상태 확인
netstat -an | grep :80
포트 80을 사용하는 연결을 확인할 수 있습니다.
5.3 현재 연결된 IP 주소 확인
netstat -antp
현재 TCP 연결과 프로세스를 확인할 수 있습니다.
5.4 라우팅 테이블 확인
netstat -r
라우팅 테이블 정보를 출력합니다.
결론
리눅스에서 네트워크 상태를 확인하고 문제를 해결할 때 ip, ifconfig, ping, traceroute, netstat 명령어는 필수적으로 사용됩니다. 최신 리눅스에서는 ip 명령어가 기본적으로 사용되므로, 기존 ifconfig보다 ip 명령어를 익히는 것이 좋습니다.
이 명령어들을 숙지하면 네트워크 문제 해결에 큰 도움이 될 것입니다!
'운영체제 > 리눅스(CentOS)' 카테고리의 다른 글
리눅스 서비스 및 데몬 관리: systemd, init, service, systemctl (0) | 2025.03.30 |
---|---|
리눅스에서 소프트웨어 설치와 관리: apt, yum, dnf, snap, pacman 완벽 가이드 (0) | 2025.03.30 |
리눅스 프로세스 관리 자세한 가이드 (0) | 2025.03.28 |
리눅스 사용자 및 그룹 관리 완벽 가이드 (0) | 2025.03.27 |
Linux에서 파일 압축 및 압축 해제 방법 총정리 (tar, zip, gzip, bzip2) (0) | 2025.03.26 |