YAMAHA RTXシリーズを利用した社内ネットワークの作り方(L2TPv3)

ネットワーク

<景品表示法に基づく表記> 本サイトのコンテンツには、商品プロモーションが含まれている場合があります。

L2TPv3ってなに。L2TPとの違いは。社内ネットワークでの利用法は。

この疑問に回答します。

この記事の内容はこちら
  • L2TPv3とは
  • L2TPv2(L2TP/IPsec)と L2TPv3(L2TPv3/IPsec)の違い
  • ネットワーク構成
  • Config設定

私が実際に利用している環境です。お役立て下さい。

L2TPv3とは、拠点間をVPNで同一セグメントに構築する技術

L2TPv3 (Layer 2 Tunneling Protocol version 3) はOSI参照モデルのデータリンク層(L2)で実現するトンネリングプロトコルです。L2フレームをIPパケットにカプセル化し、OSI参照モデルのネットワーク層(L3)でルーティングさせることができます。

この特徴を利用し、「複数の拠点間を同一セグメントでネットワークを構築すること」ができます。L2TPv3自体は暗号化の仕組みを持っていないのでIPsecと組合せて利用する事になります。

L2TPv2(L2TP/IPsec)と L2TPv3(L2TPv3/IPsec)の違い

L2TPv2(version 2)とL2TPv3(version 3)の違いは、L2TPv3はL2フレームのトンネリングに対応してる点です。そのため用途で使い分けが行われています。

一般的に、パソコンやスマホからVPN接続を利用する方式がL2TPv2で、ルーターからVPN接続を利用する方式がL2TPv3で利用します。

  • L2TPv2は、利用者がVPN接続の実行を認識しています
  • L2TPv3は、利用者がVPN接続の実行を認識していません

L2TPv2(L2TP/IPsec)

L2TP/IPsecを利用したVPN接続
L2TP/IPsecを利用したVPN接続

L2TP/IPsecを利用したVPN接続は、パソコンやスマホの本体で直接VPN接続を実行します。接続先のネットワークに自由にアクセスができますが、同様にVPN接続してきたパソコンやスマホにはアクセスすることが出来ません。

L2TPv3(L2TPv3/IPsec)

L2TPv3/IPsecを利用したVPN接続

L2TPv3/IPsecを利用したVPN接続は、パソコンやスマホの本体でVPN接続を行わず、ネットワーク経路に設置されたルーターなどのネットワーク機器で間接的にVPN接続を実行します。そのためパソコンやスマホは制限なく自由にアクセスすることができます。

YAMAHA RTXシリーズ を利用したネットワーク構成

インターネットへの接続はフレッツ網を利用したPPPoE接続と専用線を利用したダイレクト接続の2拠点です。この拠点間をブリッジ接続し同一セグメントを構築します。どちらの拠点も固定グローバルIPです。

ネットワーク図
ネットワーク図

今回導入したYAMAHA機器

拠点毎にセグメントを割り当てが出来ればトンネリングを利用しなくても済みますが、どうしても仕方なく設定を行う必要が出て来ました。

ルーター

関連記事 Amazonで【RTX1210】をお得に買う方法

1拠点を繋ぐ場合はRTX810で済みますが、複数のトンネルが可能な汎用性のあるRTX1210を選定しました。RTX1200でも利用可能です。

スイッチ

ポート数の多いYAMAHAのスイッチは高かったのでBUFFALOを選定しました。タグVLANが使えれば何でも構いません。

今回の構成では、ただのスイッチングハブとして利用しています。

Config設定

ルーター(YAMAHA RTX1210)

YAMAHA RTX1210 #1と#2の間でL2TPv3/IPsecを用いたVPNを構築します。

両ルーターのLAN1を同一セグメントとしてPC間での通信が可能です。

些細な設定を行うために現地まで行くのが手間なのでメンテナンス用のTELNETかSSHを有効にした方が融通が利きます。だだし、設定を間違えると現地に行く事になりますのでご注意ください。

PPPoE接続の場合

