# VPN / L2TPv2

L2TPv2（Layer Two Tunnelling Protocol Version 2）は、PPPフレームをIP（UDP）でトンネリングするプロトコルです。
本製品ではIPv4/IPv6ネットワーク上におけるPPP（IPv4/IPv6）パケットのトンネリングに対応しています。
また、トランスポートモードIPsecを併用した通信内容の暗号化と認証にも対応しています。
本製品のL2TPv2トンネルの基本仕様は以下のとおりです。

- デリバリー（外側）プロトコル：IPv4/IPv6
  IPv4およびIPv6ネットワーク上にL2TPv2トンネルを構築可能
- ペイロード（内側）プロトコル：PPP
  - PPPインターフェースにIPv4アドレスを割り当てれば、IPv4インターフェースとしてIPv4パケットのルーティングが可能
  - PPPインターフェースにIPv6アドレスを割り当てれば、IPv6インターフェースとしてIPv6パケットのルーティングが可能
- トランスポートモード IPsec を併用することによりトンネルトラフィックの保護（ESPによる暗号化と認証）が可能。

Note

IPアドレスが不定な対向装置との接続はできません。

Note

L2TPv2とブリッジの併用はできません。ブリッジと併用したい場合はL2TPv3 を使用してください。

Note

L2TPv2の設定では、他のVPNプロトコル（IPsec、L2TPv3、OpenVPN、GRE）のようにトンネルインターフェース（tunnelX）を使用せず、L2TPv2トンネル上に作成した「pppX」インターフェースを使用します。

本章ではL2TPv2トンネルに特化した説明を行います。
インターフェース全般については「インターフェース」/「一般設定」を、IPsecについては「VPN」/「IPsec」をご覧ください。
また、L2TPv2を使用するための具体的かつ全体的な設定については「設定例集」をご覧ください。

## 基本設定

### L2TPv2 over IPv4

IPv4ネットワーク上に作成したL2TPv2トンネル経由で、ルーターA、ルーターB間のPPP接続を行い、各ルーター配下のvlan1間でIPv4パケットをルーティングするには、次の手順にしたがいます。

以下では、上記構成図のルーターAを例に具体的な設定手順を示します。
なお、前提事項として、ルーターA・BはIPv4でインターネットに接続しているものとします。WAN側インターフェースのIPアドレスは固定であり、ルーター間でのIP通信もできているものとします。

1. L2TPv2トンネル「l2tun」を作成します。これにはl2tp tunnelコマンドを使います。

       awplus(config)# l2tp tunnel l2tun

2. L2TPv2デリバリーパケットの始点・終点アドレス（自装置と対向装置のIPアドレス）を指定します。これには、source / destinationコマンドを使います。

       awplus(config-l2tp-tunnel)# source 10.1.1.1
       awplus(config-l2tp-tunnel)# destination 10.2.2.2

3. L2TPv2トンネル上にPPPインターフェース「10」を作成します。これには、encapsulation pppコマンドを使います。

       awplus(config-l2tp-tunnel)# encapsulation ppp 10
       awplus(config-l2tp-tunnel)# exit

4. L2TPv2トンネル上のPPPインターフェースppp10にIPアドレスを設定して、同インターフェースでIPv4パケットのルーティングが行われるようにします。これには、ip addressコマンドを使います。

       awplus(config)# interface ppp10
       awplus(config-if)# ip address 192.168.100.1/30
       awplus(config-if)# exit

5. 対向拠点へのスタティック経路を登録します。これには、ip routeコマンドを使います。

       awplus(config)# ip route 192.168.20.0/24 ppp10

設定は以上です。
インターフェースへのIPアドレス設定については「IP」/「IPインターフェース」を、IPの経路設定については「IP」/「経路制御」、および、ダイナミックルーティングに関する各セクションをご覧ください。

#### IPsecによる保護

上記設定ではL2TPv2トンネル上を流れるPPPパケットは平文のままです。トンネル上のトラフィックを暗号化するには、次の手順を追加してIPsec保護を有効にしてください。

1. ISAKMPの事前共有鍵を設定します。これにはcrypto isakmp keyコマンドを使います。addressパラメーターで指定するのは、IPsecの接続相手（対向装置）、すなわち、ルーターBのIPアドレスです。

       awplus(config)# crypto isakmp key ouR4ecret address 10.2.2.2

2. L2TPv2トンネルl2tunに対し、IPsecによる保護を適用します。これにはprotection ipsecコマンドを使います。

       awplus(config)# l2tp tunnel l2tun
       awplus(config-l2tp-tunnel)# protection ipsec

### L2TPv2 over IPv6

