いくらでも引っ張れる感じなWNV Gatewayネタです。

その6とはいえ、小出しにしすぎている感も否めない感じですな(笑)

で、今回はその3で放置プレイをかました『Specify network address translation(NAT)』です。

仮想ネットワーク(VMネットワーク)内のVMが外部ネットワーク(ex:Internet)と通信したい場合には、WNV GatewayでNAT(Source NAT)の設定をすることにより通信が可能になる、というのはその4あたりまでのお話でした。

今回は外部ネットワークの端末『から』仮想ネットワークのVM『に』アクセスしたい場合のお話です。

前回までの話ですと、WNV Gatewayに対してIPSec接続して、VPN経由で接続すればいいじゃん、という話になってしまうのですが、非VPN接続、例えば不特定多数のユーザーから、仮想ネットワーク上のVMのWeb Serverにhttpにてアクセスしたい、という要望があった場合には、VPN接続は不可能です。

こういった要件の場合にはどうしたらいいか。

WNV GatewayをNAT Boxとして考えた場合、単純にDest NATを仕掛けてあげれば、WNV GatewayのNAT IPに対して接続した通信を、そのままPort Fowardingしてあげることにより接続可能になる、と考えることができます。

そのDest NATの設定が『Specify network address translation(NAT)』というわけです。

恐ろしく単純な話なので、以下設定。

仮想ネットワーク上のVMが↓です。

wnvgateway_57

IPは192.168.10.2ですね。仮想ネットワーク上のVMです。

横道ですが、『ipconfig /all』の出力情報には、DHCP ServerからIPがリースされている場合には、IPをリースされているDHCP Serverのアドレスも出力されます。

上記のスクリーンショットをよく見ると、DHCP Serverのアドレスが表示されているのですが『192.0.2.253』と表示されています。Windows Server 2012+SystemCenter2012 VMM SP1の時は、DHCP ExtensionでのDHCP Serverのアドレスは『10.0.0.1』だったのですが、R2から変更になったようです。

Hyper-Vホスト上で『Get-NetVirtualizationLookupRecord』を叩いてみると

wnvgateway_60

こんな感じで、『192.0.2.253』がDHCPExt.sysによって使用されていることがわかります。

おそらく10.0.0.0/24の仮想ネットワークを作った際に、G/Wアドレスと被ってしまうので変更した、という感じですかね。

被った際の挙動は確認していませんが、変な挙動をするので変更したのではないでしょうか。推測ですが。

この辺の、R2での変更点はそのうちまとめてみたい気もしますが、Windows Server 2012のNVGRE自体が、
ねぇ……(溜息)

さて、そんな感じのVMのDest NAT設定ですが、VMネットワークのプロパティーから設定します。

↓な感じですね。

wnvgateway_58

ProtocolはTCPないしはUDPが設定可能です。

Incoming PortにNATアドレスで受けるポート番号を指定して、その通信を転送する仮想ネットワーク上のVMのアドレスとポート番号をDestination IPとDestination Portに指定します。

上記の例のようにNATアドレスの3389/TCP宛の通信を192.168.10.2の3389/TCPに転送する、と至極単純に指定するだけです。

で、これを設定した後に外部ネットワークからNATアドレスである172.16.20.159の3389/TCPにアクセスしてみます。

3389/TCPといえばリモートデスクトップですね。

wnvgateway_59

こんな感じで、172.16.20.159へのリモートデスクトップ接続が、仮想ネットワーク上の192.168.10.2のアドレスを持つVMに転送され、リモートデスクトップ接続されていることがわかります。

IIS(Web Server)を公開したい場合には、80/TCPを転送すればOK、という感じですね。

こんな感じで、ある特定のVM上のサービスだけ外部公開したい、という場合には非常に利用価値の高い機能かと思いましが、特定ネットワークに不特定サービスを、となるとやはりVPN接続になりますかね。

利用用途を考える必要がありますが、こんな機能もあるよ、というお話でした。