리눅스 netstat 명령어, ifconfig 명령어

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

리눅스에 netstat 명령어 및 ifconfig 명령어를 실행하기 위해 리눅스 서버에 명령어 실행을 위한 net-tools이 설치되어 있어야 합니다.

  • net-tools
  • netstat 명령어, ifconfig 명령어
  • 네트워크 명령어

✅ net-tools 설치

# CentOS
sudo yum -y install net-tools
# Ubuntu
sudo apt-get -y install net-tools
# Rocky Linux
sudo dnf -y install net-tools

✅ netstat 명령어

netstat[network statistics:네트워크 통계]은 네트워크 상태를 확인하는 명령어입니다. 어떤 포트가 열려있고, 어떻게 사용되고 있는지와 해킹 시도가 있거나 자신의 컴퓨터가 좀비 PC인지 확인할 수 있습니다.

◼ netstat 명령어 옵션

◼ netstat 실행 및 설명

netstat 명령어를 실행해서 네트워크 연결상태, 라우팅테이블, 인터페이스 상태 등을 확인할 수 있습니다.

netstat -antpl
# 현재의 모든 네트웍 상태를 보여주며(-a), 다른 PC와 연결된(Established) 상태 및 대기(Listeniing) 중인 모든 포트(-n) / TCP 프로토콜(-t) / 포트를 사용하는 프로세스와 프로그램(-p) / 대기중인 네트워크 (-l) 
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1103/sshd: /usr/sbi 
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      6391/mariadbd       
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::80                   :::*                    LISTEN      10875/httpd         
tcp6       0      0 :::3306                 :::*                    LISTEN      6391/mariadbd       
tcp6       0      0 10.0.0.99:80            45.xx.xx.xxx:40040      TIME_WAIT   -                   
tcp6       0      0 10.0.0.99:80            209.xx.xx.xxx:62754     FIN_WAIT2   -                
  • Proto: 프로토콜 종류
  • Recv-Q: process가 받고 있는 바이트 값
  • Send-Q: process가 현재 보내는 바이트 값
  • Local Address: 출발지 주소 및 포트 번호
  • Local Address에서 IP 상태가 0.0.0.0.0으로 되어 있다면 모든 접속이 허용된 상태이며, 127.0.0.1로 되어있다면 loopback(돌아오다) IP로 자기 자신만 호출이 가능한 상태.
  • Foreign Address: 목적지 주소 및 포트
  • PID/Program name: 프로세스 및 프로그램 이름
  • State: 포트의 상태 값
  • LISTEN: 대기 포트. 포트가 열려 있음.
  • CLOSED: 완전히 연결이 종료된 상태
  • CLOSE_WAIT: 원격의 연결 요청을 받고 연결 종료 대기 상태
  • CLOSING:
  • ESTABLISHED: 서로 연결된 상태(연결 완료)
  • TIME_WAIT: 이미 해당 사이트와 연결이 종료되었거나 다음 연결을 위한 대기 상태
  • FIN_WAIT1:
  • FIN_WAIT2:
  •  LAST_ACK: 연결 종료 및 승인을 기다리는 상태
  • UNKNOWN:
~]# netstat -nap | grep ㅣLITEN
# 대기중(LISTEN)인 포트 보기 / 열려 있는 모든 포트(-n)를 네트워크(-a)와 프로세스와 프로그램(-p)과 함께 보기
etstat -nap | grep LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1103/sshd: /usr/sbi 
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      6391/mariadbd       
tcp6       0      0 :::22                   :::*                    LISTEN      1103/sshd: /usr/sbi 
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::80                   :::*                    LISTEN      10875/httpd         
tcp6       0      0 :::3306                 :::*                    LISTEN      6391/mariadbd       

~]# netstat -nap | grep 22
# 22 포트 보기
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1103/sshd: /usr/sbi 
tcp        0      0 10.0.0.99:22            122.43.208.254:50041    ESTABLISHED 1604/sshd: rocky [p 
tcp        0     52 10.0.0.99:22            122.43.208.254:49976    ESTABLISHED 1519/sshd: rocky [p 
tcp6       0      0 :::22                   :::*                    LISTEN      1103/sshd: /usr/sbi 
unix  2      [ ]         DGRAM      CONNECTED     22579    972/chronyd          /run/chrony/chronyd.sock
unix  2      [ ACC ]     STREAM     LISTENING     22866    1004/gssproxy        /run/gssproxy.sock

~]# netstat -nat
# TCP 프로토콜 네트워크 연결 상태 확인 / 열려 있는 모든 포트(-n)를 네트워크(-a)를 TCP 프로토콜과 보기(-t)
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN     
### 생략 ###
tcp       32      0 10.0.0.99:32998         140.204.30.137:443      CLOSE_WAIT 
tcp        0      0 10.0.0.99:22            122.43.208.254:50041    ESTABLISHED
tcp        0      0 10.0.0.99:22            122.43.208.254:50057    ESTABLISHED
~]# netstat -nat | grep 80
tcp        1      0 10.0.0.99:33448         169.254.169.254:80      CLOSE_WAIT 
### 생략 ###
tcp        1      0 10.0.0.99:33090         169.254.169.254:80      CLOSE_WAIT 
tcp6       0      0 :::80                   :::*                    LISTEN     

