我在越南,大多数社交网站(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
更多信息。