464XLAT ALGトラフィックサポートについて
モバイル ネットワークに IPv6 アプリケーションを導入する場合、携帯電話会社によってはユーザーに IPv6 をサポートできない場合があります。電話アプリケーションの中には IPv6 専用環境をサポートしていないものがあります。
このソリューションは、NAT64 メカニズムを使用して、事業者のネットワーク内の IPv4 専用コンテンツにアクセスし 、464XLAT トラフィックを使用して IPv4 専用アプリケーションを IPv6 専用ネットワーク上で動作可能にしています。
464XLATアーキテクチャは、CLAT(カスタマーサイドトランスレータ)でのステートレス変換と、プロバイダ側のトランスレータ(PLAT)でのステートフル変換の組み合わせです。464XLATアーキテクチャは、ステートレス(プライベートIPv4アドレスをグローバルIPv6アドレスに変換し、その逆)とステートフル(IPv6アドレスをグローバルIPv4アドレスに変換し、その逆)を組み合わせてデバイスのパケット情報を変換するために使用します。
Junos OS リリース 12.3X48-D15 および Junos OS リリース 17.3R1 から、464XLAT トラフィックは、永続的な NAT プールを持つ PAT プールではサポートされていません。
図1 は、エッジのCLAT上のコアおよびステートレスプロトコルのPLAT上で既存および既知のステートフルプロトコル変換を組み合わせることで、IPv6専用ネットワークでIPv4接続を提供する464XLATアーキテクチャを示しています。プライベート IPv4 ホストは、CLAT 変換と PLAT 変換の両方を通じてグローバル IPv4 ホストに到達できます。反対に、IPv6 ホストは、変換せずにインターネット上の他の IPv6 ホストに直接到達できます。つまり、CPE(顧客構内機器)は CLAT をサポートし、ネイティブ IPv6 トラフィック用の IPv6 ネイティブ ルーターとして動作することができます。
464XLAT ALG機能について
図 2 では、アドレス変換アーキテクチャについて説明し、プロバイダ側の変換(PLAT)でのステートフル変換と CLAT(カスタマーサイド トランスレータ)でのステートレス変換の組み合わせを使用した、デバイスのパケット情報の変換方法を示しています。この図では、DHCPv6 プレフィックス 委譲(DHCPv6-PD)などのプレフィックス委譲メカニズムから 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 ルールと一致し、ペイロード port3 は 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 は変更されません。port3'はポート3に変換されます。RTSP ALG は、サーバー側から宛先 Ipv4_1 Ipv6_1/port1 と一緒に送信された UDP メディア データを c->/port1->Ipv6_2/port3、s->c Ipv4_2/port4->Ipv4_1'/port3'over UDP メディア データなど、ゲートを作成し、IP ヘッダーを Ipv6_1/port1 に変換してゲートに到達します。
CLAT: 送信元アドレス/ポートは、 Ipv6_1/port1 から Ipv4_1/port1 に変換されます。ただし、ペイロード port3/port4 は変更されません。
The server sends the Real-Time Transport Protocol (RTP) over UDP media data:
PLAT: UDP 上の RTP メディア データが宛先 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/port3 は変更されません。FTP ALG は、Ipv4_1/0(Ipv6_1/0)->Ipv4_2/port3 などのゲートを作成します。
The first packet reaches the gate from the client side:トラフィックがゲートに到達すると、宛先 Ipv4_2/port3 に付くクライアント側からの日付パケットが 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/port2 は 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/port2 に到達します。