在 Arch Linux 中更改默认 DNS 服务器

在 Arch Linux 中更改默认 DNS 服务器

我在越南,大多数社交网站(Facebook、Twitter 等 - 甚至 reddit)都被 ISP DNS 服务器屏蔽了。

我尝试使用该文件更改 Arch 盒子的 DNS 服务器resolv.conf,但失败了,因为dhcpd每次连接到 LAN 时都会自动生成此文件。我一直在寻找如何修复此问题的方法,但没有成功。要么是我在谷歌搜索时太差劲了,要么这样做并不容易。

编辑1:

嗯,显然把这篇文章发在这里让我感到内疚,我不得不再多搜索一下。我找到了和下面 Ankur 帖子相同的文章。这是我做的,如果有人遇到同样的问题:

$ sudo gvim /etc/dhcpcd.conf 

在文件尾部添加“nohook resolv.conf”。

$ sudo gvim /etc/resolv.conf

添加到文件(OpenDNS 服务器):

nameserver 208.67.222.222
nameserver 208.67.220.220

或者(Google DNS):

nameserver 8.8.8.8
nameserver 8.8.4.4

然后,验证它是否有效(需要包dnsutils):

$ dig www.facebook.com

; <<>> DiG 9.9.1-P1 <<>> www.facebook.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16994
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.facebook.com.      IN  A

;; ANSWER SECTION:
www.facebook.com.   89  IN  A   69.171.224.53

;; Query time: 87 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Thu Jun 28 00:43:23 2012
;; MSG SIZE  rcvd: 61

;; SERVER: 208.67.222.222#53(208.67.222.222),它成功了。

答案1

建筑维基解释:要么使用resolv.conf.head文件,要么写保护/etc/resolv.conf

答案2

/etc/resolv.conf通常不应手动编辑该文件。大多数 Linux 系统使用一个名为的程序,该程序会在您每次连接到 LAN 时resolvconf自动生成(如帖子所述)。相反,您需要编辑文件。/etc/resolv.conf/etc/resolvconf.conf

查看man resolvconf更多信息。

相关内容