はじめに
私は、新人エンジニアとして実業務でクラウド環境を扱っていますが、
何がどう繋がっており、どんな役割を持っているのかという全体像が
全くつかめませんでした。
そこで、この記事では私の経験をもとに
・さくらのクラウドのVPCルータとは何か
・さくらのクラウドのVPCルータが担っている重要な役割
・特に難しいと感じたNAT機能の仕組み
を私の視点と経験から解説したいと考えています。
VPCとは
VPCとは、Virtual Private Cloudといって仮想的に作られたプライベートな
ネットワーク空間のことを指します。
これは、クラウド上に自分たちの専用のネットワーク空間を仮想的に作れる
仕組みであるといえます。
このプライベートの空間に外部から誰でもアクセスできてしまうと、
セキュリティの観点から非常に問題があります。
そのため、VPCを用いて通信経路を明確に制御し、
必要なものだけを繋げることが求められます。
VPCルータとは
さくらのクラウドでは、クラウドとインターネットの間に
仮想ルータを設置することができます。
その中で、通信経路の制御に欠かせないのがVPCルータです。
VPCルータは、VPC内の通信を中継・制御・振り分けする仮想ルータであり
ネットワーク内の交通整理の役割を担っています。
誰がどこにアクセスしようとしているのかを判断し、
必要に応じてブロックすることもあります。
VPCルータには以下のようなネットワーク制御機能が備わっています。
たとえば、
・経路制御
どの宛先に対してどのような経路を通すか制御する
外部から来た通信が「どのサーバに届くべきか」
・NAT機能
IPアドレスを変換する(後ほど解説)
内部から外に出ていく通信をどう扱うか
・ファイアウォール機能
どの通信を許可するか判断する
許可されていない通信をどうブロックするか
などです。
この中でも、理解するのに少々苦労したNAT機能についてお話します。
NAT機能とは
クラウド環境とは、各サーバー(インスタンス)ごとに
プライベートIPアドレスが割り当てられています。
同じVPC内では通信が可能ですが、そのままの状態ではインターネット上の
サーバーとは通信することができません。
つまり、外部との通信ができない状態にあります。
これは、プライベートIPアドレスはインターネットでは
一意に認識されないという理由です。
そのため、VPC内からインターネットに接続するためには、
グローバルIPアドレスに変換する必要があります。
そこでの役割を担うのがNAT機能です。
私が、理解に苦労した理由としては、ネットワークにおけるグローバルと
プライベートのイメージをつけることが難しかったことにあります。
なぜ、IPアドレス(住所のようなもの)が、変換される必要があるのか。
簡単な言葉で説明すると、
インターネット上には様々なサイトが存在しますが、
それは誰でも閲覧できるようにグローバルIPが振られています。
しかし、例えば社外秘のデータにグローバルIPが振られてしまうと
不特定多数の人が閲覧できてしまいます。
これを防ぐためにも、IPアドレスを変換する必要があります。
この違いから、VPCルータやその中のNAT機能が必要な背景を
理解できたように思います。
まとめ
本記事では、VPCルータの基本的な役割と、その中でも理解するのに難しいと感じたNAT機能について解説してきました。
はじめは、プライベート環境にアクセスする際、入れないことや自動的に特定のサーバーに到達する仕組みに対して不思議だと感じていましたが、その理由はVPCルータがアクセス元の判別に対し、許可を与え自動で振り分けている仕組みだと理解できました。
今後、より具体的なイメージを深めるためにも実務に励んでいきたいと思います。
参考文献