2022年10月27日木曜日

docomoのiPhone12テザリングだとL2TP/IPSecでVPNサーバに接続できなかったこと

 会社携帯でiPhone12を使っている人が、テザリングでVPN接続できないと困っていたので調べてみました。

ドコモのiPhone12以降だと2022年2月からIPv6シングルスタックが使われるようになって、IPv4アドレスは割り当てられたポートしか使えないっぽいです。

そのためL2TP/IPSecで接続できない模様。


※参考資料(PDF)

https://www.jp.ipv6forum.com/timetable/program/20211210_1_IPv6summit_docomo.pdf


シングルスタックのIPアドレス変換方式は2つあります。

・DNS64/NAT64

・464XLAT

※参考資料のP20に記載



■DNS64/NAT64

ステートレスNAT64はIPv6とIPv4は1:1だが、ステートフルNAT64は1つのIPv4を複数のIPv6で共有(ポートでの振り分け)する。ドコモの資料にはどちらか明記されていない。

 ⇒L2TP/IPSecに必要なポートが割り当てられない可能性有


※参考資料

https://www.cisco.com/c/ja_jp/support/docs/ip/network-address-translation-nat/217208-understanding-nat64-and-its-configuratio.html



■464XLAT

通信が発生した際にポート番号を割り当てるため、ポート番号の使用範囲をユーザ毎にあらかじめ割り当てておく方式(MAP系)に比べて、ポート番号の使用効率が高く、少ない資源となったIPv4アドレスを有効活用できる。

 ⇒L2TP/IPSecに必要なポートが割り当てられない可能性有


※参考資料(PDF)

https://www.janog.gr.jp/meeting/janog30/doc/janog30-v64-pre-kawashimam-01.pdf

2022年9月21日水曜日

L2TP/IPSecでVPNサーバに接続できなかったこと

 会社でテレワークだと盛り上がり、L2TP/IPSecのVPNを設定したPCをばらまいたんですが、ご家庭の環境によって使えないケースがあったというお話。


最近流行りのIPv4 over IPv6の中にはIPv4アドレスを節約するため、1つのIPv4アドレスを複数人(64人とか128人とか)で共有してます。

それをどうやって割り振ってるかというと、一人ずつにポートをばーっと割り当ててます。IPv4アドレスとポートの組み合わせで宛先を決めている、という感じです。

  • esp プロトコル(プロトコル番号 50)
  • isakmp/UDP(ポート番号 500)
  • ipsec-nat-t/UDP(ポート番号 4500)

L2TP/IPSecではこれらのポートを使っていますが、こいつが割り当てられなかったら当然使えないということになります。

これが最近OCNとかでよく見られ、自宅から社内にVPN接続できないという事態につながっています。


その解決方法ですが、L2TP/IPSecを諦めることにしました。

幸いWindows限定ではありますがSSTPというプロトコルがあったのでこちらで接続するようにし、問題なく動いております。