RTX1210 #1 (PPPoE接続)のConfig

# デフォルトデートウェイの設定
ip route default gateway pp 1

# DNSサーバの指定
dns server pp 1

# フィルタリング設定
ip filter source-route on
ip filter directed-broadcast on

# ブリッジ設定
bridge member bridge1 lan1 tunnel1
ip bridge1 address 192.168.0.1/24

# プロバイダ接続
# 接続方式で設定する
pp select 1
 pp always-on on
 pppoe use lan2
 pp auth accept pap chap
 pp auth myname "ID" "PASS"
 ppp lcp mru on 1454
 ppp ipcp msext on
 ip pp address 100.0.0.1/32
 ip pp mtu 1454
 ip pp secure filter in 1040 1041 1042 1043 1050 2000
 ip pp secure filter out 3000 dynamic 105 106
 ip pp nat descriptor 1
 pp enable 1

# L2TPv3設定
tunnel select 1
 tunnel encapsulation l2tpv3
 tunnel endpoint address 192.168.0.1 200.0.0.1
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike keepalive log 1 on
  ipsec ike keepalive use 1 on
 # 自分のローカルIP
  ipsec ike local address 1 192.168.0.1
  # パスワード 任意の文字列
  ipsec ike pre-shared-key 1 text yamaha
 # 相手のグローバルIP
  ipsec ike remote address 1 200.0.0.1
 l2tp always-on on
 # ホスト名 任意の文字列
 l2tp hostname HOST1
 # IPSecパスワード
 l2tp tunnel auth on yamaha
 l2tp tunnel disconnect time off
 l2tp keepalive use on 60 3
 l2tp keepalive log on
 l2tp syslog on
 # 自分のローカルIP 
 l2tp local router-id 192.168.0.1
 # 相手のローカルIP
 l2tp remote router-id 192.168.0.2
 l2tp remote end-id yamaha
 ip tunnel tcp mss limit auto
 tunnel enable 1

# フィルター設定
ip filter 1040 pass * * udp * 500
ip filter 1041 pass * * udp * 1701
ip filter 1042 pass * * udp * 4500
ip filter 1043 pass * * esp
# メンテナンスを行う接続元IP
ip filter 1050 pass 200.200.200.1 * tcp * telnet
ip filter 2000 reject * *
ip filter 3000 pass * *
ip filter dynamic 105 * * tcp
ip filter dynamic 106 * * udp

# NAT設定
nat descriptor type 1 masquerade
nat descriptor address outer 1 100.0.0.1
nat descriptor address inner 1 auto
# 利用するパケットは内部にNATし疎通させる
nat descriptor masquerade static 1 1 192.168.0.1 udp 500
nat descriptor masquerade static 1 2 192.168.0.1 esp
nat descriptor masquerade static 1 3 192.168.0.1 udp 4500
nat descriptor masquerade static 1 4 192.168.0.1 tcp telnet

# IPsec設定
ipsec auto refresh on
ipsec transport 1 101 udp 1701

# L2TPv3有効化
l2tp service on l2tpv3

ダイレクト接続の場合

RTX1210 #2(ダイレクト接続)のConfig

# デフォルトデートウェイの設定
ip route default gateway デフォルトゲートウェイIP

# DNSサーバの指定
dns server 外部DNS1 外部DNS2

# フィルタリング設定
ip filter source-route on
ip filter directed-broadcast on

# ブリッジ設定
bridge member bridge1 lan1 tunnel1
ip bridge1 address 192.168.0.2/24

# 専用線の接続設定
ip lan2 address 200.0.0.1/32
ip lan2 secure filter in 1040 1041 1042 1043 1050 1051 2000
ip lan2 secure filter out 3000 dynamic 105 106
ip lan2 nat descriptor 1

