Openvpnの開発タップと開発調整の使用の違いは何ですか?異なるモードは相互運用できないことを知っています。技術的な違いは何ですか、それ以外はレイヤー2と3の操作だけです。さまざまなパフォーマンス特性、またはさまざまなレベルのオーバーヘッドがありますか。どちらのモードが良いですか。各モードでのみ使用できる機能。
レイヤー3にVPNを作成しても問題ない場合(サブネット間でさらに1ホップ)-調整します。
2つの異なる場所で2つのイーサネットセグメントをブリッジする必要がある場合-タップを使用します。このような設定では、vpnの両端にある同じIPサブネット(10.0.0.0/24など)にコンピューターを置くことができ、ルーティングテーブルを変更せずに、お互いに直接「対話」できます。 vpnはイーサネットスイッチのように動作します。これはクールに聞こえるかもしれませんが、場合によっては便利ですが、本当に必要な場合を除いて、これを実行しないことをお勧めします。そのようなレイヤ2ブリッジ設定を選択した場合、VPNを通過するビットの「ガベージ」(つまりブロードキャストパケット)が発生します。
タップを使用すると、オーバーヘッドが若干増加します-ipヘッダーの他に 8B以上 のイーサネットヘッダーがトンネル経由で送信されます(トラフィックの種類によって異なりますが、さらに多くのトラフィックが発生します)断片化)。
中小企業を経営している友人のためにVPNを設定するときに「タップ」を選択しました。彼のオフィスでは、複雑なWindowsマシン、商用プリンター、Sambaファイルサーバーを使用しているからです。純粋なTCP/IPを使用するものもあれば、NetBIOSだけを使用している(したがってイーサネットブロードキャストパケットが必要)ように見えるものもあれば、確信が持てないものもあります。
「tun」を選択した場合、おそらく多くの壊れたサービスに直面しているでしょう—オフィスにいる間に物理的には機能するものの多くは、オフサイトに行ってラップトップが「見えない」ときに壊れるでしょう。イーサネットサブネット上のデバイス。
しかし、「タップ」を選択することで、VPNにリモートマシンをLANとまったく同じように感じさせることができます。ブロードキャストイーサネットパケットと生のイーサネットプロトコルを使用して、プリンターやファイルサーバーと通信したり、ネットワークネイバーフッドディスプレイに電力を供給したりできます。それは素晴らしい働きをします、そして私はオフサイトで動かないものの報告を決して得ません!
私はいつもtunを設定しました。 TapはOpenVPNのイーサネットブリッジングで使用され、煩わしいだけの価値のない前例のないレベルの複雑さをもたらします。通常、VPNをインストールする必要がある場合、必要なnow、および複雑な展開は速くはありません。
OpenVPN FAQ および Ethernet Bridging HOWTO は、このトピックに関するexcellentリソースです。
OpenVPNを使用してモバイル(iOSまたはAndroid))デバイスを接続する場合は、現在TAPとしてTUNを使用する必要があります OpenVPNではサポートされていません :
TAPの欠点:..... AndroidまたはiOSデバイスでは使用できません。
私はtunを使い始めましたが、each PC(Windowsをサポートする必要があります)に/ 30サブネットを使用したくないので、タップに切り替えました。私はそれが無駄で混乱していることに気づきました。
次に、サーバーに「トポロジサブネット」オプションを発見しました。 (2.0ではなく)2.1 RCで動作しますが、(Windows)マシンごとに1つの(順次)IPアドレスを使用できるという便利さを備えたtun(ブリッジ、パフォーマンス、ルーティングなどなし)のすべての利点があります。
簡単なアドバイスを見つけるのは難しいので:
私の「経験則」
TUN-相手側のOpenVPNサーバーマシンに直接接続されているリソースへのアクセスのみが必要で、Windowsの問題がない場合。リソースをOpenVPNサーバーに対してローカルであるように「見える」ようにすることにより、ここで少し創造性を発揮することができます。 (例としては、ネットワークプリンターへのCUPS接続、またはOpenVPNサーバー上にマウントされた別のマシン上のSamba共有などがあります。)
TAP-反対側のネットワークを介して接続された複数のリソース(マシン、ストレージ、プリンター、デバイス)にアクセスする必要がある場合。 TAPは、特定のWindowsアプリケーションでも必要になる場合があります。
私は何年も前に同じ質問をしていて、ブログで簡単に(他のリソースが不足していることに個人的に気づきましたが)説明しようとしました: OpenVPN Primer
それが誰かを助けることを願って
TAPの設定には、それを設定する人が追加で行う作業はほとんど必要ありません。
もちろん、TUNのセットアップ方法は知っているが、何をしているのか理解しておらず、単純にtunチュートリアルに従っている場合は、TAPをセットアップするために戦っていますが、難しいのではなく、何をしているかがわからないためです。やっている。これはTAP環境でネットワークの競合を簡単に引き起こす可能性があり、その場合はより複雑に見えます。
実際、何をしているのかわかっているのでチュートリアルが必要ない場合、タップの設定にはtunの設定と同じ時間がかかります。
タップにはサブネット化に関する多くの解決策がありますが、私はクラスBサブネットを使用するのが最も簡単な方法だと感じました。 172.22.1.0/16を使用するsite1(Network1)172.22.2.0/16を使用するsite2(network2)172.22.3.0/16を使用するsite3など.
oVPNサーバーでsite1をセットアップし、クライアントにip範囲172.22.254.2-172.22.254.255/16を与えるため、200を超えるovpnクライアント(サブネット)を持つことができ、各サブネットはそれ自体で200を超えるクライアントを持つことができます。合計40.000のクライアントを処理できます(疑わしいoVPNはこれを処理できますが、ご覧のとおり、適切なサブネットを設定すると、必要になる可能性が最も高いので十分です)
タップを使用すると、すべてのクライアントが巨大な企業ネットワークのように一緒になります。
ただし、各サイトに独自のDHCPがあり、必要な場合は、ebtables、iptables、またはdnsmasqを使用して、dhcp配布がブロックされるのを防ぐ必要があります。ただし、ebtablesはパフォーマンスを低下させます。たとえば、dnsmasq dhcp-Host = 20:a9:9b:22:33:44を使用すると、すべてのdhcpサーバーでセットアップするのが非常に困難になります。ただし、最新のハードウェアでは、ebtablesの影響はそれほど大きくありません。わずか1または2%
タップのオーバーヘッド、およそ32からtunまではそれほど問題ではありませんが(暗号化されていないネットワーク上にある可能性があります)、暗号化されたネットワークでは通常、スローダウンを引き起こすのはAESです。
たとえば、暗号化されていないwrt3200acmでは、360Mbpsになります。暗号化を使用すると、選択した暗号化の種類に応じて54〜100Mbpsに低下しますが、openvpnは1500では暗号化を行わず、32オーバーヘッドでは2番目の暗号化を行いません。代わりに、1500 + 32のオーバーヘッドで1回の暗号化を行います。
したがって、ここでの影響は最小限です。
古いハードウェアではより多くの影響に気づくかもしれませんが、最新のハードウェアではそれは本当に最小限に抑えられています。
AESをサポートする2つの仮想マシン間の暗号化により、TAPを使用するovpnが120〜150Mbpsになりました。
AESハードウェア暗号化をサポートする専用ルーターが400Mbpsに達すると報告している人もいます。 i5-3570kの3倍の速さ(テストシステムでは、1コアの使用率100%で150Mbpsを超えることができませんでした)私の他の端:E3-1231 v3は、およそ7%のCPU使用率でした。 openvpnが使用していたコアの25%が使用されました。したがって、E3は接続を3倍から4倍に増やす可能性が最も高いでしょう。
だからあなたは、360Mbpsと600Mbpsの間の何かを持ち、E3-1231 v3 cpu間の接続でタップAES265暗号、認証SHA256、ta.key、証明書tls-cipherを使用します。また、最高のTLS-DHE-RSA-WITH-AES- 256-SHA256
これを指摘するには、tapを使用します。wrt3200acmは暗号化で最大70〜80 mbpsになります。 i5-3570kは暗号化により120-150に到達します。 E3-1231 v3は暗号化で少なくとも360Mbpsを取得します(これは、テストする2つのE3-1231 v3を持っていなかったため、ケース1および2での私の発見から補間されています。)
これらは、openvpn TAPで接続された2つの異なるサブネットにある2つのクライアント間でコピーするウィンドウ間のコピーに基づく私の発見です