VPN周りで、
・トンネリング
・カプセル化
・暗号化
上記の用語が頻出しますが、
正直文献を読むだけでは理解しづらいと思います。
各用語の立ち位置が分かりづらいと思います。
なので、トンネリング・カプセル化・暗号化の用語について
私なりにかみ砕いてお伝えします。
VPN(仮想プライベートネットワーク)で使用されるトンネリング技術として、L3層ではGRE・IPsec、
L2層ではPPTP・L2TPなどのプロトコル(お約束事)で成り立っています。
その中で暗号化ができるのは、IPsecのみとなります。
今回の投稿のトンネリングについては各L3プロトコルのこと、暗号化についてはIPsecの事を指しています。
それに加え、カプセル化について紹介します。
※L2とL3のトンネリングプロトコルを混ぜて説明すると、頭が混在すると思うので。
今回の投稿ではトンネリングとカプセル化はセットで考えます。
暗号化はそれらとは一旦別で考えます。
※トンネリングしたからと言って、必ず暗号化がされる訳ではないので
***トンネリングとカプセル化***
トンネリングとはカプセル化したパケットが通る道です。
言い換えると専用車(カプセル化されたパケット)のための道路(=トンネリング)です。
イメージだとトンネリングの中にカプセル化されたパケットがいるわけです。
そしてL3トンネリングの場合だと、どこ上にそのトンネリングを作るのですか?その答えは、
IPプロトコル上に作ります(※ IPと思っていいです)
少し長ったらしく書くと、IP上にトンネリング技術を作り、そのトンネリングの中をカプセル化されたパケットが通ります。
トンネリングの説明はこれで終わりです。
じゃあカプセル化されたパケットって何ですか?この説明をします。
まずパケットが何か理解していることが大事です。
※暗号化を考える上でも重要
パケットはOSI参照モデルで言う、L3(ネットワーク層)で登場する話です。
具体的に言うと、IPヘッダ+データ(ペイロード)です。
カプセル化というのは、そのIPヘッダに新しいヘッダを差し込むことで
元のIPヘッダを包み込むことです。
何で包み込むのか、これはGREやIPsecなどのトンネリング技術によって変わってきます。
トンネリングとカプセル化の立ち位置は理解できましたか?
では次に暗号化にいきます。IPsecによる暗号化と考えてください。
***暗号化***
暗号化とは、読んでのごとくですが、VPNにおいてはどの範囲を暗号化するのか?そこを考えましょう。
結論ですが、IPsecの暗号化はESPで行うことができるが、
IPsecの通信モードによって暗号化の範囲は変わります。
通信モードとはトンネルモードやトランスポートモードの事を指します。
昨日投稿した内容を参考にしてください。そこに暗号化の範囲も載せています。
IPsec通信でのモードについて (miraclejob.com)
2つとも共通して言えるのは、ESPトレーラ/データ(ペイロード)/TCP・UDPヘッダを暗号化できること。
特に重要なのはデータ(ペイロード)を暗号化できていること。
じゃあどうやってそのデータを暗号化しているのですか??と疑問に思う方もいると思いますが、
DESや3DESとAESなどを使います。
ただ暗号化の方法の紹介はまた別で。かなり数学的になるので、頭痛くなるかもです。