以下は、某ルータでIPsec VPNを使う際の設定の抜粋です
ただし、11行目で分かるように、このVPNのトンネルインターフェースは有効にはなっていません
IPsec VPNを結ぶ相手側でも同様な設定がされており、これらを有効にすることで、IPsec VPNが問題なく確立し、これを介したIP通信が可能であることが確認されています
tunnel select P
tunnel encapsulation ipsec
ipsec tunnel Q
ipsec sa policy Q R esp aes-cbc sha-hmac
ipsec ike encryption R aes-cbc
ipsec ike group R modp1024
ipsec ike hash R sha
ipsec ike local address R <自分側IPアドレス>
ipsec ike pre-shared-key R text <事前共有鍵>
ipsec ike remote address R <相手側IPアドレス>
tunnel disable P
さて、この状態でIPsec VPNトンネルインターフェースの片側だけを有効にすると、どのような動作をすると思いますか?
「IPsec VPNは確立しない、つまりIPsec VPNを介したIP通信が不可能である」
大抵の方はそう答えると思います
実は、この回答でと半分だけが正解です
正解は「IPsec VPNは確立するものの、これを介したIP通信は不可能」です
これは一体どういうことでしょう
内部を解析したわけではないので、あくまでも推測に過ぎないのですが、IPsecの有効・無効と、IPsecを利用したトンネルインターフェースの有効・無効の設定が連動していない故の現象だと思われます
まず片方のルータがIPsec VPNを通過するようなIPパケットを受信します
このルータのトンネルインターフェースlが有効になっていれば、IPパケットはトンネルインターフェースを通ってIPsec VPNの処理に受け渡されます
IPsec VPNの処理では、相手側ルータとの間でIKE saを確立し、次いでIPsec暗号ペイロードを確立します
このとき、相手側ルータのトンネルインターフェースの有効・無効とは無関係に、IKE saとIPsec暗号ペイロードが確立されます
こまでの段階で、先のIPパケットがIPsec VPNを流れることが可能になります
やはりこのときも、相手側ルータのトンネルインターフェースの有効・無効は関係ありません
しかし、相手側ルータがこのIPパケットを受け取ったとしても、それを受け入れるトンネルインターフェースが無効になっていれば、ルータはそのIPパケットを受け入れることはありません
IPパケットを拒否(reject)することも、送り先不明(unreachable)でエラーにすることもありません
これらの処理はインターフェース(物理インターフェースおよび仮想インターフェス)の中でされているようなので、仮想インターフェースのひとつであるトンネルインターフェースが無効、つまり存在しないのと同じ状態になっている以上、先に挙げた処理は一切為されないままになります
結果として、受け取ったIPパケットはルータの中で紛失、消失するしかなく、「IPsec VPNは確立するものの、これを介したIP通信は不可能」な状態に陥ってしまいます
具体的な現象としては、以下のようなものが確認できます
- トンネルインターフェースが有効になっているルータ
- IKE saの確立が確認できる
-
show ipsek sa
- トンネルインターフェースを通過する(出て行く)パケットが記録される
-
ip filter N pass-log * * * * * ip tunnel P secure filter in/out N
- トンネルインターフェースが無効になっているルータ
- IKE saの確立が確認できる
-
show ipsek sa
- トンネルインターフェースを通過するパケットの記録がない
-
ip filter N pass-log * * * * * ip tunnel P secure filter in/out N


最近のコメント