/etc/NetworkManager/system-connections/
我有一个配置了以下 ipv4 配置的 VPN(我用假域名替换了真实域名)
[ipv4]
dns=19.0.0.1;19.0.0.2;19.0.0.3;
dns-search=domain1.fr;domain2.fr;domain3.com;
ignore-auto-dns=true
method=auto
dns 配置似乎没问题,因为我能够访问内部网站,所以我猜它们的名称是由 dns 正确解析的。
但是如果我想使用 ssh 连接到服务器
ssh user@server1
那么它就无法找到没有 FQN 的主机,例如
似乎没有考虑 dns-search 选项,而从文档nm-settings
看来我做得很好
├───────────────────┼──────────────────┼───────────────┼────────────────────────┤
│ignore-auto-dns │ boolean │ FALSE │ When "method" is set │
│ │ │ │ to "auto" and this │
│ │ │ │ property to TRUE, │
│ │ │ │ automatically │
│ │ │ │ configured nameservers │
│ │ │ │ and search domains are │
│ │ │ │ ignored and only │
│ │ │ │ nameservers and search │
│ │ │ │ domains specified in │
│ │ │ │ the "dns" and │
│ │ │ │ "dns-search" │
│ │ │ │ properties, if any, │
│ │ │ │ are used. │
├───────────────────┼──────────────────┼───────────────┼────────────────────────┤
请注意,在 GNOME 下,此 dns-search 选项无法通过 UI 界面使用,我不明白为什么。
答案1
我的 VPN 也有同样的问题。这对我有用:
- 改变DNS 搜索在 /etc/NetworkManager/system-connections/ 中
- 重新启动网络管理器。
systemctl restart NetworkManager.service
- 激活VPN
systemd-resolve --status
我假设配置文件是在 NetworkManager 服务启动时加载的,而不是在您启动 VPN 连接时加载的。