자주 DNS 서버 주소를 변경해야합니다. 지금은 '네트워크 및 공유 센터'- '로컬 영역 연결'- 등록 정보 - ipv4를 열고 DNS 번호를 입력하면됩니다.
그것을하는 더 빠른 방법이 있습니까? 배치 파일이나 powershell 스크립트로 할 수 있습니까? DNS를 변경하는 콘솔 명령이 내장되어 있습니까?
자주 DNS 서버 주소를 변경해야합니다. 지금은 '네트워크 및 공유 센터'- '로컬 영역 연결'- 등록 정보 - ipv4를 열고 DNS 번호를 입력하면됩니다.
그것을하는 더 빠른 방법이 있습니까? 배치 파일이나 powershell 스크립트로 할 수 있습니까? DNS를 변경하는 콘솔 명령이 내장되어 있습니까?
답변:
기본 DNS 값 :
netsh interface ipv4 set dns "Local Area Connection" static 192.168.0.2
보조 값 :
netsh interface ipv4 add dns "Local Area Connection" 192.168.0.3 index=2
어떤 연결이 올바른지 잘 작동합니다. 이름이 "로컬 영역 연결"이 아니면 작동하지 않습니다. XP를 사용하는 경우 "ipv4"를 "ip"로 변경해야합니다. IPv6도 사용할 수 있습니다.
서브넷 마스크, IP 주소 및 게이트웨이 설정 :
netsh interface ipv4 set address name="Local Area Connection" source=static addr=192.168.1.10 mask=255.255.255.0 gateway=192.168.0.1
네트워크 연결을 찾으려면 cmd 행에서 ipconfig를 사용할 수 있습니다. 그러나 단축 ipconfig 결과에 대해 다음을 사용할 수도 있습니다.
ipconfig | find /I "Ethernet adapter"
위의 ipconfig cmd를 사용하여 연결을 반복 할 수 있습니다 ( 소스 코드 ) dns 서버를 설정합니다.
:: Set primary and alternate DNS for IPv4 on Windows Server 2000/2003/2008 &
:: Windows XP/Vista/7
@ECHO OFF
SETLOCAL EnableDelayedExpansion
SET adapterName=
FOR /F "tokens=* delims=:" %%a IN ('IPCONFIG ^| FIND /I "ETHERNET ADAPTER"') DO (
SET adapterName=%%a
REM Removes "Ethernet adapter" from the front of the adapter name
SET adapterName=!adapterName:~17!
REM Removes the colon from the end of the adapter name
SET adapterName=!adapterName:~0,-1!
netsh interface ipv4 set dns name="!adapterName!" static 192.168.0.2 primary
netsh interface ipv4 add dns name="!adapterName!" 192.168.0.3 index=2
)
ipconfig /flushdns
:EOF
또한 DHCP 서버에서 제공하는 DNS 주소를 사용하려면 다음을 수행하십시오.
netsh interface ipv4 set dns "Local Area Connection" dhcp
를 사용하여 Powershell Windows 8 또는 2012의 스크립트를 사용하는 경우 다음과 같은 값을 설정할 수 있습니다.
Set-DnsClientServerAddress -InterfaceAlias Wi-Fi -ServerAddresses "1.1.1.1","2.2.2.2"
어디에 와이파이 관심있는 인터페이스의 이름입니다. 다음을 실행하여 인터페이스를 나열 할 수 있습니다.
Get-NetAdapter
DNS 주소를 재설정하려면 DHCP를 사용하십시오.
Set-DnsClientServerAddress -InterfaceAlias wi-fi -ResetServerAddresses
이동 이 페이지 전체 설명을 볼 수 있습니다.
여기에 사용 된 자필은 Windows 7과 같은 이전 버전에서는 사용할 수 없습니다.
Logman의 WinXP 버전 (sp3 히브리어)에 수정 사항 추가 결국 2 문자를 제거해야하므로 다른 이상한 경우에는 "글로벌"수정이 추가 된 것처럼 보입니다.
:: Set primary and alternate DNS for IPv4 on Windows Server 2000/2003/2008 & Windows XP/Vista/7
@ECHO OFF
SETLOCAL EnableDelayedExpansion
SET adapterName=
FOR /F "tokens=* delims=:" %%a IN ('IPCONFIG ^| FIND /I "ETHERNET ADAPTER"') DO (
SET adapterName=%%a
REM Removes "Ethernet adapter" from the front of the adapter name
SET adapterName=!adapterName:~17!
REM WinXP Remove some weird trailing chars (don't know what they are)
FOR /l %%a IN (1,1,255) DO IF NOT "!adapterName:~-1!"==":" SET adapterName=!adapterName:~0,-1!
REM Removes the colon from the end of the adapter name
SET adapterName=!adapterName:~0,-1!
echo !adapterName!
GOTO:EOF
netsh interface ip set dns name="!adapterName!" static x.x.x.x primary
netsh interface ip add dns name="!adapterName!" x.x.x.x index=2
)
여기에 새 친구가 있습니다. QuickSetDNS NirSoft에 의해 평소처럼 놀랍습니다.
그것은 또한 명령 줄에서 사용할 수 있습니다 :) netsh 이상의 이러한 장점 :
몇 가지주의 사항 :
이 대답은 XP1에서 복사됩니다. 이리 . XP1이 답변을 게시하고 싶다면 그렇게 해주시면 답변을 삭제하겠습니다.
다음은 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")