設定例集#64: ダイナミックDNSサービスを利用したホスト名(FQDN)によるフレッツ網内VPN接続(ブリッジング構成)


構成
ルーターAの設定
ルーターBの設定
設定の保存
ファイアウォールログについて
ルーターAのコンフィグ
ルーターBのコンフィグ
ルーターAのトリガースクリプト
ルーターBのトリガースクリプト



本設定例では、ソフトイーサ社が提供する「OPEN IPv6 ダイナミック DNS for フレッツ・光ネクスト」サービスを利用して、フレッツ・光ネクスト網内のIPv6折り返し通信でL2TPv3 + IPsec VPNを構築し、拠点間をレイヤー2で接続する手順を説明します。

IPv6ネットワーク上にVPNを構築するには接続先VPNルーターのグローバルIPv6アドレスを指定する必要がありますが、ダイナミックDNSサービスを利用すれば、VPNの接続先をIPv6アドレスではなく、ダイナミックDNSサービスサイトに登録したホスト名(FQDN)で指定できるようになります。これにより、すべての拠点が動的IPv6アドレスの場合でも、VPNを構築できるようになります。

ルーターは起動時に自身のWAN側インターフェース情報(IPv6アドレス)をダイナミックDNSサーバーに登録します。そして、その後IPv6アドレスが変更されたときには、自動的に登録アドレスを更新します。これにより、DNSサーバーはつねにルーターのホスト名に対応する最新のIPv6アドレスを保持することができます。

構成

 
ルーターA
(本社)
ルーターB
(支社)
ルーターの基本設定
WAN側物理インターフェース eth1 eth1
WAN側(eth1)IPv6アドレス 自動設定(SLAAC) 自動設定(SLAAC)
LAN側(br1)IPアドレス 192.168.10.1/24 192.168.10.2/24
IKEフェーズ1(ISAKMP)設定
IKEバージョン
IKEv2
ローカルID sample1.i.open.ad.jp sample2.i.open.ad.jp
リモートID sample2.i.open.ad.jp sample1.i.open.ad.jp
ダイナミックDNSサービス情報
専用更新ホスト名* update-0123456789abcdefff.i.open.ad.jp update-fffedcba9876543210.i.open.ad.jp
ホスト名(FQDN) sample1.i.open.ad.jp sample2.i.open.ad.jp
* ルーターが取得したIPv6アドレスを「OPEN IPv6 ダイナミック DNS for フレッツ・光ネクスト」サービスに登録したホスト名(FQDN)と関連付けるには、「専用更新ホスト名」を使用します。
* ルーターが使用するホスト名(FQDN)や専用更新ホスト名は、あらかじめ取得してあるものとします。

[事前共有鍵]

■ ダイナミックDNSサーバーへのIPv6アドレス登録(更新)までの流れ:
  1. ルーターA、Bは、ダイナミックDNSサーバーのIPv6アドレス情報を知るため、DHCPv6で取得したDNSサーバー宛に名前解決を行います。

  2. 解決したIPv6アドレス宛にアップデートパケット(IPv6 Ping)を投げ、自身のIPv6アドレスをダイナミックDNSサーバーへ登録します。

■ IPsec通信開始までの流れ:
  1. Pingポーリング機能による対向機器のLAN側IPアドレス宛のPing通信が発生すると、ルーターのトンネルインターフェースに設定されている宛先FQDNアドレスの名前解決をするため、DHCPv6で取得したDNSサーバー宛に問い合わせを行います。

  2. 名前解決後、取得したIPv6アドレス情報でIPsecの接続を開始します。

■ 障害 復旧時:
  1. ルーターA、BでPingポーリングがDOWNすると、トリガー20が追加され、tunnelインターフェースの終点IPv6アドレスの更新とISAKMP SAの削除を1分間隔で実行します。

  2. ルーターA、BはダイナミックDNSサーバーにアップデートパケット(IPv6 Ping)を投げ、自身のIPv6アドレスをダイナミックDNSサーバーへ登録します。

  3. ルーターのトンネルインターフェースに設定されている宛先FQDNアドレスの名前解決をするため、DHCPv6で取得したDNSサーバー宛に問い合わせを行います。

  4. 名前解決後、取得したIPv6アドレス情報でIPsecの接続を開始します。

  5. IPsec接続が完了すると、ルーターA、BでPingポーリングがUPし、トリガー20が削除されます。

