NAT 에 대한 몇 가지 요약
넷마스크 및 IP 마스크 (영어: NAT (Network Address Translation) 라고도 하는 네트워크 주소 변환 (network address translation) 은 컴퓨터 네트워크에서 IP 패킷이 라우터나 방화벽을 통과할 때 소스 IP 를 대상으로 합니다 이 기술은 여러 호스트를 보유하고 있지만 하나의 공용 IP 주소만 인터넷에 액세스하는 전용 네트워크에 널리 사용됩니다. 이것은 편리하고 널리 사용되는 기술이다. 물론 NAT 는 호스트 간 통신을 복잡하게 하여 통신 효율을 저하시킵니다.
NAT 는 IP 주소를 보존하기 어려운 문제를 피하기 위해 IPv4 주소 부족을 해결하는 솔루션으로 인기가 있습니다.
일반 구성에서 로컬 네트워크는 개인 네트워크의 지정된 서브넷 (예: 192. 168.x.x 또는 10.x.x) 을 사용하여 네트워크에 연결됩니다 이 라우터는 이 네트워크 주소 공간에서 개인 주소 (예:192.168.0.1) 를 사용하며 하나 이상의 인터넷 서비스 공급자가 제공하는 공용 IP 주소 ("과부하" 라고 함) 도 사용합니다 정보가 로컬 네트워크에서 인터넷으로 전송될 때 소스 주소는 개인 주소에서 공용 주소로 변환됩니다. 라우터는 각 연결에 대한 기본 데이터, 주로 대상 주소와 포트를 추적합니다. 응답이 라우터로 반환되면 stage 에 기록된 연결 추적 데이터를 출력하여 인트라넷으로 전달할 호스트를 결정합니다. 둘 이상의 공용 주소를 사용할 수 있는 경우 TCP 또는 UDP 클라이언트의 포트 번호를 사용하여 패킷이 반환될 때 이를 분할할 수 있습니다. 인터넷상의 통신의 경우 라우터 자체는 소스 및 대상 역할을 합니다.
인터넷에서는 IPv6 의 광범위한 채택으로 인해 NAT 가 불필요하게 될 것이라는 견해가 유행하고 있다. NAT 는 IPv4 주소 공간 부족에 대처하는 한 가지 방법일 뿐이기 때문이다. (윌리엄 셰익스피어, Northern Exposure (미국 TV 드라마), 인터넷명언)
원문:/gui951753/article/details/7959307
NAT 기능이 있는 라우터 아래의 호스트는 실제 IP 주소를 만들지 않으며 일부 인터넷 프로토콜에 참여할 수 없습니다. 외부 네트워크에서 생성된 초기화가 필요한 일부 TCP 연결 및 무상태형 프로토콜 (예: UDP) 은 구현되지 않습니다. NAT 라우터 관리자가 규칙을 미리 설정하지 않으면 전송된 패킷이 올바른 대상 주소에 도달하지 않습니다. 애플리케이션 계층 게이트웨이의 도움으로 일부 프로토콜은 FTP 와 같이 NAT 에 참여하는 호스트 간에 NAT 인스턴스를 제공할 수 있습니다 (아래 참조). NAT 는 또한 IPsec 와 같은 보안 프로토콜을 복잡하게 만들 수 있습니다.
엔드-투-엔드 연결은 IAB (인터넷 아키텍처위원회) 가 지원하는 인터넷 핵심 프로토콜 중 하나이므로 NAT 는 공공 인터넷의 파괴라고 생각하는 사람들도 있습니다. 일부 인터넷 서비스 공급자 (ISP) 는 고객에게 로컬 IP 주소만 제공하므로 NAT 를 통해 ISP 네트워크 이외의 서비스에 액세스해야 합니다. 이들 회사가 인터넷 서비스를 실제로 제공할 수 있는지 여부에 대해서도 논의했습니다.
NAT 의 편리함과 비용 외에도 전이중 접속 지원 부족은 경우에 따라 제한보다는 유익한 기능으로 간주될 수 있습니다. 어느 정도 NAT 는 로컬 네트워크의 시스템에 의존하여 라우터의 다른 쪽 끝에 있는 호스트와의 연결을 초기화하여 외부 네트워크의 호스트에 대한 악의적인 활동을 방지합니다. 이렇게 하면 인터넷 웜이 로컬 시스템의 신뢰성을 높이고 악의적인 브라우징이 로컬 시스템의 프라이버시를 높이는 것을 막을 수 있습니다. NAT 기능이 있는 많은 방화벽은 이 기능을 사용하여 핵심 보호를 제공합니다. 또한 UDP 가 LAN 을 통해 쉽게 전송할 수 있습니다.
기본 NAT 및 포트 번호 변환
기본 네트워크 주소 변환 (기본 NAT)
이 유형은 NAT 또는 "정적 NAT" 라고도 하며 RFC 2663 에서 관련 정보를 제공합니다. 기술적으로는 비교적 간단하며 주소 변환만 지원되고 포트 매핑은 지원되지 않습니다. 기본 NAT 에는 현재 접속마다 공용 네트워크 IP 주소가 있어야 하므로 공용 네트워크 주소 풀을 유지 관리해야 합니다. 광대역 라우터는 일반적으로 이 방법을 사용하여 라우터 자체에 사용 가능한 외부 IP 가 하나뿐인 경우에도 지정된 장치가 모든 외부 링크를 관리할 수 있도록 합니다. 라우터는 때때로 DMZ 호스트로 표시됩니다. IP 소스 주소의 변경으로 인해 패킷이 재패키지화될 때 체크섬을 다시 계산해야 하며, 네트워크 계층 위의 헤더 체크섬은 IP 주소와 관련된 한 다시 계산해야 합니다.
네트워크 주소 포트 변환 (NAPT)
이 방법은 포트 매핑을 지원하며 여러 호스트가 하나의 공용 IP 주소를 공유할 수 있도록 합니다.
포트 변환을 지원하는 NAT 는 snat 와 대상 주소 변환의 두 가지 범주로 나눌 수 있습니다. 전자의 경우 연결을 시작한 컴퓨터의 IP 주소를 다시 작성하여 내부 네트워크 호스트에서 보낸 패킷이 외부 네트워크 호스트에 도달할 수 있도록 합니다. 후자의 경우 외부 네트워크 호스트가 보낸 패킷이 내부 네트워크 호스트에 도달할 수 있도록 연결된 컴퓨터의 IP 주소를 다시 작성합니다. 실제로 이 두 가지 방법은 일반적으로 양방향 통신을 지원하기 위해 함께 사용됩니다.
포트 번호의 고유성을 이용하여 공용 인터넷 IP 를 사설 인터넷 IP 로 변환하는 이 단계를 실현하였다. PAT(NAT 과부하) 는 전송 계층의 포트 번호를 사용하여 호스트를 식별할 수 있으므로 이론적으로 최대 65,000 대 정도의 호스트가 공용 IP 주소를 사용할 수 있습니다.
NAPT 는 다음과 같이 구성된 IP 및 포트 번호가 포함된 NAT 테이블을 유지 관리합니다.
인트라넷 IP 엑스트라넷 IP
192.168.1.55: 5566 219.1
192.168.1.59: 80 219.159
192.168.1.59: 4465 219.1
다른 유형의 NAT:
전체 콘 NAT, 즉 일대일) NAT.
내부 주소 (iAddr:port) 가 외부 주소 (eAddr:port) 에 매핑되면 iAddr:port 에서 전송된 모든 패킷이 eAddr:port 를 통해 전송됩니다. 모든 외부 호스트는 eAddr:port 에 패키지를 보내 iAddr:port 에 도달할 수 있습니다 (참고: 포트는 같을 필요가 없음).
포트 제한 콘 NAT (포트 제한 콘 NAT)
제한된 원추형 NAT 와 비슷하지만 포트 제한이 있습니다.
내부 주소 (iAddr:port 1) 가 외부 주소 (eAddr:port2) 에 매핑되면 iAddr:port 1 에서 전송된 모든 패킷은 eaddr 을 통해 전송됩니다
제한된 원추형 NAT 를 기반으로 외부 호스트 소스 포트는 고정해야 합니다.
대칭 NAT (대칭 NAT)
동일한 내부 IP 및 포트에서 특정 대상 주소 및 포트로의 각 요청은 고유한 외부 IP 주소 및 포트에 매핑됩니다.
동일한 내부 IP 및 포트에서 다른 대상 및 포트로 전송되는 패킷은 서로 다른 매핑을 사용합니다. 내부 호스트 데이터를 수신한 외부 호스트만 패킷을 다시 보낼 수 있습니다.