![名称解析(主机名)不起作用/Ubuntu 22.04 服务器](https://linux22.com/image/955304/%E5%90%8D%E7%A7%B0%E8%A7%A3%E6%9E%90%EF%BC%88%E4%B8%BB%E6%9C%BA%E5%90%8D%EF%BC%89%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8%2FUbuntu%2022.04%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我无法使用域网络上的服务器主机名进行 ping 或挂载。
服务器几乎是全新安装的,仅使用 apache、mysql、php 作为网络托管。
如果我使用主机名 ping 服务器,则会出现以下错误:
Temporary failure in name resolution
Ping ip 地址有效。
如果我尝试使用主机名挂载服务器:
mount error: could not resolve address for server_name: Unknown error
如果我尝试 ping 服务器的 FQDN,也会出现同样的错误
ping server_name.domain_name.local
Temporary failure in name resolution
在我将符号链接从
resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
到
resolv.conf -> /run/systemd/resolve/resolv.conf
使用
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
在此处回答的帮助下Ubuntu 18.04 .local 域名 DNS 查找不起作用
真正的问题是 Ubuntu 18.04 的 resolv.conf 符号链接到一个存根文件,该文件指向用于名称解析的本地主机。本地主机 DNS 名称解析意味着系统拒绝检查提供的 DNS 服务器中的 .local 名称,并(错误地)认为此类名称无效。
我现在可以 ping FQDN,但正在 ping主机名仍然不起作用。
我现在可以看到系统正在使用正确的 DNS 服务器(而不是默认的本地主机 ip):
resolvectl status
Global
Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
resolv.conf mode: uplink
Link 2 (eth0)
Current Scopes: DNS
Protocols: +DefaultRoute +LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
Current DNS Server: ip_of_my_dns_server_on_lan
DNS Servers: ip_of_my_dns_server_on_lan
要做什么才能 ping 通主机名?(并使用主机名等挂载)