近期在修改一臺centos服務器的DNS時發現只要重啟服務器DNS就會被強制還原,解決方案如下:
1、首先在網卡設置中修改NM_CONTROLLED的值:
修改文件/etc/sysconfig/network-scripts/ifcfg-eth0的內容:
NM_CONTROLLED="no" //是否允許Network Manager管理,設置為no
默認允許Network Manager管理DNS,所以首先設置為no,然后操作DNS設置
2、設置DNS內容:
修改DNS可以有如下兩種方案:
①、修改網卡設置:
在/etc/sysconfig/network-scripts/ifcfg-eth0中修改內容:
PEERDNS="yes"
DNS1="xxx.xxx.xxx.xxx"
DNS2="xxx.xxx.xxx.xxx"
這種設置方案是以網卡中設置的DNS為主,resolv.conf中按照網卡設置的DNS內容自動生成,以后想修改DNS,必須修改網卡中的設置才不會在服務器重啟之后出現DNS設置失效的問題。
②、直接修改/etc/resolv.conf的值:
PS.需要注意的是,若要使直接修改的DNS內容不會在服務器重啟之后丟失,需要設置網卡中PEERDNS的值為no:
nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx
3、修改完畢之后重啟網卡:
service network restart
按照上面任意一種方案修改DNS設置之后都不會出現重啟服務器DNS設置復原的情況。