Contents

再起動後の Windows Server のネットワーク プロファイルが間違っている

Contents

<本文>/images/domain-network-profile-not-detected-on-windows-ser.png

Windows Server 2025 を実行しているドメイン コントローラーでは、再起動後にサーバーがネットワークをドメインではなくパブリックとして誤って識別するという問題が発生します。 Windows Defender ファイアウォール ルールの一部がネットワーク プロファイル (場所) に適用されている場合、サーバーのネットワーク可用性に問題が発生する可能性があります。

/images/domain-network-profile-not-detected-on-windows-ser.png

再起動後にネットワークの種類が間違ったものに変更される問題は、Windows Server バージョン 2019 および 2022 を実行しているドメイン コントローラーおよびメンバー サーバーで発生している古いバグです。これらのバージョンの Windows Server では、Network Locationwareware サービス (NlaSvc) を再起動するだけで、自動的にドメイン ネットワーク プロファイルに戻ることができました。 NlaSvc サービスの起動遅延を構成したり、ドメイン接続を再確立しようとするときの NLA サービスの動作を変更するレジストリ オプションを実装したりすることもできます。

Set-ItemProperty-Path "HKLM:\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters"-Name "AlwaysExpectDomainController"-Value 1-Type DWORD

ただし、Windows Server 2025 では、ネットワーク ロケーション認識はデフォルトで無効になっています。

/images/network-location-awareness-service-is-disabled.png

Windows Server 2025 ホストがネットワークの種類を正しく検出していることを確認するには、コンピューターの再起動後にネットワーク アダプターを再度有効にするだけです。サーバー コンソール (iLO または同等のもの) にアクセスできる場合は、「ネットワーク接続」コントロール パネル (ncpa.cpl) を介してネットワーク アダプターを無効にして再度有効にすることができます。

/images/disable-and-then-enable-network-adapter-via-ncpa-c.png

RDP または PowerShell Remoting のみで DC にアクセスできる場合は、PowerShell コマンドを使用してネットワーク アダプターを再起動できます。

Get-NetAdapter-Physical | Where-Object { $\_.Status-eq "Up"} |再起動 - NetAdapter

この後、ネットワークはドメイン ネットワーク ( DomainAuthenticated ) として正しく識別されます。

Get-NetConnectionProfile

/images/change-profile-from-public-to-domainauthenticated.png

Windows Server ドメイン コントローラーでのネットワーク タイプのリセットに関する問題は、DNS サーバーの設定に関連しています。サーバーが自身を DNS サーバーとして使用する場合、起動中 (DNS サーバー サービスが完全に初期化される前) に、正しいネットワーク ステータスを判断するのに十分な速さで DNS クエリに応答できない可能性があります。このため、安全なパブリック プロファイルがネットワーク タイプとして割り当てられます。

したがって、ドメイン コントローラーのセカンダリ DNS が他のドメイン コントローラーのアドレスを指していることを確認し、スケジュールされた再起動の間隔を空けて、それらが一度に再起動されないようにしてください。

あるいは、タスク スケジューラで単純な PowerShell スクリプトを使用して回避策を作成することもできます。 DNS サービスが開始されるのを待ってから、ネットワーク アダプターを再起動する必要があります (タスクを SYSTEM として実行します)。

プログラム/スクリプト: powershell.exe

引数を追加します (オプション): -ExecutionPolicy Bypass-NonInteractive-WindowStyle Hidden-command "do {$status=(Get-Service dns)} until ($status.Status-eq 'Running'); Get-NetAdapter-Physical | Restart-NetAdapter"

/images/powershell-script-to-restart-netadapter-on-windows.png

このスクリプトをすべての DC に適用するには、GPO 経由でスケジューラ タスクをドメイン コントローラ OU に展開します。

*️⃣ 出典リンク:

ネットワーク プロファイル (場所)、PowerShell コマンドを使用したネットワーク アダプター、タスク スケジューラの PowerShell スクリプト、GPO 経由でドメイン コントローラー OU にスケジューラー タスクを展開する、