464XLAT ALG 트래픽 지원 이해
모바일 네트워크에 IPv6 애플리케이션을 구축하면 일부 모바일 애플리케이션은 IPv6 전용 환경을 지원하지 않기 때문에 일부 이동통신사업자는 사용자들에게 IPv6 지원을 제공할 수 없다는 점을 유의하십시오.
이 솔루션은 NAT64 메커니즘을 사용하여 운영자 네트워크의 IPv4 전용 컨텐트에 액세스하고 464XLAT 트래픽을 사용하여 IPv4 전용 애플리케이션이 IPv6 전용 네트워크에서 작동할 수 있도록 하는 것입니다.
464XLAT 아키텍처는 CLAT(Customer-side translation)의 스테이트리스 변환과 PLAT(Provider-side translation)의 스테이트풀 변환을 결합한 것입니다. 464XLAT 아키텍처는 스테이트리스(프라이빗 IPv4 주소를 글로벌 IPv6 주소로 변환)와 stateful(IPv6 주소를 글로벌 IPv4 주소로 변환하고, 그 반대의 경우) 변환을 사용하여 장비의 패킷 정보를 변환하는 데 사용됩니다.
Junos OS 릴리스 12.3X48-D15 및 Junos OS Release 17.3R1에서 시작하는 464XLAT 트래픽은 영구 NAT 풀이 있는 없음 PAT 풀에서 지원되지 않습니다.
그림 1 은 에지의 코어 및 스테이트리스 프로토콜에 PLAT에 기존 및 잘 알려진 stateful 프로토콜 변환을 결합하여 IPv6 전용 네트워크에서 IPv4 연결을 제공하는 464XLAT 아키텍처를 보여줍니다. 프라이빗 IPv4 호스트는 CLAT 및 PLAT 변환을 통해 글로벌 IPv4 호스트에 연결할 수 있습니다. 반대로, IPv6 호스트는 변환 없이 인터넷상의 다른 IPv6 호스트에 직접 연결할 수 있습니다. 즉, CPE(Customer Premises Equipment)는 CLAT를 지원하고 네이티브 IPv6 트래픽을 위한 IPv6 네이티브 라우터로도 작동할 수 있습니다.

464XLAT ALG 기능 이해
그림 2 는 주소 변환 아키텍처를 설명하고, PLAT(Provider-side translation)에서 Stateful 변환과 CLAT(Customer-side translation)의 스테이트리스 변환을 결합하여 장비의 패킷 정보가 변환되는 방법을 보여줍니다. 이 다이어그램에서 클라이언트는 DHCPv6-PD(DHCPv6-PD)와 같은 Prefix 위임 메커니즘에서 IPv6 접두사를 위임합니다. 따라서 클라이언트에는 변환을 위한 전용 IPv6 접두사가 있습니다.

PPTP, RTSP 및 FTP ALG는 XLAT 기능도 지원합니다.
다음 섹션에서는 디바이스가 PLAT로 작동할 때 PPTP, RTSP 및 FTP ALG가 어떻게 작동하는지 설명합니다.
PPTP ALG가 PLAT의 역할을 하는 디바이스를 지원하는 방법
그림 3 은 PPTP ALG XLAT 기능을 설명합니다.