ルーターAの設定

  1. LANポートにおいて初期状態で有効化されているスパニングツリープロトコル(RSTP)を無効化します。これにはspanning-tree enableコマンドをno形式で実行します。
    スパニングツリープロトコルの詳細は「L2スイッチング」/「スパニングツリープロトコル」をご覧ください。
    no spanning-tree rstp enable
    
  2. WANポートeth1でIPv6のステートレスアドレス自動設定(SLAAC)を有効にします。これにはipv6 enableコマンドを使います。
    この設定により、ルーターから受信したRAのプレフィックス情報にもとづいてeth1のIPv6アドレスが自動設定されます。
    また、DNSサーバーアドレスもDHCPv6サーバーから自動取得します。
    IPv6インターフェースの詳細は「IPv6」/「IPv6インターフェース」をご覧ください。
    interface eth1
     ipv6 enable
    
  3. ソフトウェアブリッジ「1」を作成します。これには、bridgeコマンドを使います。
    ブリッジングの詳細は「ブリッジング」/「一般設定」をご覧ください。
    bridge 1
    
  4. ソフトウェアブリッジ「1」にvlan1をブリッジポートとして追加します。これにはbridge-groupコマンドを使います。
    interface vlan1
     bridge-group 1
    
  5. LAN側インターフェースbr1にIPアドレスを設定します。これにはip addressコマンドを使います。
    IPインターフェースの詳細は「IP」/「IPインターフェース」をご覧ください。
    interface br1
     ip address 192.168.10.1/24
    
  6. IPv6パケット転送機能を有効化します。これにはipv6 forwardingコマンドを使います。
    ipv6 forwarding
    
  7. ファイアウォールやNATのルール作成時に使うエンティティー(通信主体)を定義します。
    エンティティー定義の詳細は「UTM」/「エンティティー定義」をご覧ください。

    内部ネットワークを表すゾーン「private_ipv4」を作成します。
    これには、zonenetworkip subnetの各コマンドを使います。
    zone private_ipv4
     network lan
      ip subnet 192.168.10.0/24
    
  8. 外部ネットワークを表すゾーン「external_ipv6」を作成します。
    前記コマンドに加え、ここではipv6 subnethostipv6 addressの各コマンドも使います。
    zone external_ipv6
     network wan
      ipv6 subnet ::/0 interface eth1
      host eth1
       ipv6 address dynamic interface eth1
    
  9. ファイアウォールのルール作成時に通信内容を指定するために使う「アプリケーション」を定義します。
    これには、applicationprotocoldportの各コマンドを使います。
    アプリケーション定義の詳細は「UTM」/「アプリケーション定義」をご覧ください。

    DHCPv6パケットを表すカスタムアプリケーション「dhcpv6」を定義します。
    application dhcpv6
     protocol udp
     dport 546 to 547
    
  10. IPsecのESPパケットを表すカスタムアプリケーション「esp」を定義します。
    application esp
     protocol 50
    
  11. ICMPv6パケットを表すカスタムアプリケーション「icmpv6」を定義します。
    application icmpv6
     protocol ipv6-icmp
    
  12. ISAKMPパケットを表すカスタムアプリケーション「isakmp」を定義します。
    application isakmp
     protocol udp
     dport 500
    
  13. 外部からの通信を遮断しつつ、内部からの通信は自由に行えるようにするファイアウォール機能の設定を行います。
    これには、firewallruleprotectの各コマンドを使います。

    ・rule 10 - 本製品のWAN側インターフェースからのIPv6通信を許可します
    ・rule 20 - ISAKMPパケットを許可します
    ・rule 30 - IPsec(ESP)パケットを許可します
    ・rule 40 - L2TPパケットを許可します
    ・rule 50 - DHCPv6パケットを許可します
    ・rule 60 - ICMPv6パケットを許可します
    ・rule 100 - 内部から内部へのIPv4通信を許可します

    ファイアウォールの詳細は「UTM」/「ファイアウォール」をご覧ください。
    firewall
     rule 10 permit any from external_ipv6.wan.eth1 to external_ipv6
     rule 20 permit isakmp from external_ipv6 to external_ipv6.wan.eth1
     rule 30 permit esp from external_ipv6 to external_ipv6.wan.eth1
     rule 40 permit l2tp from external_ipv6 to external_ipv6.wan.eth1
     rule 50 permit dhcpv6 from external_ipv6 to external_ipv6.wan.eth1
     rule 60 permit icmpv6 from external_ipv6 to external_ipv6.wan.eth1
     rule 100 permit any from private_ipv4 to private_ipv4
     protect
    
  14. 対向ルーターとの間で使用するISAKMPの事前共有鍵を設定します。これにはcrypto isakmp keyコマンドを使います。
    crypto isakmp key secret hostname sample2.i.open.ad.jp
    
  15. L2TPv3トンネルインターフェースtunnel0を作成し、ソフトウェアブリッジ「1」にブリッジポートとして追加します。
    トンネルインターフェースはinterfaceコマンドで作成し、以下の設定を行います。

    ・ソフトウェアブリッジへの追加(bridge-group
    ・トンネルインターフェースのMTU(mtu
    ・トンネルインターフェースから送信するデリバリーパケットの始点(自装置)アドレス(tunnel source
    ・トンネルインターフェースから送信するデリバリーパケットの終点(対向装置)アドレス(tunnel destination
    ・トンネルインターフェースにおけるISAKMP 自装置ID(ローカルID)(tunnel local name
    ・トンネルインターフェースにおけるISAKMP 対向装置ID(リモートID)(tunnel remote name
    ・トンネルインターフェースのL2TPv3 自装置ID(tunnel local id
    ・トンネルインターフェースのL2TPv3 対向装置ID(tunnel remote id
    ・トンネルインターフェースに対するIPsec保護の適用(tunnel protection ipsec
    ・トンネリング方式(tunnel mode l2tp v3

    トンネルインターフェースの詳細は「VPN」/「トンネルインターフェース」を、ブリッジングの詳細は「ブリッジング」/「一般設定」を、L2TPv3の詳細は「VPN」/「L2TPv3」を、IPsecの詳細は「VPN」/「IPsec」をご覧ください。
    interface tunnel0
     bridge-group 1
     mtu 1500
     tunnel source eth1
     tunnel destination sample2.i.open.ad.jp
     tunnel local name sample1.i.open.ad.jp
     tunnel remote name sample2.i.open.ad.jp
     tunnel local id 1
     tunnel remote id 2
     tunnel protection ipsec
     tunnel mode l2tp v3 ipv6
    
  16. トンネルインターフェース tunnel0 経由での対向ルーターへの接続性を監視するPingポーリング「1」を作成します。
    これには、ping-pollipup-countfail-countsample-sizeactiveの各コマンドを使います。
    Pingポーリングの詳細は「IP付加機能」/「Pingポーリング」をご覧ください。
    ping-poll 1
     ip 192.168.10.2
     up-count 3
     fail-count 3
     sample-size 3
     active
    
  17. 定期実行トリガーとPingポーリングトリガーを作成します。
    これには、triggertype periodictype ping-pollscriptの各コマンドを使います。

    ・trigger 1 - 1分おきにダイナミックDNSサービスの更新専用ホスト宛てにアップデートパケット(IPv6 Ping)を送信し、自身のIPv6アドレスをダイナミックDNSサーバーに登録・更新するopen_ddns.scpスクリプトを実行する
    ・trigger 10 - tunnel0 経由での対向ルーターへの接続性が失われた場合に、trigger 20を作成することで 1分おきに FQDN での再接続を試みる periodic-update.scpスクリプトを実行する
    ・trigger 11 - tunnel0 経由での対向ルーターへの接続性が回復した場合に、trigger 20を削除することで 1分おきの再接続を停止する periodic-update-delete.scpスクリプトを実行する
    ・trigger 20 - ISAKMP SA を強制的に削除し、対向ルーターのFQDNを解決した上で再接続を試みる host-change.scpスクリプトを1分おきに実行する(trigger 10によって作成・起動され、trigger 11によって削除・停止される)

    トリガースクリプトの具体的内容は「トリガースクリプト」を、トリガーの詳細は「運用・管理」/「トリガー」をご覧ください。
    trigger 1
     type periodic 1
     script 1 open_ddns.scp
    trigger 10
     type ping-poll 1 down
     script 1 periodic-update.scp
    trigger 11
     type ping-poll 1 up
     script 1 periodic-update-delete.scp
    
  18. 以上で設定は完了です。
    end
    

ルーターBの設定

  1. LANポートにおいて初期状態で有効化されているスパニングツリープロトコル(RSTP)を無効化します。これにはspanning-tree enableコマンドをno形式で実行します。
    スパニングツリープロトコルの詳細は「L2スイッチング」/「スパニングツリープロトコル」をご覧ください。
    no spanning-tree rstp enable
    
  2. WANポートeth1でIPv6のステートレスアドレス自動設定(SLAAC)を有効にします。これにはipv6 enableコマンドを使います。
    この設定により、ルーターから受信したRAのプレフィックス情報にもとづいてeth1のIPv6アドレスが自動設定されます。
    また、DNSサーバーアドレスもDHCPv6サーバーから自動取得します。
    IPv6インターフェースの詳細は「IPv6」/「IPv6インターフェース」をご覧ください。
    interface eth1
     ipv6 enable
    
  3. ソフトウェアブリッジ「1」を作成します。これには、bridgeコマンドを使います。
    ブリッジングの詳細は「ブリッジング」/「一般設定」をご覧ください。
    bridge 1
    
  4. ソフトウェアブリッジ「1」にvlan1をブリッジポートとして追加します。これにはbridge-groupコマンドを使います。
    interface vlan1
     bridge-group 1
    
  5. LAN側インターフェースbr1にIPアドレスを設定します。これにはip addressコマンドを使います。
    IPインターフェースの詳細は「IP」/「IPインターフェース」をご覧ください。
    interface br1
     ip address 192.168.10.2/24
    
  6. IPv6パケット転送機能を有効化します。これにはipv6 forwardingコマンドを使います。
    ipv6 forwarding
    
  7. ファイアウォールやNATのルール作成時に使うエンティティー(通信主体)を定義します。
    エンティティー定義の詳細は「UTM」/「エンティティー定義」をご覧ください。

    内部ネットワークを表すゾーン「private_ipv4」を作成します。
    これには、zonenetworkip subnetの各コマンドを使います。
    zone private_ipv4
     network lan
      ip subnet 192.168.10.0/24
    
  8. 外部ネットワークを表すゾーン「external_ipv6」を作成します。
    前記コマンドに加え、ここではipv6 subnethostipv6 addressの各コマンドも使います。
    zone external_ipv6
     network wan
      ipv6 subnet ::/0 interface eth1
      host eth1
       ipv6 address dynamic interface eth1
    
  9. ファイアウォールのルール作成時に通信内容を指定するために使う「アプリケーション」を定義します。
    これには、applicationprotocoldportの各コマンドを使います。
    アプリケーション定義の詳細は「UTM」/「アプリケーション定義」をご覧ください。

    DHCPv6パケットを表すカスタムアプリケーション「dhcpv6」を定義します。
    application dhcpv6
     protocol udp
     dport 546 to 547
    
  10. IPsecのESPパケットを表すカスタムアプリケーション「esp」を定義します。
    application esp
     protocol 50
    
  11. ICMPv6パケットを表すカスタムアプリケーション「icmpv6」を定義します。
    application icmpv6
     protocol ipv6-icmp
    
  12. ISAKMPパケットを表すカスタムアプリケーション「isakmp」を定義します。
    application isakmp
     protocol udp
     dport 500
    
  13. 外部からの通信を遮断しつつ、内部からの通信は自由に行えるようにするファイアウォール機能の設定を行います。
    これには、firewallruleprotectの各コマンドを使います。

    ・rule 10 - 本製品のWAN側インターフェースからのIPv6通信を許可します
    ・rule 20 - ISAKMPパケットを許可します
    ・rule 30 - IPsec(ESP)パケットを許可します
    ・rule 40 - L2TPパケットを許可します
    ・rule 50 - DHCPv6パケットを許可します
    ・rule 60 - ICMPv6パケットを許可します
    ・rule 100 - 内部から内部へのIPv4通信を許可します

    ファイアウォールの詳細は「UTM」/「ファイアウォール」をご覧ください。
    firewall
     rule 10 permit any from external_ipv6.wan.eth1 to external_ipv6
     rule 20 permit isakmp from external_ipv6 to external_ipv6.wan.eth1
     rule 30 permit esp from external_ipv6 to external_ipv6.wan.eth1
     rule 40 permit l2tp from external_ipv6 to external_ipv6.wan.eth1
     rule 50 permit dhcpv6 from external_ipv6 to external_ipv6.wan.eth1
     rule 60 permit icmpv6 from external_ipv6 to external_ipv6.wan.eth1
     rule 100 permit any from private_ipv4 to private_ipv4
     protect
    
  14. 対向ルーターとの間で使用するISAKMPの事前共有鍵を設定します。これにはcrypto isakmp keyコマンドを使います。
    crypto isakmp key secret hostname sample1.i.open.ad.jp
    
  15. L2TPv3トンネルインターフェースtunnel0を作成し、ソフトウェアブリッジ「1」にブリッジポートとして追加します。
    トンネルインターフェースはinterfaceコマンドで作成し、以下の設定を行います。

    ・ソフトウェアブリッジへの追加(bridge-group
    ・トンネルインターフェースのMTU(mtu
    ・トンネルインターフェースから送信するデリバリーパケットの始点(自装置)アドレス(tunnel source
    ・トンネルインターフェースから送信するデリバリーパケットの終点(対向装置)アドレス(tunnel destination
    ・トンネルインターフェースにおけるISAKMP 自装置ID(ローカルID)(tunnel local name
    ・トンネルインターフェースにおけるISAKMP 対向装置ID(リモートID)(tunnel remote name
    ・トンネルインターフェースのL2TPv3 自装置ID(tunnel local id
    ・トンネルインターフェースのL2TPv3 対向装置ID(tunnel remote id
    ・トンネルインターフェースに対するIPsec保護の適用(tunnel protection ipsec
    ・トンネリング方式(tunnel mode l2tp v3

    トンネルインターフェースの詳細は「VPN」/「トンネルインターフェース」を、ブリッジングの詳細は「ブリッジング」/「一般設定」を、L2TPv3の詳細は「VPN」/「L2TPv3」を、IPsecの詳細は「VPN」/「IPsec」をご覧ください。
    interface tunnel0
     bridge-group 1
     mtu 1500
     tunnel source eth1
     tunnel destination sample1.i.open.ad.jp
     tunnel local name sample2.i.open.ad.jp
     tunnel remote name sample1.i.open.ad.jp
     tunnel local id 2
     tunnel remote id 1
     tunnel protection ipsec
     tunnel mode l2tp v3 ipv6
    
  16. トンネルインターフェース tunnel0 経由での対向ルーターへの接続性を監視するPingポーリング「1」を作成します。
    これには、ping-pollipup-countfail-countsample-sizeactiveの各コマンドを使います。
    Pingポーリングの詳細は「IP付加機能」/「Pingポーリング」をご覧ください。
    ping-poll 1
     ip 192.168.10.1
     up-count 3
     fail-count 3
     sample-size 3
     active
    
  17. 定期実行トリガーとPingポーリングトリガーを作成します。
    これには、triggertype periodictype ping-pollscriptの各コマンドを使います。

    ・trigger 1 - 1分おきにダイナミックDNSサービスの更新専用ホスト宛てにアップデートパケット(IPv6 Ping)を送信し、自身のIPv6アドレスをダイナミックDNSサーバーに登録・更新するopen_ddns.scpスクリプトを実行する
    ・trigger 10 - tunnel0 経由での対向ルーターへの接続性が失われた場合に、trigger 20を作成することで 1分おきに FQDN での再接続を試みる periodic-update.scpスクリプトを実行する
    ・trigger 11 - tunnel0 経由での対向ルーターへの接続性が回復した場合に、trigger 20を削除することで 1分おきの再接続を停止する periodic-update-delete.scpスクリプトを実行する
    ・trigger 20 - ISAKMP SA を強制的に削除し、対向ルーターのFQDNを解決した上で再接続を試みる host-change.scpスクリプトを1分おきに実行する(trigger 10によって作成・起動され、trigger 11によって削除・停止される)

    トリガースクリプトの具体的内容は「トリガースクリプト」を、トリガーの詳細は「運用・管理」/「トリガー」をご覧ください。
    trigger 1
     type periodic 1
     script 1 open_ddns.scp
    trigger 10
     type ping-poll 1 down
     script 1 periodic-update.scp
    trigger 11
     type ping-poll 1 up
     script 1 periodic-update-delete.scp
    
  18. 以上で設定は完了です。
    end
    

設定の保存

■ 設定が完了したら、現在の設定内容を起動時コンフィグとして保存してください。これには、copyコマンドを「copy running-config startup-config」の書式で実行します。
awplus# copy running-config startup-config
Building configuration...
[OK]

また、write fileコマンド、write memoryコマンドでも同じことができます。
awplus# write memory
Building configuration...
[OK]

その他、設定保存の詳細については「運用・管理」/「コンフィグレーション」をご覧ください。

ファイアウォールログについて

■ ファイアウォールのログをとるには、次のコマンド(log(filter))を実行します。
awplus(config)# log buffered level informational facility kern msgtext Firewall

■ 記録されたログを見るには、次のコマンド(show log)を実行します。ここでは、ファイアウォールが出力したログメッセージだけを表示させています。
awplus# show log | include Firewall

ルーターAのコンフィグ

!
no spanning-tree rstp enable
!
interface eth1
 ipv6 enable
!
bridge 1
!
interface vlan1
 bridge-group 1
!
interface br1
 ip address 192.168.10.1/24
!
ipv6 forwarding
!
zone private_ipv4
 network lan
  ip subnet 192.168.10.0/24
!
zone external_ipv6
 network wan
  ipv6 subnet ::/0 interface eth1
  host eth1
   ipv6 address dynamic interface eth1
!
application dhcpv6
 protocol udp
 dport 546 to 547
!
application esp
 protocol 50
!
application icmpv6
 protocol ipv6-icmp
!
application isakmp
 protocol udp
 dport 500
!
firewall
 rule 10 permit any from external_ipv6.wan.eth1 to external_ipv6
 rule 20 permit isakmp from external_ipv6 to external_ipv6.wan.eth1
 rule 30 permit esp from external_ipv6 to external_ipv6.wan.eth1
 rule 40 permit l2tp from external_ipv6 to external_ipv6.wan.eth1
 rule 50 permit dhcpv6 from external_ipv6 to external_ipv6.wan.eth1
 rule 60 permit icmpv6 from external_ipv6 to external_ipv6.wan.eth1
 rule 100 permit any from private_ipv4 to private_ipv4
 protect
!
crypto isakmp key secret hostname sample2.i.open.ad.jp
!
interface tunnel0
 bridge-group 1
 mtu 1500
 tunnel source eth1
 tunnel destination sample2.i.open.ad.jp
 tunnel local name sample1.i.open.ad.jp
 tunnel remote name sample2.i.open.ad.jp
 tunnel local id 1
 tunnel remote id 2
 tunnel protection ipsec
 tunnel mode l2tp v3 ipv6
!
ping-poll 1
 ip 192.168.10.2
 up-count 3
 fail-count 3
 sample-size 3
 active
!
trigger 1
 type periodic 1
 script 1 open_ddns.scp
trigger 10
 type ping-poll 1 down
 script 1 periodic-update.scp
trigger 11
 type ping-poll 1 up
 script 1 periodic-update-delete.scp
!
end

ルーターBのコンフィグ

!
no spanning-tree rstp enable
!
interface eth1
 ipv6 enable
!
bridge 1
!
interface vlan1
 bridge-group 1
!
interface br1
 ip address 192.168.10.2/24
!
ipv6 forwarding
!
zone private_ipv4
 network lan
  ip subnet 192.168.10.0/24
!
zone external_ipv6
 network wan
  ipv6 subnet ::/0 interface eth1
  host eth1
   ipv6 address dynamic interface eth1
!
application dhcpv6
 protocol udp
 dport 546 to 547
!
application esp
 protocol 50
!
application icmpv6
 protocol ipv6-icmp
!
application isakmp
 protocol udp
 dport 500
!
firewall
 rule 10 permit any from external_ipv6.wan.eth1 to external_ipv6
 rule 20 permit isakmp from external_ipv6 to external_ipv6.wan.eth1
 rule 30 permit esp from external_ipv6 to external_ipv6.wan.eth1
 rule 40 permit l2tp from external_ipv6 to external_ipv6.wan.eth1
 rule 50 permit dhcpv6 from external_ipv6 to external_ipv6.wan.eth1
 rule 60 permit icmpv6 from external_ipv6 to external_ipv6.wan.eth1
 rule 100 permit any from private_ipv4 to private_ipv4
 protect
!
crypto isakmp key secret hostname sample1.i.open.ad.jp
!
interface tunnel0
 bridge-group 1
 mtu 1500
 tunnel source eth1
 tunnel destination sample1.i.open.ad.jp
 tunnel local name sample2.i.open.ad.jp
 tunnel remote name sample1.i.open.ad.jp
 tunnel local id 2
 tunnel remote id 1
 tunnel protection ipsec
 tunnel mode l2tp v3 ipv6
!
ping-poll 1
 ip 192.168.10.1
 up-count 3
 fail-count 3
 sample-size 3
 active
!
trigger 1
 type periodic 1
 script 1 open_ddns.scp
trigger 10
 type ping-poll 1 down
 script 1 periodic-update.scp
trigger 11
 type ping-poll 1 up
 script 1 periodic-update-delete.scp
!
end

ルーターAのトリガースクリプト

■ open_ddns.scp
enable
ping ipv6 update-0123456789abcdefff.i.open.ad.jp repeat 2
exit

■ periodic-update.scp
enable
conf t
trigger 20
type periodic 1
script 1 host-change.scp
exit
exit

■ periodic-update-delete.scp
enable
conf t
no trigger 20
exit

■ host-change.scp
enable
clear isakmp sa force
conf t
int tunnel0
tunnel dest sample2.i.open.ad.jp
exit
exit

ルーターBのトリガースクリプト

■ open_ddns.scp
enable
ping ipv6 update-fffedcba9876543210.i.open.ad.jp repeat 2
exit

■ periodic-update.scp
enable
conf t
trigger 20
type periodic 1
script 1 host-change.scp
exit
exit

■ periodic-update-delete.scp
enable
conf t
no trigger 20
exit

■ host-change.scp
enable
clear isakmp sa force
conf t
int tunnel0
tunnel dest sample1.i.open.ad.jp
exit
exit




(C) 2015 - 2018 アライドテレシスホールディングス株式会社

PN: 613-002107 Rev.W