web-dev-qa-db-ja.com

VPNはどのようにプライベートアドレスにルーティングしますか?

VPNを介した大学のサーバーへの接続がどのように機能するかを理解しようとしています。ネットワーク上のサーバーのIPアドレスは172.27.xxx.xxxです。これは、私の理解ではプライベートIPアドレスです(つまり、内部使用のために予約されており、パブリックインターネットでは許可されていません)。また、そのサーバーに対してDNSルックアップを実行すると、パブリックインターネットに接続する大学のルーターの1つ(おそらくVPNルーター?)のIPアドレスが返されることも理解しています どのIPアドレスはDNSサービスが返しますか? 、プライベートアドレスではありません。したがって、パブリックインターネット上のホストからパケットを送信すると、パケットは暗号化されてキャンパスVPNルーターに送信されます。 VPNに到達すると復号化されますが、目的のサーバーのプライベートIPアドレスがないため、この時点でルーターはパケットの送信先をどのように認識しますか?

関連する質問がいくつかありますが、この点を明確にするものは何も見つかりませんでした。 プライベートIPアドレスを使用してVPNサーバーにアクセスする方法は? および VPNはローカルIPアドレスを管理する方法 および 内部ネットワークでのDNSルックアップ

2
dpritch

ほとんどのVPNには2つの基本的な概念があります。

  • tunnellingの概念。つまり、あるタイプのトラフィックを別のタイプにカプセル化します。

  • ほとんどのVPNクライアントソフトウェアは、システム上に「仮想」ネットワークアダプタを作成します。

この仮想ネットワークアダプターに送信されるトラフィックは、実際にはVPNにシャントされますクライアントソフトウェア(最近のほとんどのOSは、ネットワークアダプターから直接ではなく、アプリケーションまたはサービスにトラフィックを送信するこのタイプのネットワークアダプターをサポートしています)。これは、パケットを受け取り、暗号化されたプロトコル(SSLなど)でペイロードデータとして追加し、暗号化されたパケットを実際のネットワークアダプターからインターネット経由でVPNサーバーに送信します。

このプロセス全体はtunnelling-と呼ばれ、暗号化を行う必要はありませんが、VPNの場合に使用されます。

次に、VPNサーバーはカプセル化を元に戻し、元のトラフィックを保持します。その後、通常どおりにルーティングなどを行うことができます。

クライアントでは仮想ネットワークアダプターが使用され、カプセル化/カプセル化解除は仮想ネットワークアダプターを通過するすべてのものに対して透過的であるため、VPNサーバーの反対側に存在するアドレスを直接接続されているかのように使用できます。


DNSに関しては、プライベートIP範囲を含め、必要なアドレスを返すようにDNSサーバーに指示することができます。 VPNサーバーは、VPNソフトウェアがトンネルを作成できるようにするために、少なくとも1つのパブリックIPとDNSをパブリックIPに解決する必要がありますが、トンネルがアップすると、VPNの「背後」にあるホストがプライベートIPアドレスを持つことができます。 VPNを介してのみ利用可能なネットワーク上でアクセス可能です。

4
LawrenceC

VPNに到達すると復号化されますが、目的のサーバーのプライベートIPアドレスがないため、この時点でルーターはパケットの送信先をどのように認識しますか?

私がひどく誤解していないのであれば、プロセスは通常、VPNパケットの一部として元の要求ペイロードを含めることだと思います。したがって、「internal.server.edu/something-something-darkside」を要求すると、それは暗号化されたパケットに含まれます(VPNサーバーはその構成に従ってこの要求データを処理します)。

また、ほとんどのVPNサーバーがネットワークブリッジングを許可し、ローカルDNSサーバーを認識している可能性が高いことも確認できます。

0
Anaksunaman