PPTP ALG는 대상 포트 기능에 call_ID 사용합니다.
The client sends the outgoing call request (with PPTP Access Concentrator (PAC) call_ID) to the server:
CLAT: 소스 주소/포트가 Ipv4_1/port1에서 Ipv6_1/port1로 변환됩니다. 그러나 페이로드 call_ID 변경되지 않습니다.
PLAT: 소스 주소/포트 Ipv6_1/port1은 Ipv4_1'/port1'로 변환되어 NAT64 규칙과 일치합니다. 그러나 페이로드의 call_ID 변경되지 않습니다. PPTP ALG는 server_ip/0->Ipv4_1'/call_ID(Ipv6_1/call_ID)과 같은 게이트를 만듭니다.
The first generic routing encapsulation (GRE) packet reaches the gate from the server side: 첫 번째 GRE 트래픽이 게이트에 도달하면 서버측에서 대상 Ipv4_1'/call_ID 있는 GRE 패킷이 Ipv6_1/call_ID 변환됩니다. 마지막으로, GRE 패킷은 CLAT 이후 Ipv4_1/call_ID 클라이언트에 도달합니다.
Another special case for call_ID 0:
CLAT: 소스 주소/포트가 Ipv4_1/port1에서 Ipv6_1/port1로 변환됩니다. 그러나 페이로드 call_ID 변경되지 않습니다.
PLAT: 소스 주소/포트 Ipv6_1/port1은 Ipv4_1'/port1'로 변환되어 NAT64 규칙과 일치합니다. 그러나 페이로드의 call_ID 0은 수동으로 65002로 변환됩니다. PPTP ALG는 server_ip/0->Ipv4_1'/65002(Ipv6_1/0)와 같은 게이트를 만듭니다.
The first GRE packet reaches the gate from the server side: 첫 번째 GRE 트래픽이 게이트에 도달하면 대상 Ipv4_1'/65002가 있는 서버측의 GRE 패킷이 Ipv6_1/0으로 변환됩니다. 마지막으로, GRE 패킷은 CLAT 이후 Ipv4_1/0 클라이언트에 도달합니다.
The server sends the outgoing call reply (with PPTP Network Server (PNS) and PAC call_ID) to the client:
PLAT: 소스 주소/포트 Ipv4_2/port2는 Ipv6_2/port2'로 변환되어 NAT64 규칙과 일치합니다. 그러나 페이로드의 call_ID 변경되지 않으며 PPTP ALG는 client_v6/0->Ipv6_2/call_ID(Ipv4_2/call_ID)과 같은 게이트를 만듭니다.
CLAT: 소스 주소/포트가 Ipv6_2/port2에서 Ipv4_2/port2로 변환됩니다. 그러나 페이로드 call_ID 변경되지 않습니다.
The first GRE packet reaches the gate from the client side: 첫 번째 GRE 트래픽이 게이트에 도달하면 대상 Ipv4_2'/call_ID 있는 클라이언트 측의 GRE 패킷이 CLAT 이후 Ipv6_2/call_ID 변환된 다음 Ipv4_2/call_ID 변환됩니다. 마지막으로 GRE 패킷은 PLAT 이후 서버 Ipv4_2/call_ID 도달합니다.
Another special case for call_ID 0:
PLAT: 소스 주소/포트 Ipv4_2/port2는 Ipv6_2/port2'로 변환되어 NAT64 규칙과 일치합니다. 그러나 페이로드의 call_ID 65002로 변환되고 PPTP ALG는 client_v6/0->Ipv6_2/65002(Ipv4_2/0)와 같은 게이트를 만듭니다.
CLAT: 소스 주소/포트가 Ipv6_2/port2에서 Ipv4_2/port2로 변환됩니다. 그러나 페이로드 call_ID 변경되지 않습니다.
The first GRE packet reaches the gate from the client side: 첫 번째 GRE 트래픽이 게이트에 도달하면 대상 Ipv4_2'/65002가 있는 클라이언트 측의 GRE 패킷이 CLAT 이후 Ipv6_2/65002로 변환된 다음 Ipv4_2/0으로 변환됩니다. 마지막으로 GRE 패킷은 PLAT 이후 Ipv4_2/0 서버에 도달합니다.
RTSP ALG가 PLAT의 역할을 하는 디바이스를 지원하는 방법
그림 4 는 RTSP ALG XLAT 기능을 설명합니다.

