Apt 更新:无法连接到 deb.debian.org

Apt 更新:无法连接到 deb.debian.org

我正在尝试更新系统,但出现错误:

sudo apt update

输出:

Err:1 http://deb.debian.org/debian unstable InRelease
  Could not connect to debian.map.fastlydns.net:80 (146.75.2.132). - connect (113: No route to host) Unable to connect to deb.debian.org:http:
Err:2 http://deb.debian.org/debian-debug unstable-debug InRelease                                  
  Unable to connect to deb.debian.org:http:
Err:3 http://deb.debian.org/debian-ports unstable InRelease                                        
  Unable to connect to deb.debian.org:http:
Err:4 http://deb.debian.org/debian bullseye-updates InRelease                                      
  Unable to connect to deb.debian.org:http:
Err:5 http://deb.debian.org/debian bullseye InRelease                                              
  Unable to connect to deb.debian.org:http:
Hit:6 http://security.debian.org/debian-security bullseye-security InRelease                       
Hit:7 https://mx-packages.ip-connect.vn.ua/mx/repo bullseye InRelease                              
Hit:8 http://repository.spotify.com stable InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done

系统:

Kernel: 5.10.0-13-amd64 x86_64 bits: 64 compiler: gcc v: 10.2.1 
parameters: BOOT_IMAGE=/boot/vmlinuz-5.10.0-13-amd64 
Desktop: Xfce 4.16.0 tk: Gtk 3.24.24 info: xfce4-panel wm: xfwm 4.16.1 vt: 7 
dm: LightDM 1.26.0 Distro: MX-21.1_x64 Wildflower April 9  2022 
base: Debian GNU/Linux 11 (bullseye)

答案1

您似乎能够连接到security.debian.orgmx-packages.ip-connect.vn.uarepository.spotify.com,但deb.debian.org失败。

Err:1 http://deb.debian.org/debian unstable InRelease
  Could not connect to debian.map.fastlydns.net:80 (146.75.2.132). 
- connect (113: No route to host) Unable to connect to deb.debian.org:http:

从这部分中,您可以看到 是deb.debian.org的别名debian.map.fastlydns.net,然后将其转换为 IP 地址 146.75.2.132。

我们来看看相关的DNS记录:

$ dig +noall +answer deb.debian.org
deb.debian.org.         3600    IN      CNAME   debian.map.fastlydns.net.
debian.map.fastlydns.net. 30    IN      A       151.101.246.132

这是一个正在运行的基于 DNS(可能还有地理定位辅助)的全球负载均衡器。请注意,我的查询得到的 IP 地址与debian.map.fastlydns.net您的不同,可能是因为 DNS 服务器确定该 IP 地址将是最接近我的 Debian 镜像,它是负载平衡方案的一部分。作为该方案一部分的 Debian 镜像服务器应与 fastlydns.net 的负载平衡器系统进行通信,报告其状态和当前负载级别。

另请注意,第二列中的生存时间 (TTL) 值非常短:第一行的 CNAME 记录为 3600 秒,而第二行的 A 记录仅为 30 秒。

如果我们重复查询,我们应该看到 TTL 数字倒计时:

$ dig +noall +answer deb.debian.org
deb.debian.org.         3208    IN      CNAME   debian.map.fastlydns.net.
debian.map.fastlydns.net. 29    IN      A       151.101.246.132

$ dig +noall +answer deb.debian.org
deb.debian.org.         3207    IN      CNAME   debian.map.fastlydns.net.
debian.map.fastlydns.net. 28    IN      A       151.101.246.132

$ dig +noall +answer deb.debian.org
deb.debian.org.         3206    IN      CNAME   debian.map.fastlydns.net.
debian.map.fastlydns.net. 27    IN      A       151.101.246.132

$ dig +noall +answer deb.debian.org
deb.debian.org.         3205    IN      CNAME   debian.map.fastlydns.net.
debian.map.fastlydns.net. 26    IN      A       151.101.246.132

这表明答案来自缓存 DNS 解析器服务器,当 TTL 值达到零时,缓存解析器应该使旧数据过期,并从域的权威 DNS 服务器获取新答案map.fastlydns.net。这使得权威 DNS 服务器有机会向您指出另一个镜像,deb.debian.org如果它得到的信息表明您最初获得的镜像有问题或太忙。

所以,你可以做什么?好吧,首先要尝试的就是等待几分钟,然后重试。如果您随后被指向不同的 IP 地址,则表明您第一次尝试时获得的 Debian 镜像服务器出现了某种问题,负载均衡器意识到了这一点,并开始将来自deb.debian.org您的常规区域的任何查询重定向到下一个最接近的具有可用容量的 Debian 镜像服务器。

如果没有发生这种情况,则可能是镜像服务器和您的 Internet 服务提供商之间存在连接问题 - 事实上,No route to host错误消息中的部分表明可能是这种情况。您可以对目标 IP 地址的端口 80 进行基于 TCP 的跟踪路由,以了解在检测到丢失的路由之前您可以走多远:

$ sudo traceroute -T -p 80 146.75.2.132

如果输出中的最后一个主机名似乎指的是您的 Internet 服务提供商,那么可能需要联系 ISP 的支持并报告问题。

但是,如果最后一个主机名引用了一些大型骨干通信提供商(例如Level3.net),那么问题就离您的 ISP 更远了:如果您的 ISP 有多个不同的骨干链路,他们可能能够更改其路由以解决中断问题(在事实上,这应该会在一段时间后自动发生)。除此之外,在这种情况下您的 ISP 几乎无能为力。

如果deb.debian.org您似乎很长时间无法联系到,您可以访问Debian 镜像列表,选择一个离您相对较近并且可以到达的,并sources.list为其添加一个条目。

如果您已经netselect安装了该软件包,您可以使用该netselect命令自动为您选择一个好的 Debian 镜像站点,但如果您没有安装它并且当前手头没有 Debian 介质,那么安装它就是有点像“第二十二条军规”的问题。

相关内容