概要
IPv6折り返しで通信した場合、どの程度のトラフィックが流せるのかを軽く試してみました。
もともと神戸拠点ではNURO光を利用していましたが、なんちゃって2G回線でIPv4固定IPも無くなりポート開放もできなくなるクソ仕様へ改悪されつつありましたので解約を決意しました。
やっぱりフレッツ系しか勝たん!
仕様
大阪拠点
- フレッツ光クロス & 21ip 固定IP1本(10G)
- 選定理由:入居したマンションが全戸加入プランだった&固定IP付きの光クロスプロバイダで最安級だったので
- IPv6+IPv4(IPIP6)
- ONUからRJ45<->SFP+のメディアコンバータを介してSFP+に変換し、Proxmox内のOpenWrtにPCIパススルーで収容する形で10Gリンクアップ
神戸拠点
- enひかりLite(1G)
- 選定理由:月額費用が安く、工事費無料キャンペーン中だったので
- それでも無派遣工事なので掛かっても2000円だが…
- 選定理由:月額費用が安く、工事費無料キャンペーン中だったので
- IPv6+IPv4(MAP-E)
- ONUからRJ-45でOpenWrtに改造したFG-50Eに収容し1Gリンクアップ
iperf3の結果
IPv6 Direct
root@OpenWrt-Kobe:~# iperf3 -c ***
Connecting to host ***, port 5201
[ 5] local *** port 56298 connected to *** port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 58.9 MBytes 493 Mbits/sec 32 420 KBytes
[ 5] 1.00-2.00 sec 56.4 MBytes 473 Mbits/sec 17 291 KBytes
[ 5] 2.00-3.00 sec 42.2 MBytes 354 Mbits/sec 2 312 KBytes
[ 5] 3.00-4.00 sec 56.2 MBytes 472 Mbits/sec 14 311 KBytes
[ 5] 4.00-5.00 sec 48.1 MBytes 404 Mbits/sec 13 233 KBytes
[ 5] 5.00-6.00 sec 37.8 MBytes 317 Mbits/sec 1 268 KBytes
[ 5] 6.00-7.00 sec 52.8 MBytes 442 Mbits/sec 0 389 KBytes
[ 5] 7.00-8.00 sec 53.1 MBytes 446 Mbits/sec 8 389 KBytes
[ 5] 8.00-9.00 sec 39.0 MBytes 327 Mbits/sec 27 211 KBytes
[ 5] 9.00-10.00 sec 41.4 MBytes 347 Mbits/sec 4 238 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 486 MBytes 408 Mbits/sec 118 sender
[ 5] 0.00-10.01 sec 485 MBytes 406 Mbits/sec receiver
iperf Done.
実効400~500Mbps前後といったところでしょうか。
思ったより伸びませんでしたが、悪くはないでしょう。
神戸拠点からfast.comを叩くと900Mbpsくらいは普通に出たのでシンプルにiperf3の仕様に影響していると思います
WireGuard on IPv6
root@OpenWrt-Kobe:~# iperf3 -c ***
Connecting to host ***, port 5201
[ 5] local *** port 34534 connected to *** port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 58.9 MBytes 493 Mbits/sec 0 836 KBytes
[ 5] 1.00-2.00 sec 40.6 MBytes 341 Mbits/sec 0 985 KBytes
[ 5] 2.00-3.00 sec 53.4 MBytes 447 Mbits/sec 7 748 KBytes
[ 5] 3.00-4.00 sec 61.2 MBytes 514 Mbits/sec 0 748 KBytes
[ 5] 4.00-5.00 sec 41.0 MBytes 344 Mbits/sec 0 855 KBytes
[ 5] 5.00-6.00 sec 52.9 MBytes 442 Mbits/sec 0 932 KBytes
[ 5] 6.00-7.00 sec 63.1 MBytes 531 Mbits/sec 0 954 KBytes
[ 5] 7.00-8.00 sec 39.9 MBytes 334 Mbits/sec 0 954 KBytes
[ 5] 8.00-9.00 sec 53.8 MBytes 451 Mbits/sec 0 954 KBytes
[ 5] 9.00-10.00 sec 60.2 MBytes 504 Mbits/sec 0 983 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 525 MBytes 440 Mbits/sec 7 sender
[ 5] 0.00-10.01 sec 523 MBytes 438 Mbits/sec receiver
iperf Done.
なぜかWireGuardを介すとちょっと早くなりました。なんでやねん。
WireGuardによるオーバーヘッドの影響はないに等しく、それよりも回線とiperf3の頭打ちが問題と考えられます。
レイテンシ
root@OpenWrt-Kobe:~# ping ***
PING *** (***): 56 data bytes
64 bytes from *** seq=0 ttl=57 time=5.759 ms
64 bytes from *** seq=1 ttl=57 time=5.457 ms
64 bytes from *** seq=2 ttl=57 time=5.170 ms
64 bytes from *** seq=3 ttl=57 time=5.450 ms
64 bytes from *** seq=4 ttl=57 time=5.756 ms
64 bytes from *** seq=5 ttl=57 time=5.361 ms
^C
--- *** ping statistics ---
6 packets transmitted, 6 packets received, 0% packet loss
round-trip min/avg/max = 5.170/5.492/5.759 ms
おわり
最終的に、OpenWrt上のWireGuardを介した場合の速度低下はほぼないと判断できたので、mwan3によるIPv4出口のフルトンネリングを実装しました。
万が一大阪拠点の障害が発生し、WireGuardトンネルが疎通しなくなった場合は、mwan3側の死活監視機能によって自動的にMAP-Eの出口へ切り替わるため、インターネット通信への影響は非常に短時間で解消します。
ご参考になれば幸いです。