상세 컨텐츠

본문 제목

[Network] Port란? 포트 범위와 포트 포워딩

카테고리 없음

by choiDev 2024. 3. 16. 13:35

본문

Port 란?

Port는 네트워크 통신에서 서비스나, 프로세스를 식별하는 논리적인 개념입니다. 

 

1. 네트워크 통신은 IP주소로 컴퓨터를 식별하고 Port번호로 특정 서비스나, 프로세스를 식별합니다.

 

즉 URL입력했을때 서버에서 자원을 획득하러 가는 과정을 예시를 들자면

https://www.naver.com -> ip/port는 10.32.0.1:443  일거고

이때 443포트는 구동중인 서버 프로세스 식별자이며 

IP로 PC를 찾고 > PORT로 서버 프로그램으로 찾아가 요청을 합니다.

이과정에서 꼭 443을 사용하지 않아도 되며

다른 포트를 사용할수있도록 등록한뒤 Port forwading을 통해

80포트로 들어와도 443으로 포워딩을 하여 한 Port만 쳐다 보도록 처리가 가능합니다.

Port forwading(포트 포워딩)이란? 
네트워크 통신중 외부에서 들어오는 통신의 특정포트의 통신을 네트워크 설정에 지정한 것 포트로 전달하는 기술입니다.
이와 같은 포트 포워딩은 80포트로 들어온 HTTP 통신을 HTTPS인 443포트로 포워딩하여 
보안강화 및 웹페이지 노출등에 긍정적인 영향을 줄 수 있습니다.

* 80 포트로 통신하는경우 웹브라우저에서 페이지를 표시 못하도록 하게함 ㅠㅠ 

 

2. Port는 0~ 66535까지의 숫자로 구성되며 각 숫자마다 지정된 역할이 있습니다.

 

시스템 포트(Well Knonw port : 0~1023)   

시스템 포트는  잘 알려진 서비스와 프로토콜에 할당합니다.

시스템 포트중에 자주쓰는 포트는 아래와 같습니다.

HTTP(80) 
HTTPS(443)
SSH(22)
SMTP(25)
DNS(53) 등등

 

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

  등록된 포트는 일반적으로 사용되는 특정 서비스를 위해 할당됩니다. 

  이 포트 범위는 사용자가 임의로 포트를 할당하여 사용할수 있습니다.

 

동적 포트 (Dynamic Port : 49152 ~ 65535) 

  동적 포트는 클라이언트가 임의로 사용하는 포트입니다. 클라이언트애플리케이션은 이 포트 범위에서 포트를 선택하여 서버와 통신합니다.

  이 포트 범위는 서버 <-> 클라이언트의 통신을 위해 서로 연결될때 동적으로 할당됩니다