Help us understand the problem. What is going on with this article?

IPv6+EtherIPで自宅のインターネットを高速化したかった

More than 1 year has passed since last update.

TL;DR

VPSにIPv4ルーター立ててIPv6ネットワーク上でEtherIPでL2トンネリングしたらIPv4通信が速くなるかと思ったけど元から十分速かったので意味なかった

背景

フレッツ光の回線からPPPoE接続でIPv4インターネットに出る経路にはボトルネックが存在するらしい1
このボトルネックはIPv6インターネットへの経路には無いのでIPv4パケットをIPv6でカプセル化すればバイパスできる2
そこで一部ISPではDS-Liteという方式でフレッツ網外の装置とカプセル化通信を行いボトルネックをバイパスするサービスを提供している
ただしこれを利用する場合IPv4インターネットへのゲートウェイの役割をISP側の管理する機器3に任せることになってしまう
外とのやりとりを自前で管理しつつバイパスしたい場合4はフレッツ網の外にカプセル化通信用の環境を自力で構築する必要がある5

やったこと

手っ取り早いのはL2トンネリングかなと思ったのとたまたま手元に対応機器があったのでEtherIPというEthernet over IPのプロトコルを使ってVPS上のルーターとのカプセル化通信を実現してみた
大まかな手順とメモを以下に残す

1. 自宅ネットワーク環境のIPv6化

  • PPPoEv6方式では不十分でIPoEオプションの契約が必要6
  • 最低限ルーターのWAN側でIPv6が有効であればよい

2. VPSを立てる

  • 今回はConoHaの一番安い512MBのプランで構築した
  • こちらも当然IPv6に対応している必要がある
  • SoftEtherを使う関係でOSはLinuxに7

3. SoftEther VPN Serverのインストール

  • Softether VPN Projectの公式ドキュメントを参考にVPSにSoftEther VPN Serverをインストール
  • 以降の設定もVPS上で行う場合はvpncmdもインストールしておく

4. SoftEtherでEtherIP/IPsecを設定

5. 自宅ルーターから仮想Hubに接続

6. VPSでのルーティングとNATを有効化

  • 仮想HubでSecureNATを有効にしてとりあえずインターネットに出られるようにした8
  • さらに自宅ルーターのDHCPサーバーが配布するデフォルトゲートウェイとして仮想インターフェースのアドレスを設定した

測定

speedtestでネットワークのパフォーマンスを計測する

  • 計測サーバーはOPEN Project (via 20G SINET) (Tokyo) を利用した
  • 自宅インターネット環境はIIJmioひかりをIPoEオプション付きで契約している
  • 計測は自宅の端末から下記の経路でそれぞれ行った
    • PPPoEでISPの機器経由(バイパスしないパターン)
    • EtherIP over IPv6でVPS経由(バイパスするパターン)
      • VPSはConoHaの512MBのプランを利用
    • DS-Lite (IPv4 over IPv6) でISPの機器経由(バイパスするパターン)
      • 設定の関係でこれだけ自宅ルーターを経由せずに端末で直接カプセル化
  • MTUとか適当なので設定を調整すればもっとパフォーマンスでるかも
  • 23区内で平日23時ぐらいに計測した結果です

以下結果(IPアドレスは念のためマスクしています)

PPPoE

$ speedtest --server 15047
Retrieving speedtest.net configuration...
Testing from Internet Initiative Japan (xxx.xxx.xxx.xxx)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by OPEN Project (via 20G SINET) (Tokyo) [6.15 km]: 53.301 ms
Testing download speed................................................................................
Download: 114.19 Mbit/s
Testing upload speed......................................................................................................
Upload: 236.11 Mbit/s

EtherIP over IPv69

$ speedtest --server 15047
Retrieving speedtest.net configuration...
Testing from Tibanne Co.,Ltd. (xxx.xxx.xxx.xxx)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by OPEN Project (via 20G SINET) (Tokyo) [3.36 km]: 34.375 ms
Testing download speed................................................................................
Download: 106.87 Mbit/s
Testing upload speed......................................................................................................
Upload: 92.64 Mbit/s

DS-Lite

$ speedtest --server 15047
Retrieving speedtest.net configuration...
Testing from Internet Multifeed Co. (xxx.xxx.xxx.xxx)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by OPEN Project (via 20G SINET) (Tokyo) [6.15 km]: 4.644 ms
Testing download speed................................................................................
Download: 682.13 Mbit/s
Testing upload speed......................................................................................................
Upload: 650.09 Mbit/s

感想

  • PPPoEでも下り100Mbps/上り200Mbpsでているので十分速いと思った
    • 設備増強されたんですかね?ボトルネックとは...
  • 想定通りL2トンネリングでVPSの通信帯域の上限ぐらいのパフォーマンスはだせた
    • 真面目に通信方式ごとの比較をするならもっと帯域を増やす必要がある
    • クラウドを使う案もあったが基本従量課金なのでパケ死が怖くてやめた経緯がある
  • 単に速度を求めるならDS-Liteが圧倒的に速い
    • IPv6ユーザーが増えてくるとここもボトルネックになる可能性はなくはないが

その他参考にした資料


  1. 概要だけならAterm公式のIPv6講座・詳しい話はIIJのブログ記事が参考になる 

  2. ただし大抵はオプション契約が必要な模様 

  3. 正確には違うようだけどともかくNTTの管轄でないことが重要っぽい 

  4. たとえばIPv6アドレス持ってないクラウドのインスタンス(もといGCP)からルーター経由で自宅のIoTデバイスやGPUサーバーと通信したいみたいな状況 

  5. NAT64とかもあるけどここでは触れません 

  6. さらにひかり電話も契約するとフレッツの仕様で(?)IPv6のprefix長が/56になるのでDHCPv6サーバー立てたりネットワーク構成の自由度は上がる 

  7. FreeBSD版は機能制限があったりパフォーマンスが落ちるらしい 

  8. 外部から自宅ネットワークへ通信したい時はローカルブリッジ機能を有効にしてOSの機能やクラウドのルーターでやるかSoftEtherの仮想レイヤ3スイッチを使う 

  9. なぜかGMOではなくTibanne Co.,Ltd.という会社のアドレスとして扱われています(おそらく古い所有者) 

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away