Mar*_*ied 14 network-manager dns resolv.conf 12.04
我有时会使用任务栏中的 NetworkManager 指示器切换 DNS 服务器;这适用于以前的版本,实际上也适用于 12.04,除了一件事:我使用 Conky 显示一些系统信息,包括 DNS 地址,我注意到它现在总是显示127.0.0.1
.
我查看了resolv.conf
,这是它获取此地址的地方,果然,它总是这么说。我有一行,警告不要手动编辑文件:
nameserver 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
我现在知道检查 DNS 服务器地址的唯一方法是打开网络管理器 GUI 来检查信息页面。那么,这些信息现在存储在哪里?
Jam*_*dge 17
该信息由网络管理器内部管理。您可以使用随附的nmcli
工具在命令行上获取此信息。
您可以使用以下命令检索特定网络接口的网络管理器信息:
nmcli dev list iface eth0
Run Code Online (Sandbox Code Playgroud)
(替换eth0
为您正在连接的接口)。输出将包括有关接口和该接口上当前活动连接的信息:
GENERAL.DEVICE: eth0
GENERAL.TYPE: 802-3-ethernet
...
IP4.DNS[1]: 192.168.0.1
...
Run Code Online (Sandbox Code Playgroud)
从这个输出中提取您想要的信息应该不会太难。
如果您需要一种不依赖于 输出的编程方法来访问此数据,则nmcli
此信息也应可从网络管理器的 D-Bus 界面获得。
cmc*_*nty 10
Ubuntu 开发人员应该在 中记录这些更改/etc/resolv.conf
,但没有。
这是一个快速命令列表,可让您继续前进。
显示当前的 DNS 服务器
nm-tool | grep DNS
Run Code Online (Sandbox Code Playgroud)在/etc/dhcp/dhclient.conf
. 添加以下行,并重新启动本地解析器:
supersede domain-search "sub.mydomain.com", "domain.com";
prepend domain-name-servers 192.168.0.1;
Run Code Online (Sandbox Code Playgroud)
从命令提示符:
invoke-rc.d network-manager restart
Run Code Online (Sandbox Code Playgroud) 归档时间: |
|
查看次数: |
18761 次 |
最近记录: |