当 openFortiVPN 处于活动状态时,如何让 systemd-resolved 使用 /etc/hosts

当 openFortiVPN 处于活动状态时,如何让 systemd-resolved 使用 /etc/hosts

Ubuntu 18.04。我在 /etc/hosts 中有一个主机条目,当我使用时,该条目可以正确解析nslookup。我的 /etc/nsswitch.conf 看起来像

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat systemd
group:          compat systemd
shadow:         compat
gshadow:        files

hosts:          files [SUCCESS=return] mdns4_minimal [NOTFOUND=return] dns myhostname
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

/etc/resolv.conf 看起来像

# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "systemd-resolve --status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 127.0.0.53
options edns0

当我开始连接到 VPN 时,它会变为

nameserver 172.16.1.46
nameserver 172.16.1.47
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "systemd-resolve --status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs must not access this file directly, but only through the
# symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way,
# replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

options edns0

不幸的是,这些名称服务器对我输入的主机条目有不同的值/etc/hosts,并且解析不再使用该条目/etc/hosts。这肯定与 VPN 有关,因为当我拆除 VPN 时,它再次解析为/etc/hosts

我想做的是以某种方式强制/etc/hosts成为第一个解决条目的地方,但我还没有找到这样做的方法。

相关内容