Dan*_*Dan 2 samba networking dns 16.04 18.04
所以我有一个运行 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 updatesystemd-resolve
这是一个在 vSphere 6.0 上运行的虚拟机,它是桥接网络。升级后 Netplan 文件夹为空(我刚刚记得应该设置)旧的网络详细信息/etc/network/interfaces设置为;
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens160
iface ens160 inet static
address 192.168.2.23
netmask 255.255.255.0
gateway 192.168.2.254
dns-nameservers 192.168.2.23
dns-search MYDOMAINNAME.co.uk
Run Code Online (Sandbox Code Playgroud)
resolv.conf我可以手动将(删除符号链接后)设置为以下内容并且它可以工作
nameserver 192.168.2.23
nameserver 127.0.0.53
search MYDOMAIN.co.uk
DNSStubListener=no
Run Code Online (Sandbox Code Playgroud)
重新启用 systemd-resolve。
两种可能性...
dnsmasq和systemd-resolved...执行ps auxc | grep -i dnsandps auxc | grep -i resolv并查找dnsmasq和,如果两者都在运行,您需要通过编辑和systemd-resolved禁用 DNS 部分...systemd-resolved/etc/systemd/resolved.conf
改变:
#DNSStubListener=yes
Run Code Online (Sandbox Code Playgroud)
到:
DNSStubListener=no
Run Code Online (Sandbox Code Playgroud)
然后重新启动 systemd-resolve 和 dnsmasq,或者重新启动。
sudo mv /etc/resolv.conf /etc/resolv.conf.OLD# 保存旧的符号链接
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf# 创建新的符号链接
更新#1:
评论中提出了此安装的许多细节,但我们仍然没有最终的工作解决方案。以下是一些需要识别的要点...
DNSStubListener=no不属于/etc/resolv.conf. (/etc/resolv.conf(通常)不应直接编辑)。这是对 的编辑/etc/systemd/resolved.conf。DNS=也可以在那里进行编辑以添加 DNS 服务器地址。
/etc/resolv.conf应该是一个符号链接,链接到 /run 中两个可能的位置之一。
NEW -> /run/systemd/resolve/resolv.conf
OLD -> ../run/resolvconf/resolv.conf
Run Code Online (Sandbox Code Playgroud)
并且应该包含 127.0.0.53 (如果 dnsmasq 正在运行,则为 127.0.0.1),或 DNS 名称服务器地址,或您的路由器地址(例如: 192.168.1.1)
如果您要使用 NetworkManager 而不是 netplan,那么/etc/netplan应该至少包含一个 .yaml 文件,其中包含...
network:
version: 2
renderer: NetworkManager
Run Code Online (Sandbox Code Playgroud)
其次是...
sudo netplan generate# 生成配置文件
sudo netplan apply# 应用配置
如果您使用 NetworkManager,那么/etc/NetworkManager/NetworkManager.conf应该存在...并且应该看起来像...
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false
[device]
wifi.scan-rand-mac-address=no
Run Code Online (Sandbox Code Playgroud)
如果dnsmasqANDsystemd-resolve正在运行,那么你应该在我的答案中执行#1。
如果dnsmasq没有运行,并且systemd-resolve正在运行,那么你应该执行我的答案中的#2。
| 归档时间: |
|
| 查看次数: |
4532 次 |
| 最近记录: |