快速更改系统DNS脚本

 DNS 设置脚本合集,包括:

  • ✅ Linux Bash 脚本:设置为你自建的 DNS

  • ✅ Windows PowerShell 脚本:适配所有网卡

  • ✅ Windows .bat 批处理脚本:简单设置首个以太网适配器的 DNS

你只需要将下面的 YOUR_DNS_IP 替换为你的 DNS IP(如:127.0.0.1192.168.1.10、或公网 IP)。


✅ 1. Linux 脚本(set-dns.sh

#!/bin/bash

# DNS 地址
YOUR_DNS_IP="127.0.0.1"

# 写入 resolv.conf(适用于大多数发行版)
echo "nameserver $YOUR_DNS_IP" | sudo tee /etc/resolv.conf > /dev/null

echo "✅ 已将 DNS 设置为 $YOUR_DNS_IP"
cat /etc/resolv.conf

✅ 2. Windows PowerShell 脚本(set-dns.ps1

# 设置所有适配器的 DNS 服务器
$dnsServer = "127.0.0.1"

Get-NetAdapter | ForEach-Object {
    Set-DnsClientServerAddress -InterfaceAlias $_.Name -ServerAddresses $dnsServer
}

Write-Host "✅ 已将 DNS 设置为 $dnsServer"

✅ 3. Windows 批处理脚本(set-dns.bat

@echo off
set DNS_IP=127.0.0.1

REM 获取第一个以太网适配器名称
for /f "tokens=3 delims=:" %%a in ('netsh interface show interface ^| findstr /i "Connected Ethernet"') do set NIC=%%a

REM 删除前后的空格
for /f "tokens=* delims= " %%b in ("%NIC%") do set NIC=%%b

echo 设置接口 [%NIC%] 的 DNS 为 %DNS_IP%
netsh interface ip set dns name="%NIC%" static %DNS_IP%

echo ✅ DNS 设置完成。
pause

💡 使用说明

文件名 用法示例
set-dns.sh chmod +x set-dns.sh && ./set-dns.sh
set-dns.ps1 右键管理员方式运行或 powershell -File ...
set-dns.bat 双击运行(以管理员身份)

 

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享