https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi
위의 강의를 듣고 정리한 내용입니다
NAT와 포트 포워딩
네트워크 주소 변환(NAT)
NAT(Network Address Translation)은 IP 패킷의 TCP/UDP 포트 숫자와
소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술을 말한다
- 패킷에 변화가 생기기 때문에 IP나 TCP/UDP의 체크섬(checksum)도 다시 계산되어 재기록해야한다
- NAT를 이용하는 이유는 대개 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위함이다
**꼭 사설 IP를 공인 IP로 변환하는데에만 사용하는 기술은 아니다 **
요약
NAT는 특정 IP주소에 특정 포트번호로 가는 패킷을 다른 IP 주소의 다른 포트번호로 바꾸어준다
-> 원래 가려는 곳에서 다른곳으로 가게끔 만든다
-> 사설 IP 주소를 공인 IP로 변환하는데에 사용되는 기술이다
사설 IP 대역 ──> 공인 IP <─── 사설 IP 대역
사설 IP 대역으로 이동하지만 외부에서 볼 때는 공인 IP로 이동하는 것처럼 보인다
-> 요청에 대한 응답이 있을때에만 통신이 가능하다는 문제점이 있다
-> 해당 문제를 해결하기 위해 포트포워딩을 한다
포트 포워딩(== 포트 매핑)
포트 포워딩 또는 포트 매핑은 패킷이 라우터나 방화벽과 같은 네트워크 장비를 가로지르는 동안
특정 IP 주소와 포트 번호의 통신 요청을 다른 IP와 포트 번호로 넘겨주는 네트워크 주소변환(NAT)을 응용한 기술이다
- 게이트웨이(외부망)의 반대쪽에 위치한 사설 네트워크에 상주하는 호스트에 대한 서비스를 생성하기 위해 사용된다
- 일반적으로 서버가 사설 네트워크 대역에 있을 때 네트워크 대역을 설정하는 공유기, 라우터와 같은 3계층 장비에서 제공하는 기능이다
사설 IP 대역 ──> 공인 IP 1 / 공인 IP 2 <─── 사설 IP 대역
클라이언트가 먼저 서버로 요청을 보낼 때 직접 컴퓨터에 IP를 치는 것이 아닌
공유기의 공인 IP로 보낸다
-> 이 때 공유기에 포트포워딩 설정을 해야한다
받은 공인 IP는 특정 포트로 들어온 요청을 다른 특정 IP의 특정 포트로 전송해야 한다
이런식으로 공유기가 연결된 IP 대역으로 대신 전달을 하는것을 포트 포워딩이라고 한다
[ 실습 ]
1. 포트포워딩 설정하기
- 포트 포워딩을 이용하여 다른 사용자들이 사설 IP를 사용하는 서버로 접속할 수 있도록 설정한다
- 일반적으로 포트포워딩 설정을 네트워크 장비 혹은 공유기로 설정한다
**공유기 설정의 경우 네트워크 대역에서 게이트웨이 IP를 웹 브라우저(chrome)로 입력하면
공유기 설정으로 들어갈 수 있다**
일반적으로 Id와 pwd는 공유기에 적혀있다
관리도구로 접속하여 고급설정 – NAT/라우터 관리 – 포트포워드 설정
내부 IP 주소 : 공인 IP로 받았을 때 전달한 내부 IP 주소를 입력
외부 포드, 내부 포트 : 번호가 같을 필요는 없지만 일반적으로는 동일하거나 유사하게 설정한다
단, 사용자들은 공인 IP로 접속하기 때문에 외부 포트는 80번 포트처럼 사용자가 접근할 수 있도록 설정해야한다
(이후 내용은 생략. 강의 시청을 권장합니다)
2. 사설 IP를 사용하는 서버로 접속해보기
- 사설 IP를 사용하는 가상머신에 서버를 설정하고 해당 서버를 포트포워딩을 통해 접속할 수 있도록 설정한다
'CS지식 > 네트워크' 카테고리의 다른 글
HTTP 메서드 | TIL_143 (0) | 2022.09.14 |
---|---|
7계층 프로토콜 HTTP | TIL_142 (0) | 2022.09.12 |
TIL 정리_130(TCP 전송, 상태) (0) | 2022.08.05 |
TIL 정리_129(TCP 3Way Handshake) (0) | 2022.08.03 |
TIL 정리_128(TCP 구조와 플래그) (0) | 2022.08.01 |