포트 포워딩이란?

2022. 7. 15. 15:57TIL/네트워크

포트를 전달한다.

Port란?

port는 단어 뜻 그대로 항구라는 뜻이다. 항구에 서로 다른 배들이 정착하고 나가듯, 서버도 마찬가지로 이런 항구의 역할을 하는 친구가 필요하다. 그것이 바로 port이다.

하나의 서버에서는 여러 역할을 할 수가 있다. 데이터베이스를 관리할 수도 있고 다른 서버에 요청을 보낼 수도 있다. 파일을 전송할 수도 있고 굉장히 여러 기능이 존재할 수 있다. 그러나 포트가 없이 서버 IP주소로만 요청을 보내면 어떤 요청을 하는 것인지 알 수가 없다. 따라서 어디로 요청을 보내는 것인지 알려주기 위해 숫자로 포트 번호를 부여하고 해당 포트로 요청을 하게 된다.
포트의 종류는 크게 다음과 같이 3종류로 표현이 된다.

0 ~ 1023 : 잘 알려진 포트(well-known port)

  • 잘 알려진 특정한 어플리케이션의 사용을 위해 ICANN에서 할당한 TCP/UDP 포트 번호이다.
  • FTP(20번 port), HTTP(80번 port), SSH(22번 port)등, 이미 예약된 번호라고 생각하면 편하다.
  • 강제적으로 지정된 것이 아니기 때문에 다른 용도로 사용해도 된다.(안하는 걸 추천)

1024 ~ 49151 : 등록된 포트(registered port)

  • 특정 용도로 사용되기 위해 등록된 포트번호
  • 마찬가지로 강제적으로 지정된 것이 아니기 때문에 다른 용도로 사용 가능(안하는 걸 추천)
  • MS에서 제공하는 데이터베이스 하부 언어(SQL)를 사용하기 위한 포트(1433번 port), MySQL(RDBMS)을 사용하기 위한 포트(3306번 port), 원격 접속을 사용하기 위한 포트(3389번 port), HTTP 포트(80번 port)를 대체할 수 있는 포트(8080번 port) 등

49152 ~ 65535 : 다이나믹 포트(dynamic port)

  • 어느 프로그램에서나 사용할 수 있는 포트

Port Forwarding이란?

외부에서 접속이 가능하도록 해주는 것

 

포트 포워딩이란 컴퓨터 네트워크에서 패킷이 라우터나 방화벽같은 네트워크 게이트웨이를 통과하는 동안 네트워크 주소를 변환해 주는 것을 의미한다.
여기 적힌 61.43.52.108은 공유기의 IP가 되고, 공유기에 연결된 디바이스는 192.168~로 시작하는 내부 IP를 할당받게 된다.

 

그렇다면 포트 포워딩은 무엇일까?

위 사진에서 보는 것 처럼 누군가 나의 공유기의 21번 포트로 요청을 했지만 셋 중에 누구한테 연결해 줄지 알 수 없다. 이러한 상황에서 공유기에게 누구한테 연결해야 하는지 알려주는 것이 포트 포워딩이다. 192.168.0.20 IP에게 21번 포트로 포트 포워딩 설정을 해주면 다음에는 21번 포트로 요청이 왔을 때 누구한테 전달해 줄지 잘 찾아갈 수 있다.

반응형