82

Windows 8 でコマンド プロンプトまたはバッチ ファイルを使用して DNS 設定を設定するにはどうすればよいですか

私はこれを試しました:

netsh interface ip set dns name="Local Area Connection" source=static addr=none

しかし、うまくいきませんでした。

4

9 に答える 9

88

まず、ネットワーク名は「ローカル エリア接続」ではなく「イーサネット」である可能性があります。名前を調べるには、次のようにします。

netsh interface show interface

「インターフェース名」列の下に名前が表示されます(ここでは太字で表示されています):

管理者の状態 状態の種類 インターフェイス名
-------------------------------------------------- -----------------------
有効 接続済みの専用        イーサネット

これで、インターフェイスが静的である (dhcp を使用していない) と仮定して、プライマリ DNS (インデックス = 1) を変更できます。

netsh interface ipv4 add dnsserver "Ethernet" address=192.168.x.x index=1

2018 Update - コマンドはdnsserver(単数形) またはdnsservers(複数形) のいずれかで機能します。次の例では後者を使用しており、同様に有効です。

netsh インターフェイス ipv4 add dnsservers "イーサネット" アドレス = 192.168.xx インデックス = 1
于 2013-09-05T02:19:28.897 に答える
30

コマンドを使用して DNS を自動に変更するには、次のコマンドを実行します。

netsh interface ip set dns "Local Area Connection" dhcp
于 2014-04-08T11:53:13.930 に答える
24

WMIC (Windows Management Instrumentation Command-line) を使用して DNS を変更する別の方法を次に示します。

コマンドを適用するには、管理者として実行する必要があります。

DNS サーバーをクリアします。

wmic nicconfig where (IPEnabled=TRUE) call SetDNSServerSearchOrder ()

1 つの DNS サーバーを設定します。

wmic nicconfig where (IPEnabled=TRUE) call SetDNSServerSearchOrder ("8.8.8.8")

2 つの DNS サーバーを設定します。

wmic nicconfig where (IPEnabled=TRUE) call SetDNSServerSearchOrder ("8.8.8.8", "8.8.4.4")

特定のネットワーク アダプターに 2 つの DNS サーバーを設定します。

wmic nicconfig where "(IPEnabled=TRUE) and (Description = 'Local Area Connection')" call SetDNSServerSearchOrder ("8.8.8.8", "8.8.4.4")

ドメイン検索リストを設定する別の例:

wmic nicconfig call SetDNSSuffixSearchOrder ("domain.tld")
于 2016-07-14T12:52:36.700 に答える
15

現在有効になっているすべてのインターフェイスの DNS サーバーを特定のアドレスに切り替えるために、次のスクリプトを作成しました。

@echo off

:: Google DNS
set DNS1=8.8.8.8
set DNS2=8.8.4.4

for /f "tokens=1,2,3*" %%i in ('netsh int show interface') do (
    if %%i equ Enabled (
        echo Changing "%%l" : %DNS1% + %DNS2%
        netsh int ipv4 set dns name="%%l" static %DNS1% primary validate=no
        netsh int ipv4 add dns name="%%l" %DNS2% index=2 validate=no
    )
)

ipconfig /flushdns

:EOF
于 2015-02-01T12:33:56.383 に答える
14

Windows 10ではどの答えもうまくいかないので、私が使用しているものは次のとおりです。

@echo off

set DNS1=8.8.8.8
set DNS2=8.8.4.4
set INTERFACE=Ethernet

netsh int ipv4 set dns name="%INTERFACE%" static %DNS1% primary validate=no
netsh int ipv4 add dns name="%INTERFACE%" %DNS2% index=2

ipconfig /flushdns

pause

これは Google DNS を使用します。コマンドでインターフェイス名を取得できますnetsh int show interface

于 2015-08-07T14:15:00.580 に答える
0

インターフェイスが静的であると仮定して(dhcpを使用していない)、プライマリDNS(インデックス= 1)を変更できるようになりました

DHCP を使用して IP アドレスを取得する場合でも、DNS サーバーを静的に設定できます。

Windows 7 で 2 つの DN サーバーを追加する例は、次のとおりです。コマンドは次のとおりです。

netsh interface ipv4 add dns "Local Area Connection" address=192.168.x.x index=1 netsh interface ipv4 add dns "Local Area Connection" address=192.168.x.x index=2

于 2015-01-12T23:12:56.523 に答える