포트번호란?
- TCP/IP에서 1~2계층에서는 MAC address로 판별하고, 3계층에서는 IP address로 판별한다. 이렇게 MAC과 IP를 사용해서 상대 컴퓨터까지 도달했으나, 데이터를 받을 프로세스가 어떤것인지 알아야 전송됩니다. 그때 필요한 번호가 Port Number이다.
- 포트번호는 TCP/IP 네트워크에서 특정 프로세스나 서비스를 식별하기 위해 사용되는 숫자이다.
- TCP/IP 프로토콜 스택은 컴퓨터나 네트워크 장치에서 동작하는 다양한 프로세스 또는 서비스 간의 통신을 관리하는데, 각 프로세스는 포트번호를 통해 고유하게 식별된다.
포트번호 특징
- Port번호는 16bits로 이루어져 있다.
- 2^16이므로 65536개의 번호가 존재할 수 있다.
- 포트번호는 구역마다 나누어서 관리한다.
- 0 ~ 1023번 : Well Known Ports(IANA에서 할당한 TCP,UDP포트)으로 표준화 된 서비스에 할당된다.(유명한 서버, 특정 서버들이다.)
- 1024 ~ 49151번 : Registered Ports로 알려져있으며 특정 어플리케이션이나 프로세스에 예약된다.(기관이나 사업자들을 위해 IANA에서 관리하는 포트이다.)
- 49152 ~ 65535번 : Dynamic or Private Ports로 알려져 있으며 일시적인 연결에 사용되거나, 동적으로 할당될 수 있다.(일반 사용자들이 자유롭게 쓸 수 있는 포트이다.)
유명한 포트번호
- FTP(File Transfer Protocol) - 포트번호 21번
FTP는 파일 전송을 위한 프로토콜로 클라이언트와 서버간의 파일 전송을 지원한다. 인증, 파일관리, 디렉토리 탐색등을 제공한다.
- SSH(Secure Shell) - 포트번호 22번
SSH는 원격로그인과 안전한 셸 접속을 위한 프로토콜이다. SSH는 네트워크를 통해 안전하게 로그인하고 원격 시스템에서 명령을 실행할 수 있는 암호화된 연결을 제공한다. 데이터의 기밀성과 무결성을 보장한다.
- Telnet - 포트번호 23번
Telnet은 원격로그인을 위한 프로토콜로, 클라이언트가 원격시스템에 접속하여 명령을 실행 할 수 있게 한다. 암호화되지 않은 텍스트 기반 통신을 사용하기 때문에 보안에 취약하다. 대부분 SSH와 같은 보안프로토콜로 대체되었다.
- SMTP(Simple Mail Transfer Protocol) - 포트번호 25번
SMTP는 이메일 전송을 위한 프로토콜로, 이메일 클라이언트가 이메일 서버로 메일을 보내는데 사용된다. 이메일의 발신, 수신, 라우팅을 처리하여 이메일 통신을 가능하게 한다.
- DNS(Domain Mail Transfer Protocol) - 포트번호 53번
DNS는 도메인 이름을 IP주소로 해석하는 프로토콜로, 네트워크에서 도메인 이름을 IP주소로 변환하고, 반대로 IP주소를 도메인 이름으로 변환하는 기능을 수행, 웹 브라우징, 이메일 송수인, 네트워크 서비스에 필수적인 역할
- HTTP(HyperText Transfer Protocol) - 포트번호 80번
HTTP는 웹 페이지 요청과 응답을 위한 프로토콜로, 클라이언트가 웹 서버에게 웹페이지를 요청하고, 서버는 해당페이지를 전달하는데 사용. 웹 브라우징 웹 어플리케이션과의 통신 등 웹 기반 서비스에 많이 이용됨.
- HTTPS(HTTP Secure) - 포트번호 443번
HTTPS는 HTTP통신을 위한 프로토콜로 HTTP의 보안버전이다. SSL혹은 TLS프로토콜을 사용하여 통신을 암호화하고 보안적인 웹 통신을 제공한다. 온라인 결제, 로그인 등 보안이 필요한 웹서비스에 사용된다
- SNMP(Simple Network Management Protocol) - 포트번호 161번
SNMP는 네트워크 장치를 관리하기 위한 프로토콜로, 네트워크 장치의 상태, 성능, 구성정보를 모니터링하고 관리하기 위해 사용됨. 네트워크 장치 사이의 통신에 사용되며, 네트워크 장치간의 정보 교환을 가능하게 한다.