YAMAHA RTX1210でトンネルテンプレートを利用したconfig圧縮

RTX1210はVPNトンネル100本作成できるが、そのまま記述し続けると、トンネル本数に比例してconfigがどんどん伸びていく。

そこでお手本となる設定を「テンプレート」として定義しておき、差異部分のみ記述することで各トンネル設定とすることができる。クラス継承みたいな概念。ただし、元となるトンネル側で指定するのが違う。

 

具体例2本のトンネルを設定する。

#1本目
tunnel select 1
 description tunnel Tom
 ipsec tunnel 1
  ipsec sa policy 1 1 esp aes-cbc sha-hmac
  ipsec ike encryption 1 aes-cbc
  ipsec ike local address 1 192.168.0.1
  ipsec ike pre-shared-key 1 text himitsu1
  ipsec ike remote address 1 any
  ipsec ike remote name 1 Tom
tunnel enable 1
#2本目
tunnel select 2
 description tunnel Dick
 ipsec tunnel 2
  ipsec sa policy 2 2 esp aes-cbc sha-hmac
  ipsec ike encryption 2 aes-cbc
  ipsec ike local address 2 192.168.0.1
  ipsec ike pre-shared-key 2 text himitsu2
  ipsec ike remote address 2 any
  ipsec ike remote name 2 Dick
 tunnel enable 2

 

と、とても長い。2本ぐらいじゃいいけど、10本越えるとスクロールが辛くなってくる。加えてコピペしていたりすると、設定漏れとかも出てくる。テンプレートを使用すれば1ヶ所書き換えるだけで全てに有効になる。

 

で、上記をテンプレートを用いて書き換えると、次のようになる。テンプレートを別途定義するのではなくて、元とするトンネルに、テンプレート適用したいトンネルを番号を追記する。

#1本目
tunnel select 1
tunnel template 2 #tunnel1をテンプレート元として適用したいトンネルを指定する
description tunnel Tom

 ipsec tunnel 1
  ipsec sa policy 1 1 esp aes-cbc sha-hmac
  ipsec ike encryption 1 aes-cbc
  ipsec ike group 1 modp1024
  ipsec ike local address 1 192.168.0.1
  ipsec ike pre-shared-key 1 text himitsu1
  ipsec ike remote address 1 any
  ipsec ike remote name 1 pc
 tunnel enable 1
#2本目
tunnel select 2
 description tunnel Dick
  ipsec ike pre-shared-key 2 text himitsu2
  ipsec ike remote name 2 Dick

 

とってもスッキリしててかつ安全になる。

でも、show config tunnel 2で確認すると、えっ???ってなる。

#show config tunnel 2
tunnel select 2
 description tunnel Dick

と最初の1行しか表示されないからだ。

description tunnel tunnel_name を書かないと、show configだけでは全く表示されなくなるので設定表示したくない場合は有効。私は確認したいので、意図的に残しています。L2TPとか不定VPNならいならいですね。

 

テンプレートを適用したconfigを確認するには、「expand」を付加する必要があります。

#show config tunnel 2 expand
tunnel select 2
 description tunnel Dick

 ipsec tunnel 2
  ipsec sa policy 2 2 esp aes-cbc sha-hmac
  ipsec ike encryption 2 aes-cbc
  ipsec ike local address 2 192.168.0.1
  ipsec ike pre-shared-key 2 text himitsu2
  ipsec ike remote address 2 any
  ipsec ike remote name 2 Dick
 tunnel enable 2

 

これでconfigも読みやすくなること間違いなし!

 

なお、ip tunnel tcp mss limit autoはテンプレート展開されないので、各トンネルに書く必要があります。