19. L2TPv2/IPsec設定

19.1. L2TPv2/IPsecを使用する

L2TP/IPsecを使用してパソコンやスマートフォンなどのスマートデバイスから直接VPN接続する例です。
※Android 12以降ではL2TP/IPsecを利用することはできません。
../_images/l2tp_vpn.png

19.1.1. 設定

19.1.1.1. 本装置の設定

Router# configure
Router(config)# ip route default GigaEthernet0.1
Router(config)# ike nat-traversal
Router(config)# ike proposal ike-proposal-a encryption aes-256 hash sha2-512 group 3072-bit
Router(config)# ike proposal ike-proposal-b encryption aes-192 hash sha2-384 group 2048-bit
Router(config)# ike proposal ike-proposal-c encryption aes hash sha group 1024-bit
Router(config)# ike policy ike-policy peer any key psk mode aggressive ike-proposal-a,ike-proposal-b,ike-proposal-c
Router(config)# ipsec autokey-proposal ipsec-proposal-a esp-aes-256 esp-sha2-512
Router(config)# ipsec autokey-proposal ipsec-proposal-b esp-aes-192 esp-sha2-384
Router(config)# ipsec autokey-proposal ipsec-proposal-c esp-aes esp-sha
Router(config)# ipsec dynamic-map ipsec-policy ipv4 ipsec-proposal-a,ipsec-proposal-b,ipsec-proposal-c
Router(config)# proxy-dns server 198.51.100.1 priority 110
Router(config)# proxy-dns server 198.51.100.2 priority 90
Router(config)# ppp profile ppp-profile
Router(config-ppp-ppp-profile)# authentication myname user@example.com
Router(config-ppp-ppp-profile)# authentication password user@example.com ppp-password
Router(config-ppp-ppp-profile)# exit
Router(config)# ppp profile lns
Router(config-ppp-lns)# authentication request chap
Router(config-ppp-lns)# authentication password vpn-name vpn-password
Router(config-ppp-lns)# lcp pfc
Router(config-ppp-lns)# lcp acfc
Router(config-ppp-lns)# ipcp provide-remote-dns 192.168.0.254
Router(config-ppp-lns)# ipcp provide-ip-address range 192.168.0.201 192.168.0.250
Router(config-ppp-lns)# exit
Router(config)# ip dhcp profile dhcp-profile
Router(config-dhcp-dhcp-profile)# dns-server 192.168.0.254
Router(config-dhcp-dhcp-profile)# exit
Router(config)# interface GigaEthernet2.0
Router(config-GigaEthernet2.0)# ip address 192.168.0.254/24
Router(config-GigaEthernet2.0)# ip proxy-arp
Router(config-GigaEthernet2.0)# ip dhcp enable
Router(config-GigaEthernet2.0)# ip dhcp binding dhcp-profile
Router(config-GigaEthernet2.0)# proxy-dns ip enable
Router(config-GigaEthernet2.0)# no shutdown
Router(config-GigaEthernet2.0)# exit
Router(config)# interface GigaEthernet0.1
Router(config-GigaEthernet0.1)# encapsulation pppoe
Router(config-GigaEthernet0.1)# ppp binding ppp-profile
Router(config-GigaEthernet0.1)# ip address 203.0.113.1/32
Router(config-GigaEthernet0.1)# ip napt enable
Router(config-GigaEthernet0.1)# ip napt static GigaEthernet0.1 udp 500
Router(config-GigaEthernet0.1)# ip napt static GigaEthernet0.1 50
Router(config-GigaEthernet0.1)# ip napt static GigaEthernet0.1 udp 4500
Router(config-GigaEthernet0.1)# no shutdown
Router(config-GigaEthernet0.1)# exit
Router(config)# interface Tunnel0.0
Router(config-Tunnel0.0)# ppp binding lns
Router(config-Tunnel0.0)# tunnel mode l2tp-lns ipsec
Router(config-Tunnel0.0)# ip unnumbered GigaEthernet2.0
Router(config-Tunnel0.0)# ip tcp adjust-mss auto
Router(config-Tunnel0.0)# ipsec policy transport ipsec-policy
Router(config-Tunnel0.0)# proxy-dns ip enable
Router(config-Tunnel0.0)# no shutdown
Router(config-Tunnel0.0)# exit
Router(config)# interface Tunnel1.0
Router(config-Tunnel1.0)# ppp binding lns
Router(config-Tunnel1.0)# tunnel mode l2tp-lns ipsec
Router(config-Tunnel1.0)# ip unnumbered GigaEthernet2.0
Router(config-Tunnel1.0)# ip tcp adjust-mss auto
Router(config-Tunnel1.0)# ipsec policy transport ipsec-policy
Router(config-Tunnel1.0)# proxy-dns ip enable
Router(config-Tunnel1.0)# no shutdown
Router(config-Tunnel1.0)# exit
Router(config)#

