• 締切済み

VPNのカプセル化とトンネリングについて

VPNのカプセル化とトンネリングについて VPNのカプセル化とトンネリングについてよくわかりませんので質問します。 まず、VPNはイントラネットどうしの通信を行うために専用回線を使用せずにインターネットやIP網を使用して専用回線と同じように通信をしようとしていることはわかります。 そこで、転送データのヘッダに別のプロトコル?を設置するのですよね?これは一体何のためなのでしょうか? そして、暗号化してさらにカプセル化を行うといった内容をよく見るのですが、暗号化とカプセル化の違いがよくわかりません。別のプロトコルにしたからといってインターネット上にデータが流れるわけなのでいくらでもデータを盗聴できるような気がします。 カプセル化は一体何のために行っているかを詳しく知りたいです。 そして、トンネリングですが、よく企業間にトンネルを作るように他のユーザに盗聴されなくなるという風に書いているのですが、インターネットを流れている限り盗聴は当たり前のように行われていると思います。 なぜトンネリングすることによってデータの盗聴や改ざんを行えないようになるのかを知りたいです。 この2つについて質問したいと思います。 よろしくお願いします。

みんなの回答

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 暗号化とカプセル化の話は全くの別物で、暗号化だけしてカプセル化しない事もある(HTTPSなど)し、暗号化せずにカプセル化する事もある(PPPoEなど)。書き手によってはHTTPSをSSL-VPN(HTTPのSSLによる暗号化+トンネル)と表現している場合もあるので注意。  トンネルだから盗聴されないというのは質問者がどこかの説明文を読んだ誤解ではないかな。ネットワークの世界でトンネルというのはすなわちカプセル化の事なんだけど、前述の通りカプセル化は暗号化の代わりにはならない。以後はトンネリングの事をカプセル化と表現します。  TCP/IPパケットも、結局IPヘッダとTCPヘッダがくっついたデータブロックです。で、IPヘッダとTCPヘッダも何らかのデータの集まりで、結局パケットそのもの(IPヘッダ-TCPヘッダ-データ部をまとめた塊)も単なる2進数の集まりでしかない。ではパケットそのものを単なるデータとして別の形式のパケットのデータ部に乗せてよそに運んだ後開封してもう一度パケットとして扱いましょうというのがカプセル化でありトンネルなのです。  VPNでよく使われるのはIPsec-VPNとSSL-VPNの2つだけど、ここではSSL-VPNについて説明します。ここで言うSSL-VPNは、SSL-VPNゲートウェイ製品(f5など)を通したゲートウェイではなく、トンネルの経路をSSLで暗号化するOpenVPNを用いたVPNを指す事とします。OpenVPNは逆にカプセル化した上で暗号化した通信を行います。  OpenVPNでは2点間のデータ送受信に主にUDP/IPを使うけど、TCP/IPパケットをUDP/IPパケットにトンネルして受け渡す事もできる(Layer3 over Layer3)し、EthernetフレームをUDP/IPパケットにトンネルして受け渡す事もできる(Layer2 over Layer3)。後者の場合は拠点AでブロードキャストしたEthernetフレームをUDP/IPパケットに包んで拠点Bに転送し、そこで開封した後拠点Bでブロードキャストするような事ができる訳ですな(拠点AとBが同一LANとなる)。この時、EthernetフレームがUDP/IPパケットのデータ部となるのです。これがトンネル。 質問1に対する答えは、上で示したLayer2 over Layer3のように、(普通は通らない場所へデータを届けるためなどで)階層が逆になった受け渡しを行うためであったり、PPPoE(Layer2 over Layer2)などの同階層を包んでEthernet上でPPPの恩恵に預かるためであったりという目的でトンネルは使用されます。 質問2は・・・・前述の通りトンネリングによって盗聴が行えなくなる訳ではないため、理由はないです。OpenVPNを無暗号で行うと、UDP/IPパケットを紐解いた後で普通のTCP/IPパケットやEthernetフレームになるので問題なく盗聴できます。なのでVPNは両方がそろわないとVPNたりえない訳で、よって普通暗号化とカプセル化は対で紹介される訳で、書き手によってはこの2つをごっちゃにしたり二つで一つのものと誤解するような表現をしてしまっていたりするかも知れませんね。

関連するQ&A