# IPv6 / DS-Lite

DS-Lite（Dual-Stack Lite）は、IPv4 over IPv6トンネリングとキャリアグレードNAT（ISP側でのNAT）を併用することで、IPv6専用のアクセス網経由でIPv4インターネットへの接続を可能にし、IPv4・IPv6のデュアルスタック環境を構築するための仕組みです。
IPv6経由でIPv4インターネットへの接続を提供するサービスにはDS-Lite、LW4o6、MAP-Eなどいくつかの方式がありますが、DS-LiteはIPv4グローバルアドレス・プライベートアドレスの変換処理（NAT処理）を接続事業者側で行うため、ユーザー側機器にIPv4グローバルアドレスを設定する必要がない点が特徴的です。

本製品はDS-Lite対応ルーターとしての動作をサポートしているため、DS-Lite対応のインターネット接続サービスを利用することで、LAN側ホストに対しIPv4・IPv6インターネットへの接続を提供できます。

## 基本設定

DS-LiteはIPv6インターネットへの接続が確立していることを前提としています。あらかじめご利用のISPに応じたIPv6インターネット接続設定を行っておいてください。
DS-Liteトンネルインターフェースを使用するための基本設定項目は次の3点です。

1. トンネルインターフェースの作成（interfaceコマンド）
2. DS-Liteトンネルモードの指定（tunnel mode ds-liteコマンド）
3. AFTRの指定（tunnel destinationコマンド）

3のAFTR（Address Family Transition Router）はISP側のDS-Lite対応ルーターで、本製品・AFTR間のIPv4 over IPv6トンネルの終端、および、ユーザー側プライベートIPv4アドレスからISPの保有するグローバルIPv4アドレスへのNAT処理を行います。
以上をふまえ、これ以降ではDS-Lite機能をトンネルインターフェースとして設定する手順を示します。

#### DHCPv6でAFTRのホスト名を取得できる場合

DHCPv6でAFTRのホスト名を取得できる場合は、以下の手順でDS-LiteによるIPv4インターネット接続設定を行います。
ここでは、IPv6 IPoEのDHCPv6 PD方式でIPv6インターネットに接続しており（WAN側インターフェースはeth1）、IPv6のグローバルアドレスはLAN側（eth0）に付与されているものと仮定します。
また、LAN側（eth0）のIPv4アドレスには192.168.10.0/24を使うものとします。

1. トンネルインターフェースtunnel0を作成します。これには、interfaceコマンドを使います。

       awplus(config)# interface tunnel0

2. トンネリング方式としてDS-Liteを指定します。これには、tunnel mode ds-liteコマンドを使います。

       awplus(config-if)# tunnel mode ds-lite

3. AFTRのホスト名をDHCPv6サーバーから取得するよう設定します。これには、tunnel destinationコマンドのdhcp interfaceパラメーターでDHCPv6またはDHCPv6 PDクライアント機能が動作しているインターフェースを指定します。

       awplus(config-if)# tunnel destination dhcp interface eth1
       awplus(config-if)# exit

4. LAN側インターフェース（eth0）にIPv4アドレスを設定します。

       awplus(config)# interface eth0
       awplus(config-if)# ip address 192.168.10.1/24
       awplus(config-if)# exit

5. IPv4のデフォルト経路をDS-Liteトンネルインターフェースtunnel0に向けて設定します。

       awplus(config)# ip route 0.0.0.0/0 tunnel0

設定は以上です。

#### DHCPv6を使用していない、あるいは、DHCPv6でAFTRのホスト名を取得できない場合

DHCPv6を使用していない、あるいは、DHCPv6でAFTRのホスト名を取得できない場合は、以下の手順でDS-LiteによるIPv4インターネット接続設定を行います。
AFTRのホスト名を取得できる場合との違いは、AFTRを手動で設定するかどうかの一点だけです。
ここでは、IPv6 IPoEのRA方式でIPv6インターネットに接続しており（WAN側インターフェースはeth1）、IPv6のグローバルアドレスはLAN側（eth0）に付与されているものと仮定します。
また、LAN側（eth0）のIPv4アドレスには192.168.10.0/24を使うものとします。

1. DS-Liteトンネルインターフェースtunnel0を作成します。これには、interfaceコマンドを使います。

       awplus(config)# interface tunnel0

2. トンネリング方式としてDS-Liteを指定します。これには、tunnel mode ds-liteコマンドを使います。

       awplus(config-if)# tunnel mode ds-lite

3. AFTRのホスト名をスタティックに設定します。これには、tunnel destinationコマンドを使います。

       awplus(config-if)# tunnel destination aftr.example.com
       awplus(config-if)# exit

4. LAN側インターフェース（eth0）にIPv4アドレスを設定します。

       awplus(config)# interface eth0
       awplus(config-if)# ip address 192.168.10.1/24
       awplus(config-if)# exit

5. IPv4のデフォルト経路をDS-Liteトンネルインターフェースtunnel0に向けて設定します。

       awplus(config)# ip route 0.0.0.0/0 tunnel0

設定は以上です。
なお、ルーターの全体設定については、下記設定例をご覧ください。

- transix IPv4接続（DS-Lite）サービスによるIPv4・IPv6インターネットへの同時接続（ひかり電話契約なし）
- transix IPv4接続（DS-Lite）サービスによるIPv4・IPv6インターネットへの同時接続（ひかり電話契約あり）
- ”クラウドゲートウェイ アプリパッケージ” によるクラウドサービスへの接続（ひかり電話契約なし）
- ”クラウドゲートウェイ アプリパッケージ” によるクラウドサービスへの接続（ひかり電話契約あり）
- ”クロスパス（Xpass）”動的IPサービスによるIPv4・IPv6インターネットへの同時接続（ひかり電話契約なし）

#### DS-Liteの動作

本製品のLAN側（192.168.10.0/24）から外部へのIPv4パケットは、手動で作成したIPv4 over IPv6トンネル（ここではtunnel0）を通ってAFTRに届き、そこで始点アドレスをISPの保有するグローバルに付け替えられた上でインターネットに転送されます。このようにDS-Lite環境ではIPv4のNAT処理をISP側のAFTRが行うため、ユーザー側のルーター（本製品）でIPv4のNAT処理を行う必要はありません。