Azure

AzureのリソースマネージャーではNATは構成できません。てか、構成する必要がないです。

はじめに

くどうです。

以前、クラシック(ASM)でNATを構成したことを書きました。

AzureでNAT設置パターンを考える。構築編、これでルートテーブルも大丈夫かもよ。

ではリソースマネージャー側で作成はできるのか?
結論として、NATは構成できません。
なぜなら、デフォルトルートを設定できるがルーティングしません。
でもね、NATは必要ないのです。なんとなく説明を書いていきます。

NATの検証構成

検証で作成した環境です。

natarm01

・仮想ネットワークをひとつ作成します
・サブネットはFrontendとBackendに分け作成します
・FrontendはグローバルIPが付与される→外部からアクセスできます
・BackendはグローバルIPが付与されません→外部からアクセスできません
・NATはFrontendに配置します
・クライアントはBackendに配置します
・外部からクライアントにアクセスするため踏台をFrontendに配置します
・ルーティングテーブルBackendへ設定します。

NATの設定

NAT自身の設定は省きます。
Backendルーティングテーブルを設定します。
・0.0.0.0/0をPrefixとして設定します
・NAT(10.1.0.4)をNextHopとして設定します

natarm02

この設定でNATまでパケットが飛んで来ればルートテーブルが正しく動作していることを示します。
結果、tcpdumpで眺めていてもパケットがNATまで到達しませんでした(´゚ω゚)・*;’.、ブッファァ
ルーティングテーブルの設定は正しいのか確認するため以下の追加検証を行いました。

Backend2を作成し、ルーティングテーブルを行ってみる。
・Backend2を作成します
・Backendにルーティングテーブルを作成します
・Backend(10.1.2.0/24)をPrefixとして設定します
・NAT(10.1.0.4)をNextHopとして設定します

natarm03

結果、パケットはNATまで到着しました。

0.0.0.0/0が良くないのかと思いましたが、192.xxx.xxx.xxxや172.xxx.xxx.xxxでもパケットが到達しませんでした。
つまり、仮想ネットワークで指定したIPアドレスのレンジのみルーティングするということです。

PowerShell でユーザー定義のルート (UDR) を作成する
https://azure.microsoft.com/ja-jp/documentation/articles/virtual-network-create-udr-arm-ps/

実はルーティングの部分に関してはデフォルトゲートウェイのことは一切書かれていない…

でも、Azureって実はNATは必要ないのです。仮想マシンにグローバルIPが付与されていようが、されていまいがインターネットへ通信は行えます。
これって実は便利なことで、NATを作成する必要もないため、お金もかからないし手間も省けるんですよ。

natarm04

ただ問題はあります。Azureからインターネット側へ出ていくときのIPが不明なことです。
IPが固定でない限りは問題ないと思います。

おわりに

AzureのリソースマネージャーではNATは必要ないです。というか作成できませんでした。
NATが無くてもインターネット側へ通信が行えるのでWindowsUpdateなども問題なく行えます。
ただし、出ていくときのIPが固定じゃないかもしれないので要注意です。
通常、使う範囲では問題ないかと思います。

ではでは

関連記事

  1. Azure

    Azure DNS をポータルから使ってみた。シンプルです。

    はじめにくどうです。Azure DNS がポータルから操作…

  2. Azure

    Azure AppService (WebApps)で Sendmailを利用する方法。これでSen…

    はじめにくどうです。Linuxではsendmailが重宝さ…

  3. Azure

    WindowsコンテナでWebサーバー!IISだって動きます!

    はじめにくどうです。前回のコンテナの基本的な扱いの続きです。今回は…

  4. Azure

    SQL Server で照合順序 Japanese_CI_AS どこ消えた?あった。

    はじめにくどうですSQLServerをインストールしていた…

  1. Azure

    Windows Server で Windows コンテナが動くんです!ちょっと…
  2. Docker

    Docker on Ubuntu16.04 on Windows Subsyst…
  3. AlibabaCloud

    ActionTrail をLog Serviceで可視化する。
  4. Windows

    IIS8.0でPHPを使ってみよう
  5. 未分類

    0X8024d007 Windows Updateができない
PAGE TOP