关于云服务器VPS修改DNS重启后无效的情况以及锁定DNS办法
最近因为对阿里和腾讯的机子折腾,在数次无法安装宝塔的情况下,发现IDC自带的NameServer并不能很好的解析正确的IP,尤其对于需要调用Github和JSDelivr文件的情况下。因为DNS解析导致机子都没办法DD成功。
在修改了NS服务器后,发现Nameserver又会被改回,相当麻烦。
例:
阿里云的NS会默认变回内网IP:
nameserver 100.100.2.136
nameserver 100.100.2.138
腾讯云的NS会默认变回
nameserver 183.60.83.19nameserver 183.60.82.98
原因是Linux系统使用NetworkManager服务进程来更新IP,DNS,网关等信息,每次重启后会重新刷新网络文件,所以单纯修改NS文件重启后就又复原了。
简单的处理方法:
首先SSH进入命令模式,输入
vi /etc/resolv.conf进入修改界面,修改NS为公众DNS(通过鼠标方向键,insert,delete等命令修改):

完成后,点键盘的 Esc 退出键,然后英文字符输入 :wq ,Enter确认即可。
觉得VI编辑麻烦,可以试下输入命令行刷写:
cat <<EOF >/etc/resolv.conf
nameserver 1.1.1.1
nameserver 8.8.8.8
EOF
修改后在SSH里面输入命令修改权限锁死这个文件:
chattr +i /etc/resolv.conf
此时 resolv.conf 文件会被锁定, 重启系统后不会被覆盖。
如果想要解锁可以运行:
chattr -i /etc/resolv.conf
或者编辑修改网卡配置文件:
/etc/network/interfaces
国内优先使用信风,腾讯和阿里云的公共DNS:
114.114.114.114
119.29.29.29
223.5.5.5
境外推荐CloudFlare,谷歌,AOL:
1.1.1.1
8.8.8.8
4.2.2.2
修改后重启一次VPS,再检查一下DNS,确实没有被还原。
当然也有的服务器/VPS内置DNS是有用的,比如搬瓦工的DNS,通过内网的方式解锁ChatGPT,改其它NS就没解锁作用了。
发表评论