centos 修改resolv.conf後重啓系統恢復原狀
2012-10-11 17:46:01| 分類: Linux | 標籤: |舉報 |字號大中小 訂閱
最近配置bind時,修改/etc/resolv.conf後,dns解析是服務器ip,但下次啓動電腦時dns的ip變成外網dns.覺得奇怪上網搜索資料發現原因:
CentOS 5.4以上版本(我用的是centos 6.2)下面直接修改/etc/resolv.conf不行。必須要在/etc /sysconfig/network-scripts/ifcfg-eth0裏面最後加上dns的設置。要不然,重啓後,肯定使用eth0設置中沒有設 dns的相關信息,使/etc/resolv.conf恢復到原來的狀態。
打開/etc/sysconfig/network-scripts/ifcfg-eth0,爲了保險起見,可以同樣修改eth1的設置
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:xx:19:xx:xx:xx
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
NETMASK=255.255.255.0
IPADDR=xxx.xxx.xxx.xxx //你的ip地址
GATEWAY=xxx.xxx.xxx.xxx //網關
DNS1=202.96.134.133 // dns我設的本機ip192.168.128.138
DNS2=202.96.128.166
這樣設置後,/etc/resolv.conf裏面根本就不需要設置。service network restart 後,可以發現/etc/resolv.conf裏面就有兩個dns的解析ip了。配置好以後重啓網絡,cat /etc/resolv.conf,可以看到如下參數:
# Generated by NetworkManager
nameserver 202.96.134.133
nameserver 2202.96.128.166
search localdomain
DNS解析設置成功。
在此要強調一點的是,直接修改/etc/resolv.conf這個文件是沒用的,網絡服務重啓以後會根據/etc/sysconfig /network-scripts/ifcfg-eth0來重載配置,如果ifcfg-eth0沒有配置DNS,那麼resolv.conf會被沖掉,重 新變成空值。