「翻译」阻止 DHCP 修改 resolv.conf 文件

栏目: 服务器 · 发布时间: 8年前

内容简介:「翻译」阻止 DHCP 修改 resolv.conf 文件

原文于:https://www.vultr.com/docs/stop-dhcp-from-changing-resolve-conf

前言

最近在 vultr 新建了一个德国的 VPS ,由于我的某些需求,需要使用 VPS 访问某个域名下的资源。但很不幸,每次我尝试去连接这个资源的都是,都是提示域名解析失败诸如此类的错误,经过检查,我发现是 vultr 自带的 DNS 的问题造成的。

在修改这个 DNS 的过程中,我尝试去修改 /etc/resolv.conf 文件,但是每当机器重启, DNS 又会自动变为原来的那个很烂的 DNS ,经过一翻寻找,找到了官方的这篇文章。

正文

对于使用 DHCP 的用户来说,很多时候你需要修改 /etc/resolv.conf 来使用其他的 DNS 服务器。那么,经过了一段时间(或者是经过了机器重启)之后,你会发现你所修改的 /etc/resolv.conf 文件会被恢复为原来的样子。

以下教程讲述了三个阻止 DHCP 修改/etc/resolv.conf文件的方法,适用于 Debian 或者是 Ubuntu。

把接口设置为静态

在一台云 VPS 上,我十分不建议你使用这种方式。 如果使用这种方式,你可能会发现重启的过程(直到你可以通过 SSH 连接)会更加长一些。 首先,我们需要直到我们的 IP 地址,网络掩码以及网关地址。使用下面的命令:

ifconfig | grep "inet addr" | head -n 1 | awk '{print $2, $4}'

译者注:Debian 8 的可能是下面这条命令

ifconfig | grep "inet Adresse" | head -n 1 | awk '{print $2, $4}'

这会显示出服务器的 IP 地址以及网络掩码。让我们来看一看输出

addr:1.2.3.4 Mask:255.255.254.0

译者注:Debian 8 的可能是下面这条输出

Adresse:1.2.3.4 Maske:255.255.254.0

服务器的 IP 地址就是1.2.3.4,子网掩码就是255.255.254.0

运行下面这条命令来获得网关地址。

netstat -rn | grep '^0.0.0.0' | awk '{print $2}'

在这个例子中,我们假定网关地址就是 1.2.3.1

现在我们已经有了IP/子网掩码/网关地址了,修改 /etc/network/interfaces 文件

vim /etc/network/interfaces

作出下面的修改

# Comment out this line
# iface eth0 inet dhcp

# Add these contents
iface eth0 inet static
address 1.2.3.4
mask 255.255.254.0
gateway 1.2.3.1

请记住,你必修将上面的IP等数据改为你服务器实际的数据。

保存并关闭,然后重启 VPS 。

写保护你的 DNS 服务器

通过修改 /etc/resolv.conf 来修改你的 DNS 服务器。一旦你作出了修改,写保护这个文件

chattr +i /etc/resolv.conf

这个+i的选项就是为文件 /etc/resolv.conf 添加了写保护,因此任何人都不可以修改他,甚至是 root 用户也不行!

如果你需要取消写保护,使用下面的命令:

chattr -i /etc/resolv.conf

使用 DHCP 钩子

这是我最推荐使用的方法。

修改 /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate 文件。

vim /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate

作出以下的修改

#!/bin/sh
make_resolv_conf(){
    :
}

保存并退出

给文件 nodnsupdate 添加可执行权限

chmod +x /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate

重启系统,现在你就可以任性地修改 /etc/resolv.conf 文件而且不会担心被回滚了。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Software Design 中文版 01

Software Design 中文版 01

[日] 技术评论社 / 人民邮电出版社 / 2014-3 / 39.00

《Software Design》是日本主流的计算机技术读物,旨在帮助程序员更实时、深入地了解前沿技术,扩大视野,提升技能。内容涵盖多平台软件开发技巧、云技术应用、大数据分析、网络通信技术、深度互联时代下的移动开发、虚拟化、人工智能等最前沿实践性讲解。以人脑思维模式,激发计算机操控的无限可能;以软件开发技巧,挖掘系统与硬件的最大价值。 《Software Design 中文版 01》的主题为......一起来看看 《Software Design 中文版 01》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具