青空 Jumping Box(仮)

Windows Server 2025 で地味目なラボを作る。

Windows Server 2025 を SNAT ルーターにしてみる。

Windows Server 2025 にリモート アクセスの役割を追加して、ラボ環境の SNAT ルーターにしてみます。

 

今回の環境

今回 SNAT ルーターにする Windows Server 2025 マシンには、2つのネットワーク インターフェースを用意してあります。

  • ネットワーク インターフェース #1
    • ネットワーク インターフェイスの名前:Ext-VLAN
    • 接続ネットワーク:外部ネットワーク(192.168.3.0/24)
    • IP アドレス:192.168.3.2/24
    • デフォルト ゲートウェイ:192.168.3.1
      (外部ネットワークからさらに外にで出られるゲートウェイ)
    • このインターフェースから SNAT で外部(インターネットなど)に出る
  • ネットワーク インターフェース #2
    • ネットワーク インターフェイスの名前:Lab-VLAN-40
    • 接続ネットワーク:内部ネットワーク(192.168.40.0/24)
    • IP アドレス:192.168.40.2/24
      (検証用の Windows Server などのデフォルト ゲートウェイになる)
    • デフォルト ゲートウェイ:空欄

 

この SNAT ルーター マシンには、ラボ側のネットワークは1つ(Lab-VLAN-40)だけ接続してあるので、インターフェースの Forwarding は無効のままにしてあります。

PS C:\> Get-NetIPInterface -AddressFamily IPv4 | Select InterfaceAlias,Forwarding

InterfaceAlias              Forwarding
--------------              ----------
Lab-VLAN-40                   Disabled
Ext-VLAN                      Disabled
Loopback Pseudo-Interface 1   Disabled

 

IP アドレスとゲートウェイの設定を確認しておきます。

Get-NetIPConfiguration |
Select InterfaceAlias,
@{N="IPAddress";E={$_.IPv4Address.IPAddress}},
@{N="PrefixLength";E={$_.IPv4Address.PrefixLength}},
@{N="DefaultGateway";E={$_.IPv4DefaultGateway.NextHop}} |
sort InterfaceAlias | ft -AutoSize

 

デフォルト ゲートウェイは、SNAT で外部ネットワークに出るネットワーク インターフェース(Ext-VLAN)に設定してあります。

PS C:\> Get-NetIPConfiguration |
>> Select InterfaceAlias,
>> @{N="IPAddress";E={$_.IPv4Address.IPAddress}},
>> @{N="PrefixLength";E={$_.IPv4Address.PrefixLength}},
>> @{N="DefaultGateway";E={$_.IPv4DefaultGateway.NextHop}} |
>> sort InterfaceAlias | ft -AutoSize

InterfaceAlias IPAddress    PrefixLength DefaultGateway
-------------- ---------    ------------ --------------
Ext-VLAN       192.168.3.2            24 192.168.3.1
Lab-VLAN-40    192.168.40.2           24

 

SNAT 設定には netsh コマンドを利用しますが、この時点では「netsh routing ~」はインストールされていません。

PS C:\> netsh routing
次のコマンドは見つかりませんでした: routing

 

そして、Windows Defender ファイアウォールは無効にしてあります。

 

1. 役割「リモートアクセス」のインストール

今回は CLI での設定となるので、機能のインストールも PowerShell コンソールから実行します。RemoteAccess と Routing をインストールします。

PS C:\> Install-WindowsFeature RemoteAccess,Routing

Success Restart Needed Exit Code      Feature Result
------- -------------- ---------      --------------
True    No             Success        {DirectAccess および VPN (RAS), リモート ...

 

インストール直後は、RemoteAccess サービスが無効になっています。

PS C:\> Get-Service RemoteAccess | ft Status,Name,StartType -AutoSize

 Status Name         StartType
 ------ ----         ---------
Stopped RemoteAccess  Disabled

 

RemoteAccess サービスを起動します。自動起動にする場合は、「-StartupType」を「Automatic」にします。

PS C:\> Set-Service RemoteAccess -StartupType Manual
PS C:\> Start-Service RemoteAccess

 

サービスが起動されました。

PS C:\> Get-Service RemoteAccess | ft Status,Name,StartType -AutoSize

 Status Name         StartType
 ------ ----         ---------
Running RemoteAccess    Manual

 

2. SNAT の設定

NAT の機能をインストールします。

PS C:\> netsh routing ip nat install

 

「Ext-VLAN」を、外部ネットワーク側のネットワーク インターフェースとして設定します。

PS C:\> netsh routing ip nat add interface Ext-VLAN full

 

「Lab-VLAN-40」を、内部ネットワーク側のネットワーク インターフェースとして設定します。

PS C:\> netsh routing ip nat add interface Lab-VLAN-40 private

 

これで、SNAT ルーターとして設定できました。

PS C:\> netsh routing ip nat show interface

NAT Ext-VLAN の構成
---------------------------
モード            : アドレスおよびポートの変換


NAT Lab-VLAN-40 の構成
---------------------------
モード            : プライベート インターフェイス

 

これで、ラボ ネットワーク(192.168.40.0/24)に配置されているマシンのデフォルト ゲートウェイを 192.168.40.2 にすると、外部ネットワークに抜けられるはずです。

以上。