Debian 11 永久修改 DNS
方法一(推荐)
生成钩子阻止 DHCP 修改 resolv.conf
1. 生成 nodnsupdate 文件并写入代码
cat <<EOF >/etc/dhcp/dhclient-enter-hooks.d/nodnsupdate
#!/bin/sh
make_resolv_conf(){
:
}
EOF
2. 给文件 nodnsupdate 添加可执行权限
chmod +x /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate
3. 修改 DNS
cat <<EOF >/etc/resolv.conf
nameserver 1.1.1.1
nameserver 8.8.8.8
EOF
Cloudflare 的 1.1.1.1 和谷歌的 8.8.8.8 是 国外的优质 DNS
如果是国内的服务器可以换成阿里的 223.5.5.5 和腾讯的 119.29.29.29
4. 重启系统
reboot
5. 查看 DNS
cat /etc/resolv.conf
方法二
编辑 /etc/network/interfaces 文件
追加一行, 如果有多个 DNS 用空格隔开
cat <<EOF >>/etc/network/interfaces
dns-nameservers 1.1.1.1 8.8.8.8
EOF
方法三
1. 编辑 dhclient.conf 文件
vim /etc/dhcp/dhclient.conf
2. 在最后一行添加下面的内容:
supersede domain-name-servers 1.1.1.1, 8.8.8.8;
3. 重启系统
reboot
方法四
写保护锁定 resolv.conf 文件
1. 删除 resolv.conf 文件
rm -f /etc/resolv.conf
2. 创建并编辑 resolv.conf 文件
editor /etc/resolv.conf
3. 填写上指定的 DNS 服务器
nameserver 1.1.1.1
nameserver 1.0.0.1
4. 设置写保护锁定 resolv.conf 文件
chattr +i /etc/resolv.conf
此时 resolv.conf 文件会被锁定, 重启系统后不会被覆盖。
如果想要解锁可以运行:
chattr -i /etc/resolv.conf
腾讯的DNS是119.29.29.29 不是 129.29.29.29
已修正