ネットワークアドレス変換の設定
ネットワークアドレス変換(NAT)は、パケットの転送中にIPパケットのヘッダー内の送信元アドレスまたは宛先アドレスを変更するプロセスです。一般的に、送信側と受信側のアプリケーションは、IP パケットが操作されていることを認識しません。
OpenStackでは、外部ネットワークがインスタンスのインターネットアクセスを提供します。既定では、このネットワークは、送信元ネットワークアドレス変換 (SNAT) を使用したインスタンスからのインターネット アクセスのみを許可します。SNAT では、NAT ルーターが IP パケット内の送信者の IP アドレスを変更します。SNAT は一般に、プライベート アドレスを持つホストがパブリック インターネット上のサーバーと通信できるようにするために使用されます。
OpenStackでは、フローティングIPを使用してインスタンスへのインターネットアクセスが可能になります。フローティングIPは、デフォルトではインスタンスに割り当てられません。クラウドユーザーは、OpenStack 管理者が設定したプールからフローティング IP を取得し、インスタンスにアタッチする必要があります。フローティングIPは、宛先ネットワークアドレス変換(DNAT)によって実装されます。DNATでは、NATルーターはIPヘッダー内の宛先のIPアドレスを変更します。
SNAT – VM からのインターネット アクセス
図1 は、インターネットにアクセスするOpenStackインスタンスを示しています。
へのアクセス
VM からインターネット アクセスを有効にするには、VM が接続されているネットワークをルーターに接続する必要があります。このルーターのゲートウェイは、管理者が作成した外部ネットワークに設定する必要があります。ジュニパーネットワークス Neutron プラグインは、すべての VM の送信元アドレスを外部ネットワークに接続されているインターフェイスのアドレスに変更するようにルーター上の SNAT を設定します。
DNAT – VMへのインターネットアクセス
図 2 は、インターネットから OpenStack インスタンスにアクセスする方法を示しています。
からのOpenStackへのアクセス
VM へのインターネット アクセスを有効にするには、管理者によってテナントに割り当てられた IP アドレスのプールから VM にフローティング IP が割り当てられます。フローティングIPは、ルーティング可能なIPである必要があります。ジュニパーネットワークスのNeutronプラグインは、このIPアドレスのARPとVMのフローティングIPのDNATをプロキシするように、ルーターの外部向けインターフェイスを設定します。
プラグインの設定
プラグインを設定するには:
Neutron 設定ファイル /etc/neutron/neutron.conf を次のように更新します。
service plug-ins = neutron.services.juniper_l3_router.dmi.l3.JuniperL3Plugin
以下のように Neutron サービスを再起動します。
service neutron-server restart
外部ネットワークアクセスの設定
外部ネットワークアクセスを設定するには:
ネットワークを作成します。
作成したネットワークでインスタンスを起動します。
ルーターを作成します。
新しいネットワークをルーターに追加します。
ルーターのゲートウェイを外部ネットワークに設定します。
VMから外部ネットワーク内の任意のIPにpingを実行します。
外部ネットワークからVMへのアクセスの設定
外部ネットワークからVMへのアクセスを構成するには:
外部ネットワークのフローティングIPプールから、作成されたインスタンスにフローティングIPを関連付けます。
セキュリティグループにセキュリティルールを設定して、外部ネットワークからのトラフィックを許可します。例えば、ICMPはイングレストラフィックとエグレストラフィックの両方に対してALLを許可します。
フローティングIPを介してVMにアクセスできます。