この記事でわかること
- GREの基礎、メリット/デメリット、仕組み、用途
GREとは
GREはGeneric Routing Encapsulationの略称で、トンネリングプロトコルの一種です。
トンネリングプロトコルとは、あるネットワークプロトコルのパケットを別のネットワークプロトコルのパケットでカプセル化し、宛先へ送る技術です。
GREを含む代表的なトンネリングプロトコルは以下のようなものが挙げられます。
- GRE(Generic Routing Encapsulation)
- 最も汎用性の高いトンネリングプロトコル。
- VPN、マルチキャスト、IPsecなど、様々な用途で使用されます。
- L2TP(Layer 2 Tunneling Protocol)
- PPPフレームをIPパケットでカプセル化し、送受信します。
- VPNで使用されることが多いです。
- PPTP(Point-to-Point Tunneling Protocol)
- PPPフレームをIPパケットでカプセル化し、送受信します。
- L2TPと同様に、VPNで使用されることが多いです。
- IPIP(IP in IP)
- IPパケットを別のIPパケットでカプセル化し、送受信します。
- 主にネットワークのオーバーレイやルーティングに使用されます。
- VXLAN(Virtual Extensible LAN)
- イーサネットフレームをUDPパケットでカプセル化し、送受信します。
- データセンターネットワークやクラウドネットワークで使用されることが多いです。
- NVGRE(Network Virtualization Generic Routing Encapsulation)
- GREをベースとしたトンネリングプロトコルで、VXLANと同様に、データセンターネットワークやクラウドネットワークで使用されることが多い。
本記事ではGREのメリット/ デメリットや仕組み、用途について解説します。
GREのメリット/デメリット
GREのメリットは以下のような点が挙げられます。
GREはIPネットワーク上で動作するあらゆるプロトコルをかプセリングすることができます。
また、多くのネットワーク機器でサポートされているので、様々な環境で使用することができます。
一方、デメリットは以下のようなものが挙げられます。
1番のデメリットは暗号化機能がないことです。
そのため、その他の暗号化機能を持つプロトコルと組み合わせて使用することが大半です。
また、GREを使用するとパケットにGREヘッダーが追加されます。
これによりパケットサイズが大きくなるため、NW環境下での考慮が必要になる場合があります。
GREの仕組み
GREはトンネリングプロトコルであるため、トンネルを両端でカプセル化とカプセル化解除を行う機器が必要となります。
GREトンネリングでの動作は以下の順で行われます。
- 送信元の機器にデータパケットが到着する
- 送信元の機器はデータパケットをGREヘッダーでカプセル化する
- 送信元の機器はカプセル化したパケットをIPパケットとして送信する
- 宛先機器はカプセル化されたIPパケットを受け取る
- 宛先機器は受け取ったパケットからGREヘッダーを取り除き、元のパケットとします。
- 宛先機器は元のパケットの情報を見て処理をします。
GREヘッダーの詳細については別記事で解説します。
GREの使用用途
GREは主に以下の用途で使用されます。
- VPN
- GREトンネルを使用してVPNを構築します、
- GRE自身には暗号化機能がないため、IPsec等の暗号化プロトコルを使用することで安全性を確保します。
【徹底解説】IPsecの解説
本記事ではIPsecに焦点を当てて解説します。IPsecの仕組みやモードの違い、ESPやAHの役割、またIPsecVPNでの用途についても解説しています。
- マルチキャストルーティング
- GREはマルチキャストをサポートしています。
- GREトンネルを使用し、マルチキャストトラフィックを異なるネットワークへルーティングすることができます。
- MPLS
- Multipoint Label Switchingの略称です。
- GREトンネルはMPLSで使用されています。
- MPLSの詳細は別記事で解説しています。