[Linux] 포트 확인 실습

mommers·2026년 2월 2일

Linux

목록 보기
20/59


포트 확인 (netstat, ss)

  • 어떤 프로그램이 통신 중인가? Listening 포트 개념에 대해 확인
  • sudo ss -tulpn (또는 netstat)으로 현재 열려있는 포트 확인
  • SSH(22번), Web(80번) 5900포트가 열려있는지 확인
  • 특정 포트를 사용 중인 프로세스 이름 알아내기

SS vs netstat


netstat에 비해 ss가 더 빠르고 강력한 최신 표준(Modern Standard)이라고 합니다.

대부분 라즈베리 파이 최신 OS를 포함한 대부분의 배포판에서 netstat은 Deprecated(사용 중단 예정) 상태이며, ss가 기본입니다.

1. 기술적 차이점

특징netstat (구형)ss (신형)
소속 패키지net-tools (더 이상 업데이트 안 됨)iproute2 (현재 리눅스 표준)
데이터 출처/proc 파일 시스템 읽기Netlink API (커널 직접 통신)
속도연결이 많으면 엄청 느려짐 (텍스트 파싱)연결이 수만 개여도 빠름 (바이너리 통신)
정보량기본적인 TCP/IP 정보TCP 타이머, 큐(Queue) 상태, 메모리 사용량 등 상세 정보
  • ss인가?

netstat/proc/net/tcp 같은 텍스트 파일을 열어서 한 줄씩 읽습니다. 연결이 많으면 이 파일을 만드는 커널도 힘들고, 읽는 netstat도 힘듭니다.

반면 ss는 커널 내부의 소켓 정보를 Netlink라는 고속 인터페이스로 직접 긁어옵니다.


2. 명령어 비교

netstatss 의 옵션이 거의 똑같기 때문에 netstat 자리에 ss 만 넣으면 대부분은 호환됩니다.


모든 포트 확인 (가장 많이 씀)

  • netstat: netstat -antp
  • ss: ss -antp
    • a: All (전체)
    • n: Numeric (이름 말고 숫자로 포트 표시)
    • t: TCP만
    • p: Process (어떤 프로그램이 쓰는지 표시 - sudo 필요)

리슨 중인(열린) 포트만 보기 (서버 점검용)

  • netstat: netstat -lntp
  • ss: ss -lntp
    • l: Listening (열려있는 포트만)

메모리 사용량까지 보기 (ss만의 장점)

  • ss: ss -amtp
    • m: 소켓이 사용하는 메모리 양을 보여줍니다. (메모리 누수 잡을 때 유용).

3. ss만의 강력한 필터링 기능

grep을 안 써도 자체 필터링이 가능하다고 합니다.


# 목적지 포트가 22번(SSH)인 것만 보여줘
ss -at '( dport = :22 )'

# 상태가 ESTABLISHED(연결됨)인 것만 보여줘
ss -t state established

결론

  • 라즈베리 파이에서: netstat 명령어가 없어서 당황할 수 있지만, sudo apt install net-tools 를 통해 설치할 수 있습니다.
  • netstat 대신 ss에 익숙해지는게 좋다고 합니다.
profile
임베디드 개발자가 되기 위해 공부중입니다!

0개의 댓글