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

리눅스에 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

  • [Linux] lsof 명령어: 실행 중 파일 정보 출력

    lsof 명령어는 lisf open files의 약자로 리눅스 시스템에서 열려 있는 파일의 정보를 출력해 주는 명령어입니다. lsof 명령어는 파일을 포함하여 디렉터리, 네트워크 소켓, 파이프 등 프로세스가 사용 중인 다양한 리소스도 조회할 수 있습니다. 목차✅ net-tools 설치✅ netstat 명령어◼ netstat 명령어 옵션◼ netstat 실행 및 설명✅ ifconfig 명령어🔲 이더넷, 루프백 인터페이스 비교 ✅ lsof 명령어…

  • df 명령어

    df(Disk Free)는 마운트 된 장치 전체 용량, 사용 용량, 여유 용량을 확인할 수 있습니다. 파일 시스템(Filesystem), 디스크 크기(Size), 사용량(Used), 여유공간(Avail), 사용률(Use%), 마운트지점(Mounted on)을 순서로 확인할 수 있습니다. 목차✅ net-tools 설치✅ netstat 명령어◼ netstat 명령어 옵션◼ netstat 실행 및 설명✅ ifconfig 명령어🔲 이더넷, 루프백 인터페이스 비교df 명령어 옵션 웹사이트 접속이 안되는 오류 발생 시…

  • 리눅스 mkdir 명령어 | Linux 디렉토리 생성하기

    리눅스 mkdir 명령어는 Make Directory의 약자로 리눅스에서 디렉토리(폴더)를 생성하는 명령어입니다. 목차✅ net-tools 설치✅ netstat 명령어◼ netstat 명령어 옵션◼ netstat 실행 및 설명✅ ifconfig 명령어🔲 이더넷, 루프백 인터페이스 비교✅ 리눅스 mkdir 명령어 기본 사용법 경로 미 지정 시 현재 위치에서 디렉토리가 생성됩니다. mkdir 명령어 옵션 설명 -m 디렉토리 생성 시 권한(퍼미션) 설정(기본 값: 755)…

  • 리눅스 wget 명령어

    wget 명령어는 웹의 다운로드 링크를 리눅스 커멘드라인에서 실행해 다운로드를 할 수 있는 명령어입니다. HTTP, HTTPS, FTP 프로토콜을 이용해서 웹 서버에서 다운로드가 가능합니다. 목차✅ net-tools 설치✅ netstat 명령어◼ netstat 명령어 옵션◼ netstat 실행 및 설명✅ ifconfig 명령어🔲 이더넷, 루프백 인터페이스 비교wget 설치하기 레드헷 계열에서 사용하는 패키지 매니저인 yum으로 wget 설치를 진행합니다. 기본 다운로드 명령입니다….

  • [Linux] 리눅스 vi 명령어 정리 | Vim 3가지 모드 및 비주얼 모드

    리눅스 터미널에서 ‘.txt’, ‘.conf’ 등의 ASCII 파일을 편집하기 위해 vi 편집기 명령어를 사용합니다. vi 편집기는 명령모드 입력모드와 저장 및 종료 후 치환하는 리눅스 vi 명령어는 익숙해지면 매우 빠른 작업이 가능하기 때문에 효율적인 업무를 진행할 수 있습니다. 목차✅ net-tools 설치✅ netstat 명령어◼ netstat 명령어 옵션◼ netstat 실행 및 설명✅ ifconfig 명령어🔲 이더넷, 루프백 인터페이스…

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

    리눅스 who 명령어는 현재 서버에 로그인한 사용자 리스트를 보여주는 명령어입니다. w 명령어는 현재 시스템에 로그인한 사용자와 사용자의 작업 내용을 보여주는 명령어로 각각의 차이가 있습니다. 목차✅ net-tools 설치✅ netstat 명령어◼ netstat 명령어 옵션◼ netstat 실행 및 설명✅ ifconfig 명령어🔲 이더넷, 루프백 인터페이스 비교✅ 리눅스 who 명령어 현재 접속 사용자(USER) 터미널 유형(TTY) 접속 시간 및…

답글 남기기

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

Prove your humanity: 8   +   4   =