✅ ifconfig 명령어

config 명령어는 리눅스 운영체제에서 네트워크 인터페이스의 설정 및 관리를 위한 명령어입니다. 이를 통해 현재 네트워크 구성 정보를 확인하고, IP 주소, 넷마스크, 브로드캐스트 주소 설정, 별칭 생성, 하드웨어 주소 설정, 인터페이스를 활성화 또는 비활성화할 수 있습니다.

리눅스 ifconfig 명령어
enp0s3 (이더넷 인터페이스)lo (루프백 인터페이스)

항목

설명

inet 127.0.0.1

루프백용 IPv4 주소

netmask 255.0.0.0

루프백용 서브넷 마스크

inet6 ::1

루프백용 IPv6 주소

loop

장치 타입이 루프백임을 나타냄

RX/TX packets 0

루프백을 통한 데이터 송수신 수

RX/TX bytes 0

송수신된 바이트 수

errors, dropped 등

루프백 인터페이스의 오류 상태

항목

설명

flags=4163<…>

인터페이스 상태 및 기능 (UP, BROADCAST 등)

mtu 1500

Maximum Transmission Unit, 최대 전송 단위

inet 192.168.45.200

IPv4 주소

netmask 255.255.255.0

서브넷 마스크

broadcast 192.168.45.255

브로드캐스트 주소

inet6 …

IPv6 주소

ether 08:00:27:71:ab:2c

MAC 주소 (물리적 주소)

txqueuelen 1000

송신 대기열 길이

RX packets 1420

수신한 패킷 수

RX bytes 462896

수신한 총 바이트 수

RX errors 0

수신 중 발생한 오류 수

TX packets 1057

전송한 패킷 수

TX bytes 121642

전송한 총 바이트 수

TX errors 0

전송 중 발생한 오류 수

dropped, overruns, collisions

네트워크 전송 중 발생한 문제들

🔲 이더넷, 루프백 인터페이스 비교

구분

이더넷 인터페이스 (예: enp0s3)

루프백 인터페이스 (예: lo)

역할

실제 네트워크 통신 (외부와 데이터 송수신)

자기 자신과의 통신 테스트

IP 주소

DHCP 또는 수동으로 할당된 외부용 IP (예: 192.168.x.x)

고정된 내부 IP (127.0.0.1, ::1)

용도

인터넷, 로컬 네트워크 등 외부 장치와 통신

시스템 내부 테스트, 애플리케이션 간 통신

물리적 장치

실제 NIC(Network Interface Card)

없음 (가상 인터페이스)

전형적인 사용 예

웹 서버, SSH 접속 등 외부 서비스

ping 127.0.0.1, DB서버 로컬 접속 등

주로 커맨드 라인에서 네트워크 설정을 수행하는 데 사용됩니다.

# 모든 네트워크 정보 표시 #         
ifconfig -a

eth0      Link encap:Ethernet  HWaddr 00:0B:CE:1D:19:5A
          inet addr:172.31.0.23  Bcast:172.16.25.63  Mask:255.255.255.224
          inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2344927 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2220777 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:293839516 (280.2 MiB)  TX bytes:1043721606 (995.3 MiB)
          Interrupt:185 Memory:f7fe0000-f7ff0000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:5022927 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5022927 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2175739488 (2.0 GiB)  TX bytes:2176012488 (2.0 GiB)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.1.1.1  P-t-P:10.1.1.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
~]# ifconfig eth0
#특정 네트워크 설정 보기
eth0      Link encap:Ethernet  HWaddr 00:0B:CE:1D:19:5A
          inet addr:172.31.0.23  Bcast:172.16.25.63  Mask:255.255.255.224
          inet6 addr: fe80::20b:cdff:fe1c:185a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2344927 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2220777 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:293839516 (280.2 MiB)  TX bytes:1043721606 (995.3 MiB)
          Interrupt:185 Memory:f7fe0000-f7ff0000
### 명령어 옵션 ###
 네트워크 인터페이스 비활성화
~]# ifconfig eth0 down
~]# ifdown eth0
 네트워크 인터페이스에 IP 주소를 할당
~]# ifconfig eth0 172.31.0.23
 네트워크 인터페이스에 넷마스크를 할당
~]# ifconfig eth0 netmask 255.255.255.224
 네트워크 인터페이스에 브로드캐스트를 할당
