はじめに
タイトルにある事象が発生したので備忘録として残します。
ネットワークの基本的な知識はあっても、IPsecの知識が抜けていたりするとこういうことが起きます。。。
前提
この記事でIPsecと言っているのは、ESPトンネルモードを指します。
この記事でIPsecの解説はしません。
IPsecについては以下の記事が参考なるのでリンクを載せておきます。
【図解】初心者に分かりやすいIPsecの仕組みとシーケンス~パケットフォーマット,DPD(keepalive)について~
結論
長々と書くこともないので、いきなり結論に入ります。
ファイアウォール(以下、FW)で以下の通信のみ許可する設定になっていました。
プロトコル | ポート番号 |
---|---|
ICMP | フルオープン |
TCP | フルオープン |
UDP | フルオープン |
この設定の場合、IKEはUDPなのでFWを通過しますが、ESPはUDPでもTCPでもない(IPのプロトコル番号50)のでFWを通過できません。
その結果、SAは確立できるけどデータが送れないという事象が発生してしまいます。
ICMPは許可されているのでpingは通ります。
FWの設定でESPを許可したらIPsecで問題なく通信できるようになりました。
おわりに
ESPパケットだけはじかれることから、FWの設定だと気付くのに時間はかからないと思いますが、事前にFWの設定を確認しておくのは大事だなと感じました。