停止 apt 寻找 srv 记录

停止 apt 寻找 srv 记录

我正在尝试在仅间歇性连接到 Internet 的网络上使用 apt。该网络有一个本地 apt 镜像,我已将该镜像的 IP 地址放入 resources.list 的所有条目中。

不幸的是,当与互联网断开连接时,运行 apt 命令会出现令人烦恼的延迟。使用 tcpdump 进行调查显示。

14:44:52.271437 IP 172.19.0.2.42208 > 8.8.8.8.domain: 180+ SRV? _http._tcp.172.19.0.1. (39)
14:44:57.277063 IP 172.19.0.2.42208 > 8.8.8.8.domain: 180+ SRV? _http._tcp.172.19.0.1. (39)
14:44:57.277160 IP 172.19.0.1 > 172.19.0.2: ICMP net 8.8.8.8 unreachable, length 75
14:45:02.286414 IP 172.19.0.2.42208 > 8.8.8.8.domain: 180+ SRV? _http._tcp.172.19.0.1. (39)
14:45:02.286504 IP 172.19.0.1 > 172.19.0.2: ICMP net 8.8.8.8 unreachable, length 75

有什么方法可以阻止 apt 执行此操作并使其立即连接到本地镜像吗?

答案1

好吧,我通过阅读源代码找到了答案

将以下内容添加到/etc/apt/apt.conf(如果不存在则创建它)

Acquire::EnableSrvRecords "false";

答案2

尝试将 apt 镜像作为 apt 代理。

如果文件不存在则创建: /etc/apt/apt.conf

添加 apt 代理信息:

Acquire::http::Proxy "http://address:port";

或者在你的情况下:

Acquire::http::Proxy "http://172.19.0.2.42208";

别忘了;最后的。

通过更新测试:

sudo apt-get update

我不确定你的镜子是否会这样工作。也许像apt这样的缓存器apt-cacher-ng会有所帮助。

如果你有一个完整的镜像,你不能将源的域名部分更改为你的镜像IP地址吗?

例如,如果来源是:

deb http://ftp.ussg.iu.edu/linux/ubuntu xenial main restricted universe multiverse

改成:

deb http://172.19.0.2.42208/linux/ubuntu xenial main restricted universe multiverse

相关内容