YAMAHA RTX1200

全体像

  • LAN1(社内LAN)L2TPv3トンネルbridge1 に参加させ、遠隔拠点と同一L2セグメントを延伸しています。
  • L2TPv3 の制御/データは IPsec(ESP) で暗号化(ipsec transport 1 101 udp 1701)。
  • WAN側は lan2DHCP によりアドレス取得、NAT(masquerade) を実施。
  • トンネルは 常時確立(always-on)DPD による死活監視あり。
bridge member bridge1 lan1 tunnel1
ip bridge1 address 192.168.0.202/24
l2tpv3 over IPsec(udp/1701, ESP)
WAN(lan2)=DHCP + NAT masquerade

※参考書籍リンク

主要設定の説明

実設定(秘匿情報マスキング)から、論点ごとに解説します。

1. ルーティング/デフォルト経路

ip routing on
ip route default gateway dhcp lan2
  • ルータ機能を有効化し、lan2(WAN) で取得したDHCPゲートウェイを既定ルートに設定。

2. ブリッジとアドレス

bridge member bridge1 lan1 tunnel1
ip bridge1 address 192.168.0.202/24
  • bridge1LAN1トンネル(tunnel1) を参加。レイヤ2延伸(同一セグメント化)。
  • ブリッジIFに管理用IPを付与(SVI的な役割)。

3. WAN(lan2)とNAT

ip lan2 address dhcp
ip lan2 nat descriptor 1
nat descriptor type 1 masquerade
nat descriptor address outer 1 primary
  • lan2DHCPクライアント。NAT記述子1を適用し Masquerade NAT
  • outer 1 primary は外向きアドレスにインタフェースの主IPを利用。

4. IPsec + L2TPv3 トンネル(tunnel 1)

tunnel select 1
 tunnel encapsulation l2tpv3
 tunnel endpoint address <REMOTE_GLOBAL_IP>
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 1 691200 rekey 90%
  ipsec ike duration isakmp-sa 1 691200 rekey 90%
  ipsec ike keepalive log 1 on
  ipsec ike keepalive use 1 on dpd 10 6 0
  ipsec ike local address 1 192.168.0.202
  ipsec ike local name 1 <LOCAL_ID> fqdn
  ipsec ike nat-traversal 1 on keepalive=30 force=off
  ipsec ike pre-shared-key 1 text <REDACTED_PSK>
  ipsec ike remote address 1 <REMOTE_GLOBAL_IP>
  ipsec ike restrict-dangling-sa 1 off
 l2tp always-on on
 l2tp tunnel disconnect time off
 l2tp keepalive use on 5 10
 l2tp keepalive log on
 l2tp syslog on
 l2tp remote end-id <REDACTED_ID>
 tunnel enable 1
  • L2TPv3 をカプセル化方式に指定し、リモートのグローバルIPを終端として指定。
  • IPsecトンネルID=101 を紐付け、ESP(AES-CBC) + SHA-HMAC を使用。
  • SA有効期限(8日相当)と 90%再キーイングDPD(10秒×6回) で死活検出。
  • ipsec ike nat-traversal on により NAT越え対応(UDP 4500)
  • l2tp always-on on常時接続keepalive途切れ検知
  • l2tp remote end-id相手識別子。公開時は必ず伏せる。

5. IPsec/L2TPまわりのNAT例外

nat descriptor masquerade static 1 1 192.168.0.202 udp 500
nat descriptor masquerade static 1 2 192.168.0.202 esp
ipsec auto refresh on
ipsec transport 1 101 udp 1701
  • IKE(UDP/500) と ESP を NATで固定化(装置間でIPsecを安定動作させるための例外・ピンホール確保)。
  • ipsec transport ... udp 1701L2TP(UDP/1701)transportモードIPsec で保護する指定。

6. 管理系サービス/名前解決

telnetd host lan
dns server dhcp lan2
l2tp service on l2tpv3
  • Telnet管理をLANから許可(※平文のため、SSH推奨)。
  • DNSは lan2 のDHCPで提示されたサーバを使用。
  • L2TPv3サービスを有効化(装置のL2TP処理をオン)。

7. Heartbeat(死活通知)

heartbeat2 myname keepalive
heartbeat2 transmit 1 auth keepalive 192.168.0.255
heartbeat2 transmit interval 30
heartbeat2 transmit enable 1
  • 30秒間隔で ブロードキャスト(192.168.0.255)認証付きキープアライブを送信。監視/冗長構成の一部として使われる機能。

設定ファイル

# show config (sanitized/sample)
ip routing on
ip route default gateway dhcp lan2

bridge member bridge1 lan1 tunnel1
ip bridge1 address 192.168.0.202/24

ip lan2 address dhcp
ip lan2 nat descriptor 1

nat descriptor type 1 masquerade
nat descriptor address outer 1 primary
nat descriptor masquerade static 1 1 192.168.0.202 udp 500
nat descriptor masquerade static 1 2 192.168.0.202 esp

# Tunnel: L2TPv3 over IPsec
tunnel select 1
 tunnel encapsulation l2tpv3
 tunnel endpoint address 203.0.113.94
 ipsec tunnel 101
  ipsec sa policy 101 1 esp aes-cbc sha-hmac
  ipsec ike duration ipsec-sa 1 691200 rekey 90%
  ipsec ike duration isakmp-sa 1 691200 rekey 90%
  ipsec ike keepalive log 1 on
  ipsec ike keepalive use 1 on dpd 10 6 0
  ipsec ike local address 1 192.168.0.202
  ipsec ike local name 1 rtx-local.example.jp fqdn
  ipsec ike nat-traversal 1 on keepalive=30 force=off
  ipsec ike pre-shared-key 1 text REDACTED_PSK
  ipsec ike remote address 1 203.0.113.94
  ipsec ike restrict-dangling-sa 1 off
 l2tp always-on on
 l2tp tunnel disconnect time off
 l2tp keepalive use on 5 10
 l2tp keepalive log on
 l2tp syslog on
 l2tp remote end-id REDACTED_ID
 tunnel enable 1

ipsec auto refresh on
ipsec transport 1 101 udp 1701

# 管理系(公開時はTelnet無効の例に)
# telnetd host lan
sshd service on
sshd host lan

# DNS
dns server dhcp lan2

# Heartbeat(必要時のみ)
# heartbeat2 myname keepalive
# heartbeat2 transmit 1 auth keepalive 192.168.0.255
# heartbeat2 transmit interval 30
# heartbeat2 transmit enable 1