~]# ifconfig eth0 broadcast 172.31.0.23
 네트워크 인터페이스에 IP, 넷마스크  브로드캐스트를 할당
~]# ifconfig eth0 172.31.0.23 netmask 255.255.255.224 broadcast 172.31.0.23
 네트워크 인터페이스의 MTU 변경
~]# ifconfig eth0 mtu 1000
 네트워크 인터페이스의 MAC 주소
~]#ifconfig eth0 hw ether AC:BE:1C:32:AE:OF

ℹ️ 제휴 안내
본 사이트의 콘텐츠에는 제휴 링크가 포함되어 있습니다. 방문자가 이 링크를 통해 상품 또는 서비스를 구매하면 본 사이트는 판매처로부터 수수료를 지급받습니다. 이 과정에서 구매자가 지불하는 금액(이벤트 할인 시 금액이 내려갑니다↓)은 오르지 않습니다. 게시된 가격·할인·재고 정보는 작성 시점 기준이며 실제와 다를 수 있으므로, 구매 전 판매처에서 최종 확인하시기 바랍니다. 상품 선정과 평가는 자체 기준에 따라 작성되며, 수수료 지급 여부가 소개 순서나 평가 내용에 영향을 주지 않습니다.

Similar Posts

  • 리눅스 kill 명령어[kill -9 PID]

    리눅스 kill 명령어는 사용 중인 프로세스를 종료하는 명령어입니다. 터미널에서 프로세스에 시그널(Signal)을 보내서 프로세스를 종료합니다. 프로그램이 정지하거나 응답하지 않는 경우 일반적인 종료가 되지 않는 경우 등에 따라 명령어를 실행하게 됩니다. kill process는 사용 시 중요한 시스템 프로세스를 종료 시키면 시스템이 불안정해질 수 있기 때문에 주의해서 사용해야 합니다. ✅ 리눅스 kill 명령어 기본 사용 방법…

  • certbot 명령어(인증서 관리 및 삭제)

    Alma Linux에서 이 사이트에 Certbot 설치 및 갱신 설치를 해 진행하는 중 인증서 삭제 후 재설치를 할 이유가 생겨 삭제와 함께 나머지 Certbot 명령어 사용법에 대해 체크하게 되었습니다. certbot 명령어는 다음 페이지에서 확인했습니다. ✅ certbot 명령어: 인증서 관리 사용 중인 인증서 목록을 보려면 다음 명령어를 입력합니다. ✅ 기존 인증서 재생성 및 업데이트 certonly…

  • [Linux] ip 명령어 : 네트워크 인터페이스 및 설정 관리

    ip 명령어는 리눅스에서 네트워크를 관리할 때 사용되는 주요 도구로, 다양한 네트워크 작업을 수행할 수 있습니다. ip 명령어는 네트워크 인터페이스의 상태를 확인하거나 활성화 및 비활성화 할 수 있으며, IP 주소를 확인하거나 수동으로 추가 및 삭제하는 작업도 가능합니다. 또한 라우팅 테이블을 조회하고 경로를 추가하거나 제거하는 등의 라우팅 관리, ARP 테이블 확인 및 수정, 터널링 설정…

  • 리눅스 who, w 명령어 & user 명령어

    리눅스 who 명령어는 현재 서버에 로그인한 사용자 리스트를 보여주는 명령어입니다. w 명령어는 현재 시스템에 로그인한 사용자와 사용자의 작업 내용을 보여주는 명령어로 각각의 차이가 있습니다. ✅ 리눅스 who 명령어 현재 접속 사용자(USER) 터미널 유형(TTY) 접속 시간 및 IP rocky pts/0, pts/1 .. 2070-02-09 10:15 (xxx.xx.xx8.254) ✅ 리눅스 w 명령어 w 명령어 확인 정보 설명…

  • [Linux] stat 명령어 : 파일&파일 시스템 확인

    리눅스 stat 명령어는 파일 및 파일 시스템의 상태를 보여주는 명령어입니다. 파일에 대한 자세한 정보가 필요할 때 사용합니다. ✅ stat 명령어 기본 사용 방법 ✅ 명령어 옵션 ✅사용 예시 🔲 파일 시스템의 정보 출력: -f

  • 리눅스 uptime 명령어(서버 가동 시간&1,5,15 평균 로드 확인)

    리눅스 uptime 명령어는 시스템의 평균 부하율과 서버의 가동 시간을 확인하는 명령어입니다. 서버의 부팅 시간을 알고 싶을 때, 최근 15분 동안의 평균 로드를 통해 부하율을 알고 싶을 때 사용하는 명령어임을 알 수 있습니다. ✅ 리눅스 uptime 명령어 기본 사용법과 설명 총 4개의 컬럼으로 나뉘는 것을 알 수 있습니다. ✅ 리눅스 uptime 옵션

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 7   +   10   =