Android端末で建てたVPNサーバーを高速にするために奮闘する記事

素直にCentOSとかで建てたほうがいいと思います。

Advertisement

事前知識

AndroidでVPNサーバーを建てた

Servers UltimateでAndroid端末をVPNサーバーとして利用する

建てました。きちんと動作はします。遅いですけど・・・あとたまに不安定な気がする。(まぁ普段使っていないから分かりませんが)

ワタシ イガイト チシキナイ

詳しい感を出していますが、ネットワークとかサーバーとかあまり詳しくありません。
銀行とか決済ならある程度詳しいと思いますが・・・

Google検索とGoogle翻訳があればある程度使えちゃうわけです。

現状

遅い。特に家庭内LANにアクセスする時。
これがAndroid端末が原因なのかsambaが悪いのか回線が悪いのかワカラナイ。

あと不安定な気がします。まぁこれは気がする程度です。通信速度は大体のサイトでは問題ありません。
むしろDNSで広告ブロック(推奨はしません)してるから快適かもしれない・・・

なお、サーバーと化したAndroid端末側はアップロードもダウンロードも50Mbps程度出ています。そのぐらい出たら良いのに・・・

改善策

Servers UltimateはOpen VPN2.0を利用しているので、Open VPN2.0の高速化技法を探せば良いわけです。
Open VPN2.4以降のモダンな機能は使えません。残念!(波田陽区)

改善策を調べてみました!(調べてみた系まとめサイト)

暗号化

型落ちAndroid端末(とはいっても結構高性能ですが)なのでCPUがボトルネックになる可能性があります。
そこで暗号化を再考します。

おそらくデフォルトだとBF-CBCとかいうやつが使われています。
調べてみると無効にできたり、より強いAESが使えるみたいです。AES・・・私でも聞いたことがあるつよつよアルゴリズムだ・・・

計測結果

こんな感じです。精度は期待しないでください。何故SoftBank回線かというと、親の端末を借りてテザリングしているからです。ギガ不足に悩む現代の若者なので・・・
左上からVPN無し、暗号化なし、AES-128、AES-256です。

正直、VPN無し以外はほぼ誤差です。
暗号化なしとありでアップロード差がかなり出ていますが、これも誤差のような気もします。

速度差があまりないように感じますし、せっかくなのでAES-256を利用したいと思います。

設定はサーバー側とクライアント側の設定ファイルにcipher AES-256-CBCと一番下に追記しましょう。
設定ファイルはサーバー側は/data/data/com.icecoldapps.serversultimate.packa/vpn/congif.conf、
クライアント側はSaveしたclient.ovpnです。

comp-lzo無効化

なんかいらない気がしません?基本圧縮されているファイルしか転送しませんし・・・

うん。まぁ。誤差といえば誤差。

lz4圧縮とかいうやつがOpen VPN2.4にはあるみたいです。そっち使いたい。

無駄に圧縮はしないことにしました。

mssfixの設定

なんかみんなやってるので効果あるのでしょうね。多分。

我が家のMSSが1414なので1400にします。みんなこんな感じの数値なので大丈夫でしょう。

なお、MMSはこちらで測れます。

cipher AES-256-CBCと同じようにそれの下に

mssfix 1400と追記します。多分両方に。

ログを見るに意味なさそうなのに若干早くなるんだよなぁ・・・

結果

誤差程度の違いしか無い!!!!!!!!!!

解決法教えてください。

Advertisement

いかがでしたでしょうか?

解決法は見つかりませんでした。悔しい・・・ですよね?
解決できるといいですね!(調べてみた系まとめサイト)

Android端末をVPNサーバーとして利用する 総まとめ

Android端末で建てたVPNサーバーをWindowsで利用して自宅PC共有ドライブに接続するために奮闘する記事

Android端末で建てたVPNサーバーを何故か接続できない所で接続できるようにする記事

Android端末で建てたVPNサーバーを何故か接続できない所で接続できるようにする記事 完全解決編