VPNの実効速度を上げて快適リモートアクセス(SE除外
■ このスレッドは過去ログ倉庫に格納されています
SoftEther以外のVPNソフトウェアのパフォーマンスチューニングについて情報交換するためのスレッド。
現状ではOpenVPNの速度が不満。
もっと高速に通信できるようにして(少なくてもSoftEtherと同等)快適なリモートアクセス環境を
構築しましょう!
前スレ
SoftEther→他のVPNシステム 乗り換えスレ
http://pc8.2ch.net/test/read.cgi/network/1136813055/
OpenVPN
http://openvpn.net/
OpenVPN GUI for Windows
http://www.openvpn.se/
OpenVPN 2.0 HOWTO Japanese Translation
http://degas.is.utsunomiya-u.ac.jp/~zhao/freesw/ovpn2_howto_ja.html
44氏の解説サイト
http://maturi.s144.xrea.com/openvpn/index.html
TinyVPN
http://www.shimousa.com/tv/
■OpenVPN
メリット> 完全にフリー(無料)、マルチプラットフォーム対応(Windows、Linux、etc)
デメリット> やや設定が難しく初心者には敷居が高い。現時点では速度が不満。
■TinyVPN
メリット> 非常に簡単。初心者でも大丈夫。速度もそれなりに出る。
デメリット> Proxy超えが不可能、8クライアント以上は有料、Windowsでしか動かない。
では皆さん、有意義で価値のある情報交換をして行きましょう! >>1 乙彼、どうもありがとう。ごめん、スレタイ案の文字数が長すぎたね。
前スレでは、各個人のVPN環境ごとにパフォーマンスを比較する方法が
みつからなかったよね。VPNと言っても結局はファイルのやり取りが
大半だろうから、基準ルールを決めてベンチマークするのはどうだろう。
例)下記のようなファイル生成ソフトで100MB程度のダミーファイルを生成し、
2つのパターン(細切れファイル多数と、大きなファイル1個)の転送速度を報告しあう。
■任意サイズで内容がランダムなファイルを一括で大量生成できる開発支援ソフト
http://www.forest.impress.co.jp/article/2006/05/16/randomfile.html
大きなファイル1個の例として、俺の今の環境で試してみた。
クライアント回線:BフレマンションVDSL 70Mbps
VPNサーバ設置回線:TEPCO 100Mbps
VPNシステム:ハードウェアVPNでPPTP接続(buffalo BHR-4RV)
http://buffalo.jp/products/catalog/item/b/bhr-4rv/index.html
転送内容:100 MB (104,857,600 バイト)のランダム文字列ファイル
転送方法:NETコマンドで接続先をマウントし、バッチコマンドでcopy(copy x:100MB.txt y: )
VPN接続先のWindowsマシンへ転送したら107秒でした。つまり1MBytes/Sec程度。
ちなみにTinyVPNでも、ほぼ同じ数値です。(VPNルータ買えば速くなるかと思ったけど変わらなかった)
>2=1 乙カレー。
クライアント回線:Bフレッツベーシック100Mbps(NEC Note LavieM)
VPNサーバ設置回線:USENマンションType 100Mbps(Hitachi Prius 35K) & NAS
VPNシステム:PacketiX SOHO Edition
転送内容:100 MB (104,857,600 バイト)のランダム文字列ファイル
転送方法:Drug & Copy
VPN接続先経由でNASへ転送したら153秒でした 。
ちと遅い? 環境に依存するのかな? >>2
補完有難うございます。
まず、誰か良いテンプレを作成してもらえませんか?
今のところ
クライアント回線:
VPNサーバ設置回線:
VPNシステム:
転送内容:
転送方法:
で良さそうですが、他に追加あればよろしくお願いします。
それから私の方からもソフトを紹介したいと思います。
Nethist
http://www.vector.co.jp/soft/winnt/net/se333723.html
これでいつもリアルタイムに現在の転送速度、安定感等を見ております。
このソフトの速度を記述する際は
Nethistで50KB〜300KB/sを激しく揺れているとか200KB/sでほとんど速度変化無く
安定している、といった感じに書いていただければよろしいかと。
>>2
WZR-G108/P
http://buffalo.jp/products/catalog/item/w/wzr-g108_p/
を持っているのですが、これでもハードウェアVPNは可能でしょうか?
もし可能なら、少し方法を教えていただけません?
私も速度を測って載せてみますが、今から外出するので、帰ってきてからにします。 追記
OpenVPNの高速化に関係しそうなパラメータ
mtu-test
fragment
mssfix
tun-mtu
no-replay
cipher none
comp-lzo
全てのオプション、またこれ以外にも高速化に関係しそうなオプションがあるならそれも含めて
日本語でどういう風に使ったらいいのか、どういう意味のオプションなのか
分かる方解説していただけませんか?
よろしくお願いします。ちなみに私的解説をしますと・・・
mtu-test よく分かりませんがmtuの値を算出してくれる?このオプションをserver.confに記述
すると(クライアント側には不要)、接続後3分か4分で/etc/openvpn/openvpn.logファイルに
算出結果が出力される。この値を使用してtun-mtuやfragmentの値を設定する?
fragment よく分かりません。サーバクライアント両方必要
mssfix 全然分かりません。
tun-mtu Tunデバイス(仮想NIC)のMTU値を設定する。クライアント、サーバ側に同じ値を設定
しないとダメ?1500以外の値に設定するとクライアントの接続ログに通常は1500にセットして
mssfixやfragmentで値を調節する?みたいなエラーっぽいログが出ますが良く分かりません。
no-replay セキュリティが低くなる代わりに高速に?クライアントサーバ両方で設定する必要あり。
これもいまいちよく分かりません。
cipher none 暗号化を無効にします。暗号化処理をしなくていいのでセキュリティは多少落ちるでしょうが
パフォーマンスは上がるかと思います。サーバクライアント両方に必要。
comp-lzo 圧縮通信をします。圧縮するのでCPU負荷は多少上がるでしょうが、パフォーマンスも上がるはず?
私の環境ではつけてもつけなくてもあまり変化無かった。サーバクライアント両方必要。 前スレ>>1です。
>>3早速ありがとう。なるほどSEでは150秒台か。
>>5
では5項目に2つ追加で。
●クライアント回線:
(直接アクセス時で、おおよその実測値:上り Mbps 下り Mbps)
●VPNサーバ設置回線:
(直接アクセス時で、おおよその実測値:上り Mbps 下り Mbps)
●VPNシステム:
●転送元(VPNクライアント)のOS:
●転送先(VPNサーバ接続先に設置)のOS:
●転送内容:100 MB (104,857,600 バイト)のランダム文字列ファイル
●転送方法:
ちなみに、残念ながらWZR-G108/PにはVPN機能は入っていないっぽいね。
Buffaloのルータで「リモートアクセス対応」と書いてあればOK。
この類の機能は、数多くのコンシューマルータメーカの中でBuffaloしか
実装してない。しかも、2機種くらいしかなかったかと。他のメーカーもがんばれ。
ハードそのものがPPTPサーバになってくれるので、きわめて安定してます。
3ヶ月ほど使ってるけど、いまんところルータそのものは1度も落ちてません。
面倒なVPNサーバ構築を全て投げ出したい俺みたいなヘタレにはお勧めです。
・・・って、このスレ自体を否定する感じもするが、より速い環境を
見つけ出すまでのツナギのイチ事例ということで。
理想を言えばPCルータにOpenVPNかFreesWAN(だっけ?)を組み込むことだろうなぁ。 逆もやってみた(自宅→会社) >3は、会社→自宅
VPNサーバ設置回線:Bフレッツベーシック100Mbps
クライアント回線:USENマンションType 100Mbps(Hitachi Prius 35K) & NAS
VPNシステム:Planex BRC-14VG ハードPPTP(Win XP PPTPクライアント使用)
転送内容:100 MB (104,857,600 バイト)のランダム文字列ファイル
転送方法:Drug & Copy
VPN接続先経由でNASへ転送したら約180秒でした 。 NAS→NASのせいかも…?
やはり 環境に依存するのかな?
12MのADSLに鯖を設置している俺は100Mbytesなんて普通に1時間以上かかる・・・
リモートデスクトップだとSXGA画面表示に10秒以上かかるし、クリックが反映されるのが2秒後だ。
OpenVPNを使っているが、もちろんコイツが悪いわけではなさそう・・・orz >>10
知っての通りADSLは上りが遅い。
鯖側を光にするが吉。 やっぱVPNやるなら光to光でないと難しいかもわからんね。特に速度面が。 >>1です。
よく「光ファイバ100Mbps」とか言いますが、あれは単なる理論値で実際にはそんなに出ません。
で、Mbpsっていう単位は少々単位が大きくなりすぎてわかりづらいので
理論値は無視して、相手とVPNを介さずに例えばFTP転送した場合
MB/sの単位で書いて、
VPNを通してFTP転送した場合もMB/sの単位で書いていただけると非常にわかりやすい
Nethistだって、MB/sで表示されますので・・・・。
そこのところよろしくお願いします。わかりにくいので書き直させてもらいます。
>>3の速度は100MBを153秒なので650KB/sってところですかねぇ。
>>7
WZR-G108/Pは入ってないかぁ・・・教えてくれてありがとう。>>2の速度1MB/sとかうらやましいけど
ダイレクトに通信して(VPNを介さずに)何MB/s出る? >>11
できればやってる。金銭的以外の面で不可能なのが困る。o... rz うちのLinux(FedoraCore5)で作ったPPTPサーバは
どうやってもPPTPクライアント(XP)に対して、1Mbpsでしか転送してくれない。
FTPだと70Mbpsくらいでるのに、PPTPだとダメだ。
PPTPでも、クライアント→PPTPサーバーの方向なら3〜5Mbps出る
Sambaが原因なのかPPTPサーバーソフト(Poptop)の仕様なのか
PPPモジュールが悪いのか分からんす。
鯖側のMTUも1400〜9016くらいまで色々試したが一切変化なし。
問題はどこにありそうですか?
鯖は、光プレミアム→ONU→CTU→L2SW→Linux Samba
クラはBフレF→ONU→ルーター→XP
な構成です。 Windows 2000 & EthernetBridge で openvpn を試しました。
初心者の私でもこれといった問題もなく事も無げにつながりました。
File 共有、browsing もちゃんとできました。
“HOW TO” に書いてあったこと以外はなにもしてません。てか、出来ない…。
いろいろ難しい話があるらしいけど、もし先にそれ聞いてたらやらずに諦めてたと思う。
知らぬが仏…、beginner's luck の典型だね。
で、 Windows の service に登録しようとしてはたと気がつきました。
必ず EthernetBridge を先に作ってやる必要がありますよね…。
Linux の場合、/etc/openvpn/openvpn-startup と /etc/openvpn/openvpn-shutdonw、
に sample-scripts にある bridge-start、bridge-stop を入れるか、
或いは /etc/rc.d/init.d/openvpn をいじるってだけの簡単な話でした。
Windows 2000 の場合、どうしたらいいんでしょうか? EtherBridgeはコマンドラインツールが付属しているので、スタートアップなりに登録してみてほしい。
OpenVPNもコマンドラインから起動できるし、問題は両方をスタートアップにした場合、どうやって
同時ではなく順番に起動させるか、だ。俺はWin2k捨てちゃったからこの問題とはおさらばしたが。 >>17
根本的な解決策ではないけど、Windows2000捨ててLinuxサーバにしたら?
それか・・・
どうしてもWindows2000でやりたいっていうんだったら
二つのサービスを「手動」にしておいて
Batファイルに
net start bridge
sleep 5
net start openvpn service
exit
みたいな方法じゃダメなのかな?でも1度目それで成功したとしても
2度目(つまり成功した後で再起動した場合)は、手動の状態で「開始」状態に2つとも
なっていると思うので、成功しないなぁ・・・。私にはアイディアが思い浮かばない。 サービスならDependOnService値があるジャマイカ 皆様、レス、本当にありがとうございます。
>>21 さま、
http://support.microsoft.com/default.aspx?scid=kb;ja;193888
に DependOnService の解説がありましたので一覧しました。これは
bingo! かもしれません。
するってぇと、あとは、EthernetBridge を service に登録する方法ですが、
EthernetBridge の site に出ていた、“SrvAny” は当方には入手が困難だったので、
これも検索したら、
http://www6.plala.or.jp/k-ssk/execsvc.html
で exesvc というのを見つけました。
OpenVPN の servece は既に作られていますし、この exesvc で EthernetBridge を
service に入れられます。そして、ご指摘の DependOnService でこれらに依存関係
をつくれば、と〜ってもうまくいきそうです!
改めて、皆様にお礼申し上げます。 ど〜も>>1ことレビュアー: 獅堂 光 です。
http://www.amazon.co.jp/gp/product/4777510565/sr=8-2/qid=1156433330/ref=sr_1_2/503-6212607-9293501?ie=UTF8&s=gateway
ここのレビューは私が書きました。
この本にパフォーマンスチューニング的な内容を期待していたのですが、
結局そんな類の話題は一切無し。
せいぜい
comp-lzoで圧縮転送を有効にして速度を上げる程度の事しか書いていません。
1MB/s程度の速度がVPNを通さずに転送すると出るのに
VPNを通すと200KB/sとか170KB/sとかに速度が激減してしまうこの状況を何とかしたい!
でもどうすればいいのか分からずに日々悩み続けています。
そこで、速度が速い人はサーバとクライアントの設定ファイルを晒してもらえませんか? どうしても気になるのですが、
/etc/openvpn/openvpn.logファイルに
Fri Aug 25 00:45:50 2006 client1/IP:1674 MULTI: bad source address from client [192.168.222.57], packet dropped
ってのが大量に出力(20行、mute 20を指定しているので止めてます)されるのですが、
これって通信速度に害を与えていますかねぇ?
出てこないようにするにはどういう風に設定を見直したらよいやら・・・。 http://www.org3.net/tech_notes/openvpn.html
ここの最下行
最終目的であったsambaを使用してのファイル共有もきちんとできていることを確認しました。特に設定はいじってません。が、遅すぎる...
ここのサイトの管理者もOpenVPNが非常に遅いと感じているみたいですね・・・
OpenVPNは遅いVPNソフトウェアって事なのでしょうか? >>23 レビュー乙。技術者が書いた典型的なトンデモ本で確定だな。
酷評だらけの悲惨な 一条 博 氏だが、瞬時にネガティブ情報の広まるネット時代はオソロシス。
自業自得なことは間違いないが、実は前スレ>>1もライター的な仕事をしている。
締め切りに追われた一条氏はヤッツケ仕事をせざるを得なかったと同情するが、
仕事は仕事だ・・・チラ裏おわり。
本題に戻り、>>13で質問を受けた件。
>>2で書いた回線は、暗号化なしで素のFTPでは1.8MB/sec程度です。
VPN越しで1MB/Secは、「アプリはローカル・データファイルはリモート」という用途で、
データファイルをとりに行く時間を遅く感じて、やはり不満だ。
そこで現在は、「オフラインフォルダ」の考え方を拡張し、ローカルにキャッシュを置き、
クライアント側の工夫で見かけ上のパフォーマンスを上げる方法をあれこれ考えている。
数分後のアイドル時に同期できればすむような、リアルタイム性の低い用途ならば、
このような考え方をお奨めする。
>>1は、OpenVPNの設定で悩むのもいいけど、Tinyなどの他のVPNシステムで
テスト運用して、回線の特性や、平均的なパフォーマンスを調べてみたらどう?
19では質問意図を完全に読み違えていた。はずかちい。
それはそうと、やっつけ本でも人の目に触れることはコミュニティのため、と前向きに考えよう。
>>26
>そこで現在は、「オフラインフォルダ」の考え方を拡張し、ローカルにキャッシュを置き、
>クライアント側の工夫で見かけ上のパフォーマンスを上げる方法をあれこれ考えている。
それができたら最高!
鯖だけが光でほかはADSLなので、鯖でキャッシュをもてたら安定的にパフォーマンスを出せる。
でもどう設定すればよいか皆目見当もつかないときてる……orz 設定ファイルを晒してみる
サーバ(Celeron 3.06G SUSE Linux 10.0)
port 9999
proto udp
dev tun0
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem
server 172.16.1.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.0.0 255.255.255.0"
keepalive 10 120
user openvpn
group openvpn
persist-key
persist-tun
status openvpn-status.log
verb 3
tun-mtu 1400
fragment 1280
>>28のつづき
クライアント(Celeron 1.0G Windows2000)
client
dev tun
dev-node OpenVPN
proto udp
remote example.com 9999
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client000.crt
key client000.key
verb 3
fragment 1280
tun-mtu 1400
これといって変わった事はしていないと思う。 >>28
それで 「後方のwinとのファイル共有」 てことは
linux 上の samba の設定ってことですか?
その辺り、ご教授願いたい…。 >>PacketiX VPN 2.0 ライセンスキー無償発行のお知らせ (Option Pack および 64 bit 版が利用可能な体験版)
今更そんなこと言い出しても移行する気はナシですよ
おや?Build5210がダウンロードできるようになってるな。
前と同じところ修正すればいけるかな?
さすがに対策しちゃったかな?w サーバ側のserver.confに
mtu-test
log-append openvpn.log
をつけておいて
クライアント側にも
mtu-test
つけて、その状態で接続して3分か4分立つと自動的にサーバ側のopenvpn.logファイル
クライアント側のビューログでのログファイルにmtu-testの実行結果が出てきますよね。
これを実行したときのMTU値って、その環境での最善な値なのかな?
勝手にtun-mtu 1400とかつけるのもいいのかもしれないけど、この値に従った方が
速度が出るのかな?どう思いますか? >>28
その設定だと、クライアントのログファイルにこういうのでない?
WARNING: normally if you use --mssfix and/or --fragment, you should also set --tun-mtu 1500 (currently it is 1400)
警告:普通はもし貴方がmssfixもしくはfragmentを使うなら、貴方はtun-mtu 1500も設定するべきです(現在のtun-mtuは1400です。)
↑勝手な意訳。間違ってたらスマン。
この警告は無視しちゃってる? >>30
後方のwinなのでLinux上のsamba関係ありませんが、
ブリッジじゃないとき用にクライアント側へのWINS鯖にってことかな。
いまはアドレスバーに\\192.168〜な感じで見ています。
>>35
無視してます。正常転送でき速ければそれでいい。
「mssfixやfragmentを使うなら、tun-mtuも適切に設定してね(ちなみに現在値は1400だよ)」だと解釈。
どっちもルータ越しでRTX1100とSuperOPT100が入ってます。 >>36
tun-mtu 1400
fragment 1280
っていう値はどうやって算出したの?
色々適当に検証して一番速かった値とかそういうの?
それから、
mssfix
オプションをつけるとさらに高速化する?変化なし?遅くなる? >>36
>無視してます。正常転送でき速ければそれでいい
速いってVPN通さずにファイル転送してどれくらいで、
VPN通してどれくらいの速度が出ていますか? 44氏のサイトって全然更新されて無いね。
更新しないの?performance tuning関係についても解説してくれたら
このスレの人喜ぶよ。オレも含めて。 煽るな。とりあえずつなげる方法をまとめてくれただけでもありがたい。 >>41
タダでさえ人が少ないスレなのだから、age続けて活気付けるべきだと思うけど? >>42
ひょっとしたらageた事によって、
まとめてくれた44氏に対して失礼な発言&ハンドルを使うような厨が来ないとも限らないので、
できればsageてくれるとありがたい。
そういう厨が来たら前スレ序盤からいた人たち(俺も含め)はみんな不愉快になると思う。 ■ このスレッドは過去ログ倉庫に格納されています