# L2TPv3設定
tunnel select 1
 tunnel encapsulation l2tpv3
 tunnel endpoint address 192.168.0.2 100.0.0.1
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike keepalive log 1 on
  ipsec ike keepalive use 1 on
 # 自分のローカルIP
  ipsec ike local address 1 192.168.0.2
  # パスワード 任意の文字列
  ipsec ike pre-shared-key 1 text yamaha
  ipsec ike remote address 1 100.0.0.1
 l2tp always-on on
 # ホスト名 任意の文字列
 l2tp hostname HOST2
 # IPSecパスワード
 l2tp tunnel auth on yamaha
 l2tp tunnel disconnect time off
 l2tp keepalive use on 60 3
 l2tp keepalive log on
 l2tp syslog on
 # 自分のローカルIP 
 l2tp local router-id 192.168.0.2
 # 相手のローカルIP
 l2tp remote router-id 192.168.0.1
 l2tp remote end-id yamaha
 ip tunnel tcp mss limit auto
 tunnel enable 1

# フィルター設定
ip filter 1040 pass * * udp * 500
ip filter 1041 pass * * udp * 1701
ip filter 1042 pass * * udp * 4500
ip filter 1043 pass * * esp
# メンテナンスを行う接続元IP
ip filter 1050 pass 200.200.200.1 * tcp * telnet
ip filter 2000 reject * *
ip filter 3000 pass * *
ip filter dynamic 105 * * tcp
ip filter dynamic 106 * * udp

# NAT設定
nat descriptor type 1 masquerade
nat descriptor address outer 1 200.0.0.1
nat descriptor address inner 1 auto
nat descriptor masquerade static 1 1 192.168.0.2 udp 500
nat descriptor masquerade static 1 2 192.168.0.2 esp
nat descriptor masquerade static 1 3 192.168.0.2 udp 4500
nat descriptor masquerade static 1 4 192.168.0.2 tcp telnet

# IPsec設定
ipsec auto refresh on
ipsec transport 1 101 udp 1701

# L2TPv3有効化
l2tp service on l2tpv3

状態の確認

コマンドでL2TPとIPsecの状態を確認できます

# show status l2tp
------------------- L2TP INFORMATION -------------------
L2TP情報テーブル
  L2TPトンネル数: 1, L2TPセッション数: 1
TUNNEL[1]:
  トンネルの状態: established
  バージョン: L2TPv3
  自機側トンネルID: 46276
  相手側トンネルID: 21054
  自機側IPアドレス: 192.168.0.1
  相手側IPアドレス: 200.0.0.1
  自機側送信元ポート: 1701
  相手側送信元ポート: 1701
  ベンダ名: YAMAHA Corporation
  ホスト名: HOST2
  Next Transmit sequence(Ns): 44528
  Next Receive sequence(Nr) : 44539
  トンネル内のセッション数: 1 session
  セッション情報:
    セッションの状態: established
    自機側セッションID: 62448
    相手側セッションID: 343
    Circuit Status 自機側:UP 相手側:UP
    通信時間: 76日11時間14分26秒
    受信: 1085787895 パケット [7323935773365 オクテット]
    送信: 2182175689 パケット [223421512544 オクテット]

# show ipsec sa
Total: isakmp:1 send:1 recv:1

sa    sgw isakmp connection    dir  life[s] remote-id
----------------------------------------------------------------------------
4     1    -     isakmp        -    8541    200.0.0.1
5     1    4     tra[0001]esp  send 8653    200.0.0.1
6     1    4     tra[0001]esp  recv 8653    200.0.0.1

相手先の情報が表示されると正常にVPN接続が実行されています。

まとめ

L2TPv2(version 2)とL2TPv3(version 3)の違いは、L2フレームのトンネリング対応の可否です。

L2TPv3はL2フレームのトンネリング対応しているので、複数の拠点間を同一セグメントとして通信することができます

L2TPv2はL2フレームのトンネリング対応しておらず、複数の拠点間を同一セグメントとして通信することができません

この通信可否の違いから用途による使い分けが行われています。

  • L2TPv2 パソコンやスマホから利用する方式
  • L2TPv3 ルーターから利用する方式

 

 

以上、「YAMAHA RTXシリーズを利用した社内ネットワークの作り方(L2TPv3)」という記事でした。