web-dev-qa-db-ja.com

コマンドラインから現在のWindows NLAネットワークの場所を取得する方法

Windows Server 2008 R2ドメインコントローラーがあり、常に再起動後にNLAの場所を「ネットワーク3」に設定します。間違いなく、これはデフォルトでPublicになり、ドメインプロファイルのファイアウォール設定に影響します。ネットワークアダプターをドメインプロファイルに戻す前に、手動で無効にしてから再度有効にする必要があります。

私は KB2524478 と他のすべてのホストを試しました。今、私はこの問題を解決しようとするのに疲れていて(そして、時間が足りなくなって)、それを回避したいだけです。 netshを使用して無効化/有効化のスクリプトを作成してそれを完了することを考えていましたが、さらに一歩進んで、NLAの場所実際に「ネットワーク3」であり、「the-domain.example.org」ではありません(具体的には、ドメインではないことを確認するだけです)。そうすれば、起動時よりも頻繁にスケジュールできます。

このパズルの一部が欠けています。パイプを使用してFIND /i "the-domain.example.org"にパイプできる場所を使用して場所を取得する方法があるため、次のように実行できます。

<something> | ...
FIND /i "the-domain.example.org" || ...
NETSH interface set interface name="Local Area Connection" admin=DISABLED & ...
NETSH interface set interface name="Local Area Connection" admin=ENABLED

では、<something>とは何ですか?

6
jimbobmcgee

適切なレジストリキーを照会して、ネットワークプロファイルの設定を確認できます。適切なインターフェイスのサブキーを見つけるには、\HKLM\Software\Microsoft\Windows NT\CurrentVersion\NetworkList\Signaturesを調べる必要があります。これには少し探偵の仕事が必要ですが、最も簡単な方法はcurrentデフォルトゲートウェイのMACアドレスを探すことです。インターフェイスのSubKeyを見つけたら、ProfileGUIDをメモします。次に、ProfileGUIDを使用して、そのインターフェイスのプロファイル設定..\NetworkList\Profilesを見つけます。そこからREG_DWORD:Categoryを2に戻すと、インターフェースのプロファイルがドメインに設定されます。

カテゴリー属性を変更する前に、NLAサービスをオフにする必要があります。単純なnet stop nlasvcは、NLAとnetprofmを停止します。レジストリを変更したら、再起動してください:net start netprofm

4
user62491