The Windows Media Player on the Windows PC sends a SETUP message:
CLAT: 소스 주소/포트가 Ipv4_1/port1에서 Ipv6_1/port1로 변환됩니다. 그러나 페이로드 Ipv4_2/port3은 변경되지 않습니다.
PLAT: 소스 주소/포트 Ipv6_1/port1은 Ipv4_1'/port1'로 변환되어 NAT64 규칙과 일치하며 페이로드 포트3은 port3으로 변환됩니다. 그러나 페이로드 ULR의 IP 주소는 변경되지 않습니다.
The Windows Media Server on the Windows server sends a 200 OK message:
PLAT: 소스 주소/포트 Ipv4_1'/port1'은 Ipv6_1/port1로 변환되어 NAT64 규칙과 일치합니다. 그러나 페이로드의 포트4는 변경되지 않습니다. 포트3'은 포트3으로 변환됩니다. RTSP ALG는 c->s Ipv6_1/port1->Ipv6_2/port3 및 s->c Ipv4_2/port4->Ipv4_1'/port3' 등과 같은 게이트를 서버측에서 대상 Ipv4_1/port1로 전송한 후 IP 헤더가 Ipv6_1/port1로 변환되어 게이트에 도달합니다.
CLAT: 소스 주소/포트가 Ipv6_1/port1에서 Ipv4_1/port1로 변환됩니다. 그러나 페이로드 포트3/포트4는 변경되지 않습니다.
The server sends the Real-Time Transport Protocol (RTP) over UDP media data:
PLAT: RTP over UDP 미디어 데이터가 대상 Ipv4_1'/port3와 함께 서버측에서 전송되면 IP 헤더가 Ipv6_1/port3으로 변환되어 게이트에 도달합니다.
CLAT: IP 헤더가 Ipv6_1/port3에서 Ipv4_1/port3로 변환됩니다.
The client sends the RTP over UDP media data:
CLAT: 소스 주소/포트가 Ipv4_1/port3에서 Ipv6_1/port3으로 변환되고 대상 주소가 Ipv4_2/port4에서 Ipv6_2/port4로 변환됩니다.
PLAT: 소스 주소/포트가 Ipv6_1/port3에서 Ipv4_1'/port3으로 변환되고 대상 주소가 Ipv6_2/port4에서 Ipv4_2/port4로 변환됩니다.
FTP ALG가 PLAT의 역할을 하는 장치를 지원하는 방법
그림 5 및 그림 6 은 수동 모드 및 포트 모드의 FTP ALG XLAT 기능을 설명합니다.

A 227 message enters passive mode:
CLAT: 소스 주소/포트가 Ipv4_1/port1에서 Ipv6_1/port1로 변환됩니다. 그러나 페이로드에는 IP 또는 포트 정보가 포함되어 있지 않습니다.
PLAT: 소스 주소/포트 Ipv4_1'/port1'은 Ipv6_1/port1로 변환되어 NAT64 규칙과 일치합니다. 그러나 페이로드의 Ipv4_2/포트3는 변경되지 않으며 FTP ALG는 Ipv4_1/0(Ipv6_1/0)->Ipv4_2/port3와 같은 게이트를 만듭니다.
The first packet reaches the gate from the client side: 트래픽이 게이트에 도달하면 대상 Ipv4_2/포트3이 있는 클라이언트 측의 날짜 패킷이 Ipv6_2/port2로 변환됩니다. IP 헤더는 PLAT에 기반한 NAT64 규칙에 따라 Ipv4_2/port3로 변환됩니다.

FTP port mode sends a PORT message:
CLAT: 소스 주소/포트가 Ipv4/port1에서 Ipv6/port1로 변환됩니다.
PLAT: 소스 주소/포트는 Ipv6_1/port1이 Ipv4_1'/port1'로 변환되어 NAT64 규칙과 일치합니다. 페이로드의 Ipv4_1/포트2는 Ipv4_1'/port2로 변환되고 FTP ALG는 Ipv4_1'/port2'(Ipv4_1/port2->server_ip/server_port 같은 게이트를 만듭니다.
The first packet reaches the gate from the server side: 트래픽이 게이트에 도달하면 대상 Ipv4_1'/port2'가 있는 서버측의 첫 번째 패킷이 Ipv6_1/port2로 변환됩니다. 마지막으로, 패킷은 CLAT 이전의 클라이언트 Ipv4_1/포트2에 도달합니다.