19.1.2. 解説

ip route default GigaEthernet0.1

デフォルトルートをPPPoEインタフェースに設定します。

ike nat-traversal

NATトラバーサル機能を有効化します。

ike proposal ike-proposal-a encryption aes-256 hash sha2-512 group 3072-bit
ike proposal ike-proposal-b encryption aes-192 hash sha2-384 group 2048-bit
ike proposal ike-proposal-c encryption aes hash sha group 1024-bit
ike policy ike-policy peer any key psk mode aggressive ike-proposal-a,ike-proposal-b,ike-proposal-c
ISAKMP SA確立に使用するプロポーザルを指定します。
プロポーザルの設定はクライアントによってサポートが異なるため、複数の設定を用意します。
ipsec autokey-proposal ipsec-proposal-a esp-aes-256 esp-sha2-512
ipsec autokey-proposal ipsec-proposal-b esp-aes-192 esp-sha2-384
ipsec autokey-proposal ipsec-proposal-c esp-aes esp-sha
ipsec dynamic-map ipsec-policy ipv4 ipsec-proposal-a,ipsec-proposal-b,ipsec-proposal-c
IPsec SA確立に使用するプロポーザルを指定します。
IKEプロポーザルと同様に複数の設定を用意します。
ppp profile lns
  authentication request chap
  authentication password vpn-name vpn-password
  ipcp provide-remote-dns 192.168.0.254
  ipcp provide-ip-address range 192.168.0.201 192.168.0.250
interface Tunnel0.0
  ppp binding lns
interface Tunnel1.0
  ppp binding lns
L2TP接続に必要なユーザー名とパスワードをPPPプロファイルに設定します。
このプロファイルはリモートクライアントからの接続用にトンネルインタフェースへ関連付けします。
接続するリモートクライアント分トンネルインタフェースを作成する必要があります。
リモートクライアントからVPN接続する際のユーザー名とパスワードを、"authentication password"コマンドから設定します。
リモートクライアント側へ割り当てるDNSサーバーのアドレスとIPアドレスの範囲も設定できます。
ppp profile lns
  lcp pfc
  lcp acfc

LCP(リンク制御プロトコル)のPFC(Protocol-Field-Compression)とACFC(Address-and-Control-Field-Compression)を有効にします。

interface Tunnel0.0
  tunnel mode l2tp-lns ipsec
  ipsec policy transport ipsec-policy
トンネルモードをL2TP-LNS IPsecに設定します。
トンネルインタフェースにIPsecのポリシー名を関連付けます。

19.2. ダイナミックDNSを使用したL2TPv2/IPsec接続

L2TP/IPsecを使用してパソコンやスマートフォンなどのスマートデバイスから直接VPN接続する例です。
※Android 12以降ではL2TP/IPsecを利用することはできません。
NetMeisterのダイナミックDNSを利用して接続することもできます。
グループIDとグループパスワードは、事前に以下の内容でNetMeisterに登録済みとします。
../_images/netmeister.png ../_images/l2tp_dynamic.png

