我经常需要安装新的Debian服务器,所以我试图设置一个Squid代理来cachingapt-get更新/升级。 但我总是有一些特定的文件可以检索的问题。
细节:
我的Squidconfiguration看起来像(部分)
cache_peer upstream_proxy.internal.domain.tld parent 8080 0 no-query no-digest default cache_replacement_policy heap LFUDA cache_dir ufs /var/spool/squid3 1000 16 256 maximum_object_size 200 MB refresh_pattern . 0 20% 4320 refresh-ims
运行Debian安装时,首先它运行良好(鱿鱼正确地提供软件包),但是有一次它试图检索Packages.gz文件,这个文件永远不会被传送。 我在access.log中看到以下条目(不确定它们是否总是出现,似乎不是)
1370855387.060 950995 <internal IP> TCP_MISS/200 679695 GET http://ftp.fr.debian.org/debian/dists/squeeze/main/binary-amd64/Packages.gz - DEFAULT_PARENT/upstream_proxy.internal.domain.tld application/x-gzip 1370855542.916 947999 <internal IP> TCP_MISS/200 2247441 GET http://ftp.fr.debian.org/debian/dists/squeeze/main/binary-amd64/Packages.gz - DEFAULT_PARENT/upstream_proxy.internal.domain.tld application/x-gzip
如果我直接在我的Debian安装程序中使用我的上游代理,所有工作都正常,所以它必须是一个configuration问题,但我不知道是什么。
任何人都知道什么是问题,或者我可以如何debugging?
您的日志条目显示文件在相对长的时间段(951秒/ 947秒)之后被检索,但具有不同的长度(679695比2247441字节),尽pipeURI相同,这将表明问题。 传输可能会在950秒后超时,并可能被上游代理强制中断。
检查是否可以在不使用Squid的情况下成功地检索文件:
export http_proxy="http://upstream_proxy.internal.domain.tld:8080" wget http://ftp.fr.debian.org/debian/dists/squeeze/main/binary-amd64/Packages.gz
并从那里解决问题。 您的Squid代理实例和远程代理之间的传输tcpdump可能有助于解决问题。 此外,如果可用,请向pipe理员/技术支持人员查询您正在使用的代理是否存在可能的问题原因。