我喜欢 Ubuntu 的 NetworkManager——它能很好地记录我的所有 WiFi 参数和密码。然而,当我真正插入以太网电缆时,挫败感就开始了。
当连接到我的工作局域网时,我想强制使用特定的域搜索路径。但我不能直接编辑 resolv.conf,因为 NetworkManager 总是会覆盖它。而且我无法更改 DHCP 服务器上的设置。
作为一个彻底的黑客,我设置了一个脚本,让它在网络启动时运行。它会查看 resolv.conf,如果是来自工作局域网的 resolv.conf,它会覆盖它。但是,这效果不够好——似乎 resolv.conf 会定期被一些不会触发我的脚本的东西覆盖。
有没有更简单的方法来实现这一点?或者,如果真的有效,还有更简单的方法?
答案1
假设你正在使用 Ubuntu 和一个名为“有线连接”的连接
编辑/etc/NetworkManager/system-connections/Wired connection
并添加以下内容:
[ipv4]
method=auto
dns-search=a1.domain.com;a2.domain.com;a3.domain.com;
答案2
我认为您可以在网络管理器中正确设置“搜索域”。
- 右键单击 nm-applet
- 选择编辑连接
- 点击自动 eth0并选择编辑
- 点击ipv4 设置选项卡,并填写搜索域线(可能必须选择仅限自动 (DHCP) 地址(从下拉列表中选择。)
希望有所帮助。
答案3
如果你在 dhclient.conf 中添加了适当的参数,那么在重写 resolv.conf 时,这些参数将被放入其中
supersede domain-name "mydomain.com"
可能就是您要找的。查看 dhclient 的手册页或在线文档以了解更多详细信息。
答案4
https://www.netroby.com/view/3630#.U2mTfHVdUc0 https://unix.stackexchange.com/questions/128220/how-do-i-set-my-dns-when-resolv-conf-is-being-overwritten
您可以在配置中 DNS 服务器之前写入 nameserver,名称服务器为 nameserver xxxx