我在 Ubuntu 18.04 上使用 Raspberry Pi 3。在我的公司,我们有一个 DNS 服务器和几个带有“.local”的域。我知道从技术上讲这是不正确的,它应该是“.lan”,因为 .local 是为多播 dns 保留的。但这就是它的方式,它不能轻易改变。所以在我的 Windows 机器上,我可以毫无问题地 ping 和浏览这些域名。但是在我的 Ubuntu 上我不能。
我无法使用 IP,因为某些域在同一台机器上,而 IIS 网络服务器会整理出哪些内容会发生在何处。
我已经搜索过并且经常出现:
但是,更改 /etc/nsswitch.conf 对我不起作用。我试过
没有一个工作。我也尝试在更改后重新启动。我试图告诉avahi /etc/avahi/avahi-daemon.conf 中的域名=alocal,服务重启后不起作用,重启后不起作用。在这不起作用之后,我尝试完全禁用 avahi-daemon 服务。
sudo systemctl disable avahi-daemon
Run Code Online (Sandbox Code Playgroud)
重新启动后,我再次在 /etc/nsswitch.conf 中尝试了几个排列,但没有效果。
使用我当前在主机(文件 dns)中的设置,我得到以下响应:
dig login.name.local # …
Run Code Online (Sandbox Code Playgroud) 升级到 17.04 后,我无法再解析本地网络 (silvesternet.local) 中的地址。我收到以下回复:
$ systemd-resolve edgerouter
edgerouter: resolve call failed: No appropriate name servers or networks for name found
Run Code Online (Sandbox Code Playgroud)
在日志中,只有与此查找相关的事务超时报告。
我使用 Wireshark 来嗅探网络流量,它似乎甚至没有尝试查找名称。没有任何 dns 流量。查找另一个外部域工作正常。
围绕同一主题的许多问题都提到更改 nsswitch.conf,但这似乎并没有解决任何问题。我目前的设置是:
hosts: files mdns4_minimal dns [NOTFOUND=return] resolve [!UNAVAIL=return] mdns4
Run Code Online (Sandbox Code Playgroud) 我很困惑nslookup总是从服务器 127.0.0.1得到结果
是不是因为 Ubuntu 使用了dnsmasq的本地 DNS 缓存?但是我已经关闭并刷新了我的dns缓存,然后nslookup一个我从未访问过的主机,然后输出仍然是127.0.0.1。
这让我很困惑。谁能为我解释一下?顺便说一下,我的 DNS 服务器设置为 8.8.8.8。
以前,在 Ubuntu 16.04 上,当 Ubuntu 更新安装dnsmasq
包、配置它并使其优先于我自己的超稳定、超快和自己配置的 BIND DNS 服务器时,我感到被出卖了。感觉就像 Ubuntu 入侵了我的工作站。
由于我碰巧是系统管理员,这是非常不可接受的。这是一个吓人的电话。这是当您解决问题并在您使用的步骤之一中时,dig
或者nslookup
当您看到lo
界面回复您时感到震惊。恐慌
有没有办法不仅可以解决这个问题,还可以保证/etc/resolv.conf
防篡改?
我已经决定 systemd-resolved 是无法挽回的损坏垃圾,我想更换。我有自己的本地 DNS 服务器,地址为 192.168.1.2 我想要。我最好也像连接到瘦客户端(NetExtender)与一个VPN,让我一个.local域的DNS服务器。我想让这两件事一起工作,我该怎么办?
我有一台 Odroid C2 - 一台运行 ARM 最低版本 18.04 的单板计算机。最初,它使用 NetworkManager + systemd-resolved 来管理网络连接,但由于我只使用以太网并且始终连接到同一个网络,我发现它有点矫枉过正,所以我禁用了它们并转移到 Netplan。这是我的 /etc/netplan/02-networkd.yaml:
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: yes
Run Code Online (Sandbox Code Playgroud)
如您所见,这是一个简单的 DHCP 配置。这是使用该配置的结果:
# netplan ip leases eth0
ADDRESS=10.0.0.4
NETMASK=255.255.255.0
ROUTER=10.0.0.1
SERVER_ADDRESS=10.0.0.1
T1=7200
T2=12600
LIFETIME=14400
DNS=10.0.0.1
NTP=10.0.0.1
DOMAINNAME=vault
CLIENTID=fff75f76ac00020000ab11a7b5e398b7e20ac7
Run Code Online (Sandbox Code Playgroud)
IP 地址和所有接口参数设置正确。我遇到的唯一问题是 DNS。我发现 netplan 不会更新,/etc/resolve.conf
即使它在租赁中包含所有强制性信息。
有没有办法让 Netplane/etc/resolve.conf
使用从 DHCP 接收到的 DNS 信息进行更新/配置,而无需使用 NetworkManager 或解决?以下是一些附加信息:
# ls -lA /etc/resolv.conf
-rw-r--r-- 1 root root 20 Apr 21 00:13 /etc/resolv.conf
# cat /etc/resolv.conf
nameserver 10.0.0.1
search vault
Run Code Online (Sandbox Code Playgroud) 我将我的 Ubuntu 17.04 升级到 17.10。升级后 Wifi 停止工作。我正在使用联想 ThinkPad E450 笔记本电脑。分享网络信息https://cloud.acrobat.com/file/274e230c-0e29-4f22-9c68-0eb76e089717
登录窗口是否有任何原因会停止工作并开始循环?我正在运行 18.04。我通常 RDP 进入 ubuntu 框,但现在不起作用。使用键盘和鼠标,我可以在显示器上看到我的用户名。我输入我的密码。然后屏幕变黑了几秒钟......然后我回到了我的用户名所在的登录屏幕。我没有进入我的桌面!
除了以下内容,我没有弄乱机器,但是,我不确定为什么这些会影响登录屏幕。
但是这些都没有与登录管理器混淆。有谁知道会发生什么?有趣的是,除了使用 ssl(plex 和 cockpit)的任何容器外,几乎所有的 docker 容器(portainer、heimdall、tatulli、sonarr、radar、pihole)都可以工作。我猜测防火墙以某种方式阻止了端口 443,但我不确定为什么这会阻止我使用键盘和鼠标登录到盒子......
非常感谢任何帮助/见解!
EDIT1:我尝试通过创建另一个用户
sudo useradd -d /home/testuser testuser
sudo passwd testuser
Run Code Online (Sandbox Code Playgroud)
但登录管理器仍然让我循环
EDIT2:我通过以下方式禁用了防火墙
sudo ufw disable
Run Code Online (Sandbox Code Playgroud)
我扭转了 system-resolved.service 的工作,但仍然没有运气:(
我今天下午/晚上将我的笔记本电脑升级到新的 Ubuntu 发行版 17.10,从那时起我无法连接到互联网。
我尝试过有线和无线连接,但无论我尝试过哪种方法,状态栏中的图标都会在连接图标上显示一个问号。我最初认为这是一个无线问题(它是一个 Realtek RTL8833EE 卡)所以尝试通过以太网连接以下载最新的驱动程序,但发现我也无法连接线。
上周我在 17.04 上遇到了类似的问题,我以某种方式解决了这个问题,但我找不到我做了什么。
请我就我应该尝试解决的问题提出一些建议。
编辑:我在这里尝试过这个问题(和答案):
都通过添加一行
[main]
dns=dnsmasq
Run Code Online (Sandbox Code Playgroud)
在 /etc/NetworkManager/NetworkManager.conf 下,并通过检查 resolvconf.service
$ systemctl status resolvconf
Run Code Online (Sandbox Code Playgroud)
这没有显示类似的错误
resolvconf[623]: /etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf
Run Code Online (Sandbox Code Playgroud)
我已经确认 /etc/resolv.conf 是 /run/resolvconf/resolv.conf 的符号链接
所以我有一个运行 samba ad dc 的 Ubuntu 16.04 实例,我升级到 18.04,启动 samba 时出现错误;
[2018/12/27 11:09:56.483755, 0] ../source4/dsdb/dns/dns_update.c:290(dnsupdate_nameupdate_done)
../source4/dsdb/dns/dns_update.c:290: DNS 更新失败 -错误代码 110
经过一番挖掘和运行后sudo lsof -i :53
我可以看到
systemd-r 767 systemd-resolve 12u IPv4 18656 0t0 UDP 127.0.0.53:domain
systemd-r 767 systemd-resolve 13u IPv4 18657 0t0 TCP 127.0.0.53:domain (LISTEN)
samba 1594 root 36u IPv6 23058 0t0 TCP *:domain (LISTEN)
samba 1594 root 38u IPv6 23059 0t0 UDP *:domain
Run Code Online (Sandbox Code Playgroud)
这导致我禁用这里的systemd-resolve
说明,这解决了我在网络中的所有问题(其他域计算机无法等),但我磨损是禁用安全的吗?apt-get update
systemd-resolve
这是一个在 vSphere 6.0 上运行的虚拟机,它是桥接网络。升级后 Netplan 文件夹为空(我刚刚记得应该设置)旧的网络详细信息/etc/network/interfaces
设置为; …