IPv6ネットワーク上に作成したL2TPv2トンネル経由で、ルーターA、ルーターB間のPPP接続を行い、各ルーター配下のvlan1間でIPv4パケットをルーティングするには、次の手順にしたがいます。

以下では、上記構成図のルーターAを例に具体的な設定手順を示します。
なお、前提事項として、ルーターA・BはIPv6でインターネットに接続しているものとします。WAN側インターフェースのIPv6アドレスは固定であり、ルーター間でのIPv6通信もできているものとします。

1. L2TPv2トンネル「l2tun」を作成します。これにはl2tp tunnelコマンドを使います。

       awplus(config)# l2tp tunnel l2tun

2. L2TPv2デリバリーパケットとしてIPv6を使用するよう指定します。これには、ip-versionコマンドを使います。

       awplus(config-l2tp-tunnel)# ip-version 6

3. L2TPv2デリバリーパケットの始点・終点アドレス（自装置と対向装置のIPv6アドレス）を指定します。これには、source / destinationコマンドを使います。

       awplus(config-l2tp-tunnel)# source 2001:db8:1:1::1
       awplus(config-l2tp-tunnel)# destination 2001:db8:2:2::2

4. L2TPv2トンネル上にPPPインターフェース「10」を作成します。これには、encapsulation pppコマンドを使います。

       awplus(config-l2tp-tunnel)# encapsulation ppp 10
       awplus(config-l2tp-tunnel)# exit

5. L2TPv2トンネル上のPPPインターフェースppp10にIPアドレスを設定して、同インターフェースでIPv4パケットのルーティングが行われるようにします。これには、ip addressコマンドを使います。

       awplus(config)# interface ppp10
       awplus(config-if)# ip address 192.168.100.1/30
       awplus(config-if)# exit

6. 対向拠点へのスタティック経路を登録します。これには、ip routeコマンドを使います。

       awplus(config)# ip route 192.168.20.0/24 ppp10

設定は以上です。
インターフェースへのIPアドレス設定については「IP」/「IPインターフェース」を、IPの経路設定については「IP」/「経路制御」、および、ダイナミックルーティングに関する各セクションをご覧ください。

#### IPsecによる保護

上記設定ではL2TPv2トンネル上を流れるPPPパケットは平文のままです。トンネル上のトラフィックを暗号化するには、次の手順を追加してIPsec保護を有効にしてください。

1. ISAKMPの事前共有鍵を設定します。これにはcrypto isakmp keyコマンドを使います。addressパラメーターで指定するのは、IPsecの接続相手（対向装置）、すなわち、ルーターBのIPv6アドレスです。

       awplus(config)# crypto isakmp key ouR4ecret address 2001:db8:2:2::2

2. L2TPv2トンネルl2tunに対し、IPsecによる保護を適用します。これにはprotection ipsecコマンドを使います。

       awplus(config)# l2tp tunnel l2tun
       awplus(config-l2tp-tunnel)# protection ipsec

## 弊社AlliedWareルーターとのL2TP接続

AR570S、AR415Sなどの弊社AlliedWareルーターとL2TP接続するときは、L2TPトンネルモードのlocal-subaddress、remote-subaddressコマンドで自装置側と対向装置側の「L2TPコール名」を指定する必要があります。
また、L2TPサーバーパスワードが設定されている場合は、shared-secretコマンドでパスワードを指定する必要があります。
たとえば、AlliedWareルーター側で次のようなL2TPコール設定が行われている場合

    enable l2tp
    enable l2tp server=both
    add l2tp password=secret
    add l2tp call=branch1 remote=center ip=10.1.1.1 type=virtual password=secret precedence=out
    ...

本製品のL2TPトンネル設定は次のようになります。

    awplus(config)# l2tp tunnel l2tun
    awplus(config-l2tp-tunnel)# source 10.1.1.1
    awplus(config-l2tp-tunnel)# destination 10.2.2.2
    awplus(config-l2tp-tunnel)# local-subaddress center
    awplus(config-l2tp-tunnel)# remote-subaddress branch1
    awplus(config-l2tp-tunnel)# shared-secret secret
    ...

AlliedWareルーターとのL2TP接続に関するより具体的な設定については「設定例集」をご覧ください。

## 設定と状態の確認

L2TPv2トンネルの情報はshow l2tp tunnelコマンドで確認できます。

    awplus# show l2tp tunnel

L2TPv2セッションの情報はshow l2tp sessionコマンドで確認できます。

    awplus# show l2tp session

L2TPv2トンネル上のPPPインターフェースの情報はshow interfaceコマンドで確認できます。

    awplus# show interface ppp10