我刚刚将我的 Ubuntu 22.04 升级到 23.10,然后升级到 24.04。
他们停止解析 DNS 查询。
他们正在使用 systemd-resolved 和 resolvconf。
我刚刚将我的 Ubuntu 22.04 升级到 23.10,然后升级到 24.04。
他们停止解析 DNS 查询。
他们正在使用 systemd-resolved 和 resolvconf。
我有兴趣让我的 Bind9 服务器 DOH 做好准备并阅读任何配置示例。然后我读到:bind9 DOH 被设计为仅在客户端和本地bind9 服务器之间工作,而不是在本地bind9 和配置的转发器之间工作。那是对的吗?
我有一个运行 svn、duplicati、rdp 转发和 ssh 访问的 ubuntu 服务器(Ubuntu 22.04 LTS)。我的问题是我无法解析我们网络内外的主机名。
sudo apt update
无法与启用的 ufw 一起使用。当我禁用 ufw 时,可以下载更新。我允许 ufw 中的端口 53(udp 和 tcp):
Status: active
To Action From
-- ------ ----
22 ALLOW 10.7.3.0/24
80 ALLOW Anywhere
443 ALLOW Anywhere
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
4343/udp ALLOW 10.7.3.0/24
8200/tcp ALLOW 10.7.3.0/24
3389/tcp ALLOW Anywhere
3389/udp ALLOW Anywhere
53/tcp ALLOW 193.175.120.18
53/udp ALLOW 193.175.120.18
53/udp ALLOW 193.175.120.17
53/tcp ALLOW 193.175.120.17
10.7.3.0/24 22 ALLOW OUT Anywhere
10.7.3.0/24 3389 ALLOW OUT Anywhere
53/tcp ALLOW OUT Anywhere
53/udp ALLOW OUT Anywhere
通过IP表我实现了端口转发:
*nat
:PREROUTING ACCEPT [0:0]
#forward rdp to cbs-rechner
-A PREROUTING -i eno1 -p tcp --dport 3389 -j DNAT --to-destination 10.7.3.23:3389
-A PREROUTING -i eno1 -p udp --dport 3389 -j DNAT --to-destination 10.7.3.23:3389
#setup routing
-A FORWARD -p tcp --dport 3389 -j ACCEPT
-A FORWARD -p udp --dport 3389 -j ACCEPT
COMMIT
这是我放在*filter
-section之前的内容
的输出
time dig 193.175.120.17
是
;; communications error to 127.0.0.53#53: timed out
;; communications error to 127.0.0.53#53: timed out
;; communications error to 127.0.0.53#53: timed out
; <<>> DiG 9.18.18-0ubuntu0.22.04.1-Ubuntu <<>> 193.175.120.17
;; global options: +cmd
;; no servers could be reached
real 0m15,032s
user 0m0,006s
sys 0m0,007s
当我执行时 sudo apt update
,我在 /var/log/syslog 中有条目:
Dec 12 09:24:26 rt-mw-svn-server kernel: [ 2921.895959] [UFW BLOCK] IN=eno1 OUT= MAC=98:90:96:c0:09:da:00:10:f3:92:d7:f7:08:00 SRC=193.175.120.17 DST=10.15.0.12 LEN=292 TOS=0x00 PREC=0x00 TTL=63 ID=12340 PROTO=UDP SPT=53 DPT=42188 LEN=272
Dec 12 09:24:47 rt-mw-svn-server kernel: [ 2941.916869] [UFW BLOCK] IN=eno1 OUT= MAC=98:90:96:c0:09:da:00:10:f3:92:d7:f7:08:00 SRC=193.175.120.17 DST=10.15.0.12 LEN=152 TOS=0x00 PREC=0x00 TTL=63 ID=15731 PROTO=UDP SPT=53 DPT=40610 LEN=132
有趣的是,日志中的目标端口(DPT)在每个条目中都是不同的。所以当然允许53端口是没有用的。但是我怎样才能允许来自我的 DNS 的传入数据包呢?我已经检查过网络了。DNS 肯定有响应。先感谢您
新发现: 使用 sudo ufw enable 启用 ufw 时,出现错误:
sudo ufw enable 命令可能会中断现有的 ssh 连接。继续操作 > (y|n)? y 错误:运行 ufw-init iptables-restore 时出现问题:第 21 行失败
运行“/etc/ufw/before.rules”时出现问题
第 21 行是COMMIT
IP 表行。并且有解决方案的提示。
我正在尝试弄清楚如何将其他域添加到我的 DNS 服务器,正如我遵循本教程一样:
https://tecadmin.net/configure-dns-server-on-ubuntu-linuxmint/
谁能解释并告诉我如何向我的服务器添加更多域,以便我可以使用我的 apache 服务器托管它们?(我知道术语“主机”不是正确的)
我猜它只是复制这两行并在 /etc/bind/example.net.zone 中添加其他域(并将名称服务器设置为 ns1.example.net),但真的是这样吗?
myotherdomain.net. IN A server's_ip
www IN CNAME myotherdomain.net.
祝大家美好的一天。发出命令: nslookup kafka.zxc.stage @dns1.prod 有时我会得到答案 - ;; 连接超时; 无法访问服务器
例如,当我每秒运行一个命令时,6 秒内有 6 个请求。部分答案“无法访问服务器”。
我觉得这很奇怪。我决定使用 tcpdump 实用程序进行查看。我举两个例子。当 nslookup 返回 A 记录并且“无法访问任何服务器”时。
一切安好。响应返回到控制台 -
3926 IP (tos 0x0, ttl 64, id 40303, offset 0, flags [none], proto UDP (17), length 202)
dns-int.prod > kafka.zxc.stage.33173: [bad udp cksum 0x4e30 -> 0x6909!] 14677* q: A? kafka.stage. 2/2/2 kafka.stage. [10m] CNAME kafka.zxc.stage., kafka.zxc.stage. [10m] A 100.200.40.22 ns: stage.zone. [30m] NS dns2-int.prod., stage.zone. [30m] NS dns-int.prod . ar: dns-int.prod . [1h] A 100.100.100.200, dns2-int.prod. [30m] A 100.100.100.100 (174)
发送下一个请求,大约等待2-3秒,控制台返回“;;连接超时;无法到达服务器”-
4662 IP (tos 0x0, ttl 64, id 40543, offset 0, flags [none], proto UDP (17), length 129)
dns-int.prod > kafka.zxc.stage.52157: [bad udp cksum 0x4de7 -> 0x6fe7!] 53* q: AAAA? kafka.zxc.stage. 0/1/0 ns: stage.zone. [4d] SOA dns1.prod. admindn.mail.(101)
据我了解,A记录适用于IPv4,而AAAA记录适用于IPv6。
我仍然不明白他为什么要尝试以这种方式发送请求。如果有人能指出我寻找解决方案的方向,我将非常高兴。我也会寻找解决方案。谢谢。
所有这一切,如果我向 dns1 发送 nslookup 不间断请求,dns2(从属)不会有错误。
nslookup 到 dns1 的示例 -
# nslookup kafka.zxc.stage 100.100.100.100
Server: 100.100.100.100
Address: 100.100.100.100#53
kafka.zxc.stage canonical name = kafka.stage.
Name: kafka.zxc.stage
Address: 100.200.40.22
;; connection timed out; no servers could be reached
发送答案,但连接超时?或者
# nslookup kafka.zxc.stage 100.100.100.100
;; connection timed out; no servers could be reached
这就是浮动问题。
时间太长了,我正在检查它
for i in {0..5}; do time dig @100.100.100.100 +short kafka.zxc.stage ; done 2>&1 | grep real
real 0m5.018s
real 0m5.012s
real 0m0.016s
real 0m0.013s
real 0m5.015s
real 0m10.021s
指定的配置未更改。但操作系统配置发生了变化。我正在进一步检查
Ubuntu/Linux 初学者,所以我想知道是否有任何方法可以强制 Ubuntu 在解析名称时更喜欢 IPv4 或 IPv6(例如:google.com 有 ipv4 和 ipv6 地址。是否有任何设置允许我说 IPv6当某些应用程序要求使用该名称时,应该优先于 IPv4?)
谢谢。
安装了 22.04 LTS,一切都很顺利。我不是 Linux 专家,但遵循LinuxTechi 安装服务的指示。
Bind9/Named 拒绝启动,出现以下错误。我不知道是什么原因造成的或如何解决它。如果有人能给我指出正确的方向,我愿意进行研究和阅读。
- - - - - - - - - - 错误 - - - - - - - - -
named.service - BIND Domain Name Server
Loaded: loaded (/lib/systemd/system/named.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Fri 2023-07-07 17:44:37 UTC; 46s ago
Docs: man:named(8)
Process: 3922821 ExecStart=/usr/sbin/named $OPTIONS (code=exited, status=1/FAILURE)
CPU: 25ms
Jul 07 17:44:37 cazserver systemd[1]: named.service: Scheduled restart job, restart counter is at 5.
Jul 07 17:44:37 cazserver systemd[1]: Stopped BIND Domain Name Server.
Jul 07 17:44:37 cazserver systemd[1]: named.service: Start request repeated too quickly.
Jul 07 17:44:37 cazserver systemd[1]: named.service: Failed with result 'exit-code'.
Jul 07 17:44:37 cazserver systemd[1]: Failed to start BIND Domain Name Server.
--------------------结束错误--------------------
我正在构建一个虚拟 Ubuntu 服务器(Proxmox 上的 LXC),它将充当路由器并通过 VPN(expressVPN)隧道传输我本地网络的某些设备(例如 AppleTV)。连接和路由到不同的 VPN 目的地(不同的国家)是有效的。
但是一些服务仍然知道我不是从 VPN 服务器所在的国家打电话。(我认为这叫做DNS 泄漏???)
那是因为我的客户,假设 AppleTV 机顶盒使用 1.1.1.1 作为 DNS。它不知道 VPN 服务器发布到我的网关的 DNS 服务器。
为了防止这种情况发生,我想使用连接时收到的 VPN 的 DNS 服务。我将 AppleTV 指向我的网关作为 DNS,并编写了一些 iptables 规则来对 VPN 服务器提供的 DNS 服务器的请求进行 DNAT。(希望这是有道理的)
# Route DNS Traffic
iptables -t nat -A PREROUTING -p tcp --dst x.x.x.x --dport 53 -j DNAT --to-destination 10.54.0.1:53
iptables -t nat -A PREROUTING -p udp --dst x.x.x.x --dport 53 -j DNAT --to-destination 10.54.0.1:53
这很好用。
如何在建立 OpenVPN 连接时自动生成这些规则?当连接到另一个 VPN 站(例如不同的国家)时,特定的 DNS 地址将会改变。或者有更好的解决方案吗?
我正在考虑将其放入update-systemd-resolved
,但这似乎太复杂了。我认为有一个简单的方法。
我感谢任何提示。
我安装了 Ubuntu 22.04 并为内部代理身份验证配置了 CNTLM。不幸的是,并非所有域都可以解析。
ls -la /etc/resolv.conf
lrwxrwxrwx 1 root root 39 Sep 20 16:10 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf
cat /etc/resolv.conf
nameserver 127.0.0.53
options edns0 trust-ad
search xxx.xxx.xxx.com
我尝试了几种解决方案,但都没有成功。我想了解这怎么可能。
我已经尝试过了sudo systemd-resolve --flush-caches
,但它最终显示sudo: systemd-resolve: command not found
。那么,如何在 Ubuntu 22 中刷新 DNS 缓存?