김 컴퓨터


포트 (Port) 기초

포트(Port)는 컴퓨터(호스트) 안에서 실행되고 있는 수많은 프로그램 중 어떤 프로그램이 데이터를 받아야 하는지를 구분해주는 식별 번호입니다.

IP 주소가 컴퓨터를 찾기 위한 집 주소라면, 포트 번호는 그 집 안의 방 번호(또는 수취인)에 해당합니다.


1. 포트의 역할과 범위

① 역할

네트워크를 통해 데이터 패킷이 컴퓨터에 도착했을 때, 운영체제는 패킷의 목적지 포트 번호를 확인하여 해당 번호를 사용 중인 프로그램(웹 브라우저, 메일 클라이언트, 게임 등)에게 데이터를 전달합니다.

② 범위 (0 ~ 65535)

포트 번호는 16비트로 구성되어 총 65,536개를 사용할 수 있으며, 세 가지 범위로 나뉩니다.

  1. 잘 알려진 포트 (Well-Known Ports, 0 ~ 1023): 국제 표준으로 정해진 주요 프로토콜들이 사용하는 영역입니다. (예: HTTP, FTP)
  2. 등록된 포트 (Registered Ports, 1024 ~ 49151): 특정 기업이나 응용 프로그램이 사용하는 영역입니다. (예: MySQL, Minecraft)
  3. 동적/사설 포트 (Dynamic Ports, 49152 ~ 65535): 일반 사용자의 PC에서 클라이언트 프로그램이 임시로 할당받아 사용하는 영역입니다.

[Image of IP Address vs Port Number analogy showing IP as building address and Port as room number]


2. 대표적인 포트 번호 목록

네트워크 관리나 개발에서 반드시 알아두어야 할 핵심 포트들입니다.

포트 번호 프로토콜 서비스 이름 설명
20, 21 TCP FTP 파일 전송 프로토콜 (20: 데이터, 21: 제어)
22 TCP SSH 보안 원격 접속 (리눅스 서버 관리 시 필수)
23 TCP Telnet 텍스트 기반 원격 접속 (보안에 취약하여 잘 안 씀)
25 TCP SMTP 이메일 발송 (메일 서버 간 전송)
53 UDP/TCP DNS 도메인 이름을 IP 주소로 변환
80 TCP HTTP 웹 페이지 전송 (암호화되지 않은 일반 웹)
110 TCP POP3 이메일 수신 (다운로드 후 삭제)
143 TCP IMAP 이메일 수신 (서버 동기화)
443 TCP HTTPS 보안 웹 페이지 전송 (SSL/TLS 암호화)
3306 TCP MySQL MySQL 데이터베이스 접속
3389 TCP RDP 윈도우 원격 데스크톱 연결
8080 TCP HTTP Proxy 웹 서버의 대체 포트나 프록시 서버로 자주 사용