NAT란?
- NAT(Network Address Translation)은 IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술을 말한다.
- 패킷에 변화가 생기기 때문에 IP나 TCP/UDP의 체크섬도 다시 계산되어 재기록해야 한다.
- NAT를 이용하는 이유는 대개 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위함이다.
- 하지만 꼭 사설 IP를 공인 IP로 변환하는 데에만 사용하는 기술은 아니다.
NAT
사설 IP 대역에 기기들이 통신할 때, 공인 IP로 변경이 돼서 통신을 한다.
실제 바깥 네트워크 세상에서 보이는 모습
마치 공유기가 서로 통신하는 것처럼 보이지만, 공유기 안에는 NAT 테이블이 있고 테이블에는 기기들이 나가고 들어온 정보들이 저장되어 있다. (나간 기록이 없는 기기는 들어올 수 없다.)
포트포워딩
- 포트 포워딩 또는 포트 매핑(port mapping)은 패킷이 라우터나 방화벽과 같은 네트워크 장비를 가로지르는 동안 특정 IP 주소와 포트 번호의 통신 요청을 특정 다른 IP와 포트 번호로 넘겨주는 네트워크 주소 변환(NAT)의 응용이다.
- 이 기법은 게이트웨이(외부망)의 반대쪽에 위치한 사설네트워크에 상주하는 호스트에 대한 서비스를 생성하기 위해 흔히 사용된다.
보이지 않는 네트워크 대역에 기기와 통신하고 싶을 때
즉, 나갔다가 들어와서 통신하는 것이 아닌 먼저 들어가서 통신하는 것
직접 상대방의 IP로 보내는게 아닌, 공인 IP(공유기에는 미리 포트포워딩을 해둠)로 보낸다.
특정 포트는 정해지지 않아서, 관리자가 알아서 지정하면 됨
중요한 건, IP 프로토콜에 목적지 주소를 공유기에 할당된 공인 IP 주소로 지정해야 함
사설 IP(빨간색)에서는 여전히 사설 IP(초록색)가 보이지 않지만 공인 IP 2를 이용해서 통신할 수 있다.
공인 IP 2는 사설 IP(초록색)와 직접 연결되어 있기에 대신 전달해준다.
<출처>
"네트워크 기초(개정판)".따라하면서 배우는 IT.https://www.youtube.com/playlist?list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi (2023.03.21)
내용정리는 제 입맛에 맞게 바꿨습니다.