포트 번호에 대하여

2018. 1. 2. 21:11보안 & 해킹/Network


프로세스가 사용할 있는 포트 번호는 0~65535이다.

TCP/IP 어플리케이션의 숫자는 매년 증가하기에 IANA(Internet Assigned Nuumbers Authority)에서는 포트번호 주소 공간을 신중하게 관리해야한다.

 

0~1023 알려진 포트 (Well-Known Port)

  • IANA 포트 번호들을 가장 범용적인 TCP/IP 어플리케이션을 위해 번호를 예약해둔다.
  • 대부분의 시스템에서 시스템 관리자나 권한이 높은 사용자(UNIX 경우 root) 사용 있다.
  • System Port 라고 부르기도 한다.

 

1024~49151 등록된 포트 (Registered Port)

  • TCP/IP 사용하지만 RFC 표준으로 제정되지 않았은 어플리케이션 포트들이 많이 있다.
  • TCP/IP 서버 어플리케이션을 만든 모든 사람들은 이들 포트번호 하나를 IANA에게 요청할 있고, 해당 포트를 어플리케이션에게 할당할 있다.
  • 시스템의 모든 사용자는 일반적으로 Registered Port 접근할 있기 때문에 사용자 포트라고 부르기도 한다.

 

49152~65535 동적 포트 (Dynamic Port)

  • IANA 이들 포트를 예약하거나 관리하지 않는다. 누구나 등록 없이 사용할 있어서 특정 기관에서만 사용하는 사설 프로토콜에 적합하다.
  • 특수한 어플리케이션을 위한 유연성을 제공한다.

 





Ephemeral  Port(임시 포트)

TCP/UDP 계층은 현재 어떤 포트가 쓰이고 있는지 관리한다.  각 클라이언트 프로세스를 위해 랜덤 방식(pseudorandom)으로 포트번호를 할당하는데, 이때 포트의 재사용시 충돌을 최소화하기 위한 규칙이 있다. 포트 넘버의 풀을 나누어 할당한다.

예로 BSD 유닉스는 1024~4999번으로 3,976개의 임시 포트를 사용할 수 있게 했다.