NAT: 여러장비가 동일한 IP를 사용하는 것
[동기 부여]
– 먼 미래의 어느 시점에 IP 주소가 부족합니다.
• [가능한 해결책]
– 장기적인 해결책은 전체 인터넷을 IPv6로 마이그레이션하는 것입니다.
IPv4sms 32비트 v4는 128비트 주소.
• 그러나 그 과정이 완료되려면 몇 년이 걸릴 것입니다.
• [대체 솔루션]
– 단기적인 빠른 수정: RFC 3022에 설명된 NAT(네트워크 주소 변환)
NAT Box and Private IP Addresses

IANA(Internet Assigned Numbers Authority)는 개인 인터넷(로컬 네트워크)을 위해 다음 세 블록의 IP 주소 공간을 예약했습니다.
– 10.0.0.0 - 10.255.255.255
– 172.16.0.0 - 172.31.255.255
– 192.168.0.0 - 192.168.255.255
• 라우터는 개인 IP 주소를 삭제합니다.
– 사설 IP 주소는 고유하지 않습니다.
NAT의 기본 아이디어
소스 포트 필드를 사용하여 매핑 문제를 해결할 수 있습니다.
• 사설 IP 주소 <-> ISP 주소
– 각 회사를 단일 IP 주소로 할당(또는 최대, 소수) 인터넷 트래픽용.
• 회사 내에서 모든 컴퓨터는 고유한 사설 IP 주소를 받습니다.
• 유일한 규칙
– 다음을 포함하는 패킷 없음
이러한 주소는 인터넷 자체에 나타날 수 있습니다.
• 10.0.0.0 – 10.255.255.255/8(16,777,216개 호스트)
[10.255.255.255/8] "8" means 1111 1111.0.0.0
• 172.16.0.0 – 172.31.255.255/12(호스트 1,048,576개)
• 192.168.0.0 – 192.168.255.255/16(65,536개 호스트)
NAT and TCP Ports
- 실제로 일어난 일은 다음과 같다
– 대부분의 IP 패킷은 TCP 또는 UDP 페이로드를 전달합니다.
• TCP와 UDP 모두 소스 포트와 대상 포트를 포함하는 헤더를 가집니다.
– 우리는 TCP 포트에 대해서만 논의할 것이지만 정확히 동일한 이야기가 UDP 포트에 적용됩니다.
포트는 TCP 연결 위치를 나타내는 16비트 정수입니다.
시작과 끝
이러한 포트는 NAT 작동에 필요한 필드를 제공합니다.
포트
• TCP 포트
– 소스 포트 및 대상 포트
• 포트 0~1023은 잘 알려진 서비스용으로 예약되어 있습니다.
– 예를 들어 포트 80은 웹 서버에서 사용하는 포트이므로 원격 클라이언트가 찾을 수 있습니다.
• 각 발신 TCP 메시지에는 소스 포트와 대상 포트가 모두 포함됩니다.
• 포트는 양쪽 끝에서 연결을 사용하여 프로세스를 식별하는 역할을 합니다.
NAT 절차
[1] 나가는 패킷(사설 IP 패킷 → ISP네트워크)이 NAT 상자에 들어가면 10.x.y.z 소스 주소가 회사의 실제 IP 주소로 대체됩니다.
[2] 또한 TCP 소스 포트 필드는 NAT 상자의 65,536 항목 변환 테이블에 대한 인덱스로 대체됩니다. [인덱스는 NAT 테이블의 고유한 기본 키입니다.]
• 시스템 10.0.0.1(호스트 A) 및 10.0.0.2(호스트 B)의 연결이 모두 포트 5000을 사용할 수 있으므로 소스 포트를 교체해야 합니다.
– 예를 들어 소스 포트만으로는 전송 프로세스를 식별하기에 충분하지 않습니다.
• 이 테이블 항목에는 원래 IP 주소와 원래 소스 포트가 포함되어 있습니다.
[3] 마지막으로 IP 및 TCP 헤더 체크섬은 모두 다음과 같습니다.
계산되어 패킷에 삽입됨
[4] ISP에서 패킷이 NAT 박스에 도착하면 TCP 헤더의 소스 포트가 추출되어 NAT 박스의 매핑 테이블에 대한 인덱스로 사용됩니다.
[5] 찾은 항목에서 내부 IP 주소와 원래 TCP
소스 포트가 추출되어 패킷에 삽입됨
[6] 그런 다음 IP 및 TCP 체크섬이 모두 다시 계산되어 패킷에 삽입됩니다.
[7] 패킷은 10.x.y.z 주소를 사용하여 정상적인 전달을 위해 회사 라우터로 전달됩니다.
'Computer Science > 네트워크' 카테고리의 다른 글
RARP, BOOTP, DHCP (0) | 2022.12.13 |
---|---|
NAT (0) | 2022.12.12 |
네트워크 기초2 (0) | 2022.10.18 |
네트워크 기초 정리 (1) | 2022.10.18 |
4) 인터넷 ,IPv4, IPv6, 인터넷 디자인 (0) | 2022.10.18 |