19.2.1. 設定

19.2.1.1. 本装置の設定

Router# configure
Router(config)#hostname IX-R2520
IX-R2520(config)# ip route default GigaEthernet0.1
IX-R2520(config)# ike nat-traversal
IX-R2520(config)# ike proposal ike-proposal-a encryption aes-256 hash sha2-512 group 3072-bit
IX-R2520(config)# ike proposal ike-proposal-b encryption aes-192 hash sha2-384 group 2048-bit
IX-R2520(config)# ike proposal ike-proposal-c encryption aes hash sha group 1024-bit
IX-R2520(config)# ike policy ike-policy peer any key psk mode aggressive ike-proposal-a,ike-proposal-b,ike-proposal-c
IX-R2520(config)# ipsec autokey-proposal ipsec-proposal-a esp-aes-256 esp-sha2-512
IX-R2520(config)# ipsec autokey-proposal ipsec-proposal-b esp-aes-192 esp-sha2-384
IX-R2520(config)# ipsec autokey-proposal ipsec-proposal-c esp-aes esp-sha
IX-R2520(config)# ipsec dynamic-map ipsec-policy ipv4 ipsec-proposal-a,ipsec-proposal-b,ipsec-proposal-c
IX-R2520(config)# nm ip enable
IX-R2520(config)# nm account sample-group password plain sample-password
IX-R2520(config)# nm sitename tokyo
IX-R2520(config)# ppp profile ppp-profile
IX-R2520(config-ppp-ppp-profile)# authentication myname user@example.com
IX-R2520(config-ppp-ppp-profile)# authentication password user@example.com ppp-password
IX-R2520(config-ppp-ppp-profile)# exit
IX-R2520(config)# ppp profile lns
IX-R2520(config-ppp-lns)# authentication request chap
IX-R2520(config-ppp-lns)# authentication password vpn-name vpn-password
IX-R2520(config-ppp-lns)# lcp pfc
IX-R2520(config-ppp-lns)# lcp acfc
IX-R2520(config-ppp-lns)# ipcp provide-remote-dns 192.168.0.254
IX-R2520(config-ppp-lns)# ipcp provide-ip-address range 192.168.0.201 192.168.0.250
IX-R2520(config-ppp-lns)# exit
IX-R2520(config)# ip dhcp profile dhcp-profile
IX-R2520(config-dhcp-dhcp-profile)# dns-server 192.168.0.254
IX-R2520(config-dhcp-dhcp-profile)# exit
IX-R2520(config)# interface GigaEthernet2.0
IX-R2520(config-GigaEthernet2.0)# ip address 192.168.0.254/24
IX-R2520(config-GigaEthernet2.0)# ip proxy-arp
IX-R2520(config-GigaEthernet2.0)# ip dhcp enable
IX-R2520(config-GigaEthernet2.0)# ip dhcp binding dhcp-profile
IX-R2520(config-GigaEthernet2.0)# proxy-dns ip enable
IX-R2520(config-GigaEthernet2.0)# no shutdown
IX-R2520(config-GigaEthernet2.0)# exit
IX-R2520(config)# interface GigaEthernet0.1
IX-R2520(config-GigaEthernet0.1)# encapsulation pppoe
IX-R2520(config-GigaEthernet0.1)# ppp binding ppp-profile
IX-R2520(config-GigaEthernet0.1)# ip address ipcp
IX-R2520(config-GigaEthernet0.1)# ip napt enable
IX-R2520(config-GigaEthernet0.1)# ip napt static GigaEthernet0.1 udp 500
IX-R2520(config-GigaEthernet0.1)# ip napt static GigaEthernet0.1 50
IX-R2520(config-GigaEthernet0.1)# ip napt static GigaEthernet0.1 udp 4500
IX-R2520(config-GigaEthernet0.1)# no shutdown
IX-R2520(config-GigaEthernet0.1)# exit
IX-R2520(config)# interface Tunnel0.0
IX-R2520(config-Tunnel0.0)# ppp binding lns
IX-R2520(config-Tunnel0.0)# tunnel mode l2tp-lns ipsec
IX-R2520(config-Tunnel0.0)# ip unnumbered GigaEthernet2.0
IX-R2520(config-Tunnel0.0)# ip tcp adjust-mss auto
IX-R2520(config-Tunnel0.0)# ipsec policy transport ipsec-policy
IX-R2520(config-Tunnel0.0)# proxy-dns ip enable
IX-R2520(config-Tunnel0.0)# no shutdown
IX-R2520(config-Tunnel0.0)# exit
IX-R2520(config)# interface Tunnel1.0
IX-R2520(config-Tunnel1.0)# ppp binding lns
IX-R2520(config-Tunnel1.0)# tunnel mode l2tp-lns ipsec
IX-R2520(config-Tunnel1.0)# ip unnumbered GigaEthernet2.0
IX-R2520(config-Tunnel1.0)# ip tcp adjust-mss auto
IX-R2520(config-Tunnel1.0)# ipsec policy transport ipsec-policy
IX-R2520(config-Tunnel1.0)# proxy-dns ip enable
IX-R2520(config-Tunnel1.0)# no shutdown
IX-R2520(config-Tunnel1.0)# exit
IX-R2520(config)#

19.2.2. 解説

ip route default GigaEthernet0.1

デフォルトルートをPPPoEインタフェースに設定します。

ike nat-traversal

NATトラバーサル機能を有効化します。

ike proposal ike-proposal-a encryption aes-256 hash sha2-512 group 3072-bit
ike proposal ike-proposal-b encryption aes-192 hash sha2-384 group 2048-bit
ike proposal ike-proposal-c encryption aes hash sha group 1024-bit
ike policy ike-policy peer any key psk mode aggressive ike-proposal-a,ike-proposal-b,ike-proposal-c
ISAKMP SA確立に使用するプロポーザルを指定します。
プロポーザルの設定はクライアントによってサポートが異なるため、複数の設定を用意します。
ipsec autokey-proposal ipsec-proposal-a esp-aes-256 esp-sha2-512
ipsec autokey-proposal ipsec-proposal-b esp-aes-192 esp-sha2-384
ipsec autokey-proposal ipsec-proposal-c esp-aes esp-sha
ipsec dynamic-map ipsec-policy ipv4 ipsec-proposal-a,ipsec-proposal-b,ipsec-proposal-c
IPsec SA確立に使用するプロポーザルを指定します。
IKEプロポーザルと同様に複数の設定を用意します。
ppp profile lns
  authentication request chap
  authentication password vpn-name vpn-password
  ipcp provide-remote-dns 192.168.0.254
  ipcp provide-ip-address range 192.168.0.201 192.168.0.250
interface Tunnel0.0
  ppp binding lns
interface Tunnel1.0
  ppp binding lns
L2TP接続に必要なユーザー名とパスワードをPPPプロファイルに設定します。
このプロファイルはリモートクライアントからの接続用にトンネルインタフェースへ関連付けします。
接続するリモートクライアント分トンネルインタフェースを作成する必要があります。
リモートクライアントからVPN接続する際のユーザー名とパスワードを、"authentication password"コマンドから設定します。
リモートクライアント側へ割り当てるDNSサーバーのアドレスとIPアドレスの範囲も設定できます。
ppp profile lns
  lcp pfc
  lcp acfc

LCP(リンク制御プロトコル)のPFC(Protocol-Field-Compression)とACFC(Address-and-Control-Field-Compression)を有効にします。

interface Tunnel0.0
  tunnel mode l2tp-lns ipsec
  ipsec policy transport ipsec-policy
トンネルモードをL2TP-LNS IPsecに設定します。
トンネルインタフェースにIPsecのポリシー名を関連付けます。