在Raspbian上使用DHCP的静态DNS


9

是否可以通过DHCP获取IP地址,但强制使用DNS服务器而不使用DHCP中IP地址

我应该可以使用静态IP地址来执行此操作,但是我想知道如何通过DHCP获取IP地址。我以为更改/etc/resolv.conf将是永久性的,但在重新启动后将其取消。


1
该文件不应包含一行»请勿手动编辑此文件-您的更改将被覆盖«?
FUZxxl 2013年

1
不在阿拉伯语中……
Albert Vonpupp

Debian也没有现货-吸取了我的教训。
Sirens

Answers:


9

唯一对我有用的是:

编辑/etc/dhcp/dhclient.conf并取消注释该行:

prepend domain-name-servers 208.67.222.222;

无论如何,感谢您的帮助!


4

dns-nameservers(以及/ etc / network / interfaces中的所有其他dns-xxx指令)在raspbian中无法使用,因为默认情况下未安装resolvconf。

sudo apt-get install resolvconf解决了该问题。


2

我按照cuonglm在Unix&Linux Stack Exchange上的回答中的步骤进行了修复

编辑文件/etc/dhcp/dhclient.conf并添加

supersede domain-name-servers 8.8.8.8, 8.8.4.4;

然后重新启动网络或运行dhclient进行更改。

来自man dhclient.conf

取代声明

   supersede [ option declaration ];

   If for some option the client should always  use  a  locally-configured
   value  or  values rather than whatever is supplied by the server, these
   values can be defined in the supersede statement.

Raspbian版本?
Fabian

1

您可以在中用一行定义它们/etc/network/interfaces

在您的界面下方,添加以下行,将x替换为DNS服务器的实际IP:

dns-nameservers xxx.xxx.xxx.xxx


感谢您的回答。它对我不起作用,它不断从DHCP获取DNS服务器。我在/ etc / network / interfaces文件中使用的是第二名。
艾伯特·冯普普

这是一个喘不过气来的答案。不适用于Jessie
Ray Foss

-1

这是一个古老的威胁,但是对于当前的Raspbian / Debian,您必须在/etc/dhcpcd.conf的末尾添加:

static domain_name_servers=1.1.1.1 8.8.4.4

1
为什么在2020年仍然使用Jessie?
德米特里·格里哥列耶夫

抱歉,我的答案实际上是针对当前的Rapsbian(Buster)!请删除您downvote ...
SimpleRezo -克莱门特红磨坊

抱歉,我没有投票,也没有办法告诉谁。
德米特里·格里戈里耶夫
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.