Debian Linux 解決 DNS 查不到資料 (resolv.conf 為空)

朋友裝一台機器, 很詭異的狀況是, 每次重開機 resolv.conf 都是空的, 所以每次要跑的程式, 就會說網址不存在等等.(不知道怎麼灌的. XD)

所以解法就是要讓 resolv.conf 於開機時, 自動將下述的值寫入: (挑著寫即可, 或者有自己的 DNS Server, 就寫自己的吧~)

# Hinet
nameserver 168.95.1.1
nameserver 168.95.192.1
# OpenDNS
nameserver 208.67.222.222
nameserver 208.67.220.220

resolv.conf 為空的解法

要於開機時, 自動將值寫入, 於是找到 /etc/resolvconf/resolv.conf.d/ 有下述幾個檔案:

  • base - 空檔
  • head
  • original - 空檔
  • tail - 空檔

發現只有 head 是有資料的, 而且跟 resolv.conf 出現的註解都一樣, 所以解法就很簡單:

  1. vim /etc/resolvconf/resolv.conf.d/head # 於檔案最後加入:

    # OpenDNS
    nameserver 208.67.222.222
    nameserver 208.67.220.220

  2. 這樣子就完成囉, 之後開機就正常了.

註: 看其它機器應該是要寫在: /etc/resolvconf/resolv.conf.d/original, 不過加了後, 重開機都沒用, 還是先加在 head 解決.


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-Unix。將永久鏈結加入書籤。

Debian Linux 解決 DNS 查不到資料 (resolv.conf 為空) 有 6 則回應

  1. sshsiung 說道:

    還有個作法 resolve.conf 內都正確之後
    sudo chattr +i /etc/resolv.conf
    這樣連 root 都無法修改 resolv.conf

  2. Tsung 說道:

    呵呵, 真是太暴力了~ 感恩~ Orz..

  3. Willie 說道:

    可考慮加在 /etc/network/interfaces,比如:
    iface eth0 inet manual
    dns-nameservers 168.95.1.1
    /etc/resolvconf/resolv.conf.d/ 底下的檔案不要更動應該比較好...

  4. Tsung 說道:

    soga, 感恩~ Orz..

  5. ÿ 說道:

    很軌異 > 是很"詭"異吧!

  6. Tsung 說道:

    感謝指正, 已修復~ Orz..

發表迴響