Wget neden asılı?


12

wget sunucularımdan tek bir belirli url zaman aşımları almaya devam ediyor. Bu kutudaki diğer tüm URL'ler iyi çalışıyor. Bu url, sahip olduğum diğer kutulardan Tamam çalışıyor. İşte çıktı:

wget -T 10 http://www.fcc-fac.ca
--2011-07-14 14:44:29--  http://www.fcc-fac.ca/
Resolving www.fcc-fac.ca... 65.87.238.35, 207.195.108.140
Connecting to www.fcc-fac.ca|65.87.238.35|:80... failed: Connection timed out.
Connecting to www.fcc-fac.ca|207.195.108.140|:80... failed: Connection timed out

Bana neyin yanlış olabileceğini ve sorununu nasıl giderebilirim? Ubuntu 11.04 kullanıyorum (GNU / Linux 2.6.38-8-server x86_64)

Şimdiden çok teşekkür ederim ve noobish cehaletimi affet :)

ping, telnet, nc www.fcc-fac.ca 80 - hepsi asılı. Ancak, sadece bazı ana bilgisayarları pinglenebilir olsa da kolayca wget'able olan diğer bazı url'ler .

traceroute bana çok şey anlatmıyor:

7  rx0nr-access-communications.wp.bigpipeinc.com (66.244.208.10)  148.834 ms  149.018 ms  148.940 ms
8  sw-1-research.accesscomm.ca (24.72.3.9)  158.901 ms  159.805 ms  160.162 ms
9  65.87.238.126 (65.87.238.126)  150.069 ms  148.861 ms  148.846 ms
10  * * *
...
30  * * *

Cevaplarınız için çok teşekkürler!

Yanıtlar:


14

Sorun wget IPv6 adresleri iyi işlemiyor ve DNS sunucusu bu site için bir IPv6 gönderiyor olduğunu düşünüyorum. Sorunuzu yanlış anladıysam özür dilerim. Şu testleri kontrol edin:

hmontoliu@ulises:~$ wget -T10 http://www.fcc-fac.ca
--2011-07-14 16:44:34--  http://www.fcc-fac.ca/
Resolving www.fcc-fac.ca... failed: Connection timed out.
wget: unable to resolve host address `www.fcc-fac.ca'

IPv6'yı zorlarsam, sorununuzun bununla ilgili olduğuna inanıyorum, başarısız olur:

hmontoliu@ulises:~$ wget -6 http://www.fcc-fac.ca
--2011-07-14 16:40:44--  http://www.fcc-fac.ca/
Resolving www.fcc-fac.ca... failed: No address associated with hostname.
wget: unable to resolve host address `www.fcc-fac.ca'

Ancak IPv4 kullanmaya zorlarsam doğrudan indeks sayfasını indirir

hmontoliu@ulises:~$ wget -4 http://www.fcc-fac.ca
--2011-07-14 16:40:56--  http://www.fcc-fac.ca/
Resolving www.fcc-fac.ca... 65.87.238.35, 207.195.108.140
Connecting to www.fcc-fac.ca|65.87.238.35|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6554 (6,4K) [text/html]
Saving to: `index.html'

Bir IPv4 adresi ile gayet iyi çözüyor.
Jodie C

IPv6'yı neden sevmediğimin başka bir örneği: - /
PJ Brunet

1

Çalıştırın nc www.fcc-fac.ca 80, yazın GET /ve Enter tuşuna iki kez basın.

Uzaktan görüş aşağı olabilir veya sizi engelliyor olabilir.


Hey, cevap için teşekkürler - Orijinal soruyu güncelledim
Szczepan

Adrese netcat yapamıyorsanız, muhtemelen yol boyunca bir yerde engelleniyorsunuzdur.
Jodie C

1

wget, 80 numaralı bağlantı noktanızdaki ip'inize bağlanamıyor gibi görünüyor.

sunucunuzun pinglenebilir olup olmadığını kontrol edin:

ping 65.87.238.35
ping 207.195.108.140

ip pingable ise, telnet kullanarak 80 numaralı bağlantı noktasına bağlanıp bağlanamayacağınızı kontrol edin:

telnet 65.87.238.35 80

sunucu ping'e yanıt vermezse, büyük olasılıkla kaynak ağınız için kapalı veya erişilemez durumdadır.

bağlantının nerede başarısız olduğunu görmek için traceroute aracıyla test edin.


Hey, cevap için teşekkürler - Orijinal soruyu güncelledim
Szczepan

www.fcc-fac.ca adresindeki bir kazı bana A tipi 2 DNS kaydına sahip olduğunu söylüyor: ;; CEVAP BÖLÜMÜ: www.fcc-fac.ca. 120 IN A 65.87.238.35 www.fcc-fac.ca. 120 IN A 207.195.108.140 her ikisine de ulaşılamıyorsa, ana bilgisayar çalışmıyor ve doğal olarak wget istediğiniz dosyayı alamayacak. bazı ip'in ulaşılabilir olması durumunda, wget ulaşılabilecek bir ip ile karşılaşana kadar aşağı ipi atlayacak ve dosyayı oradan indirecektir. senin durumda, her iki ana düşünüyorum uzun yanıt süresi düşünüyorum (zaman aşımı) nedeniyle.
Goez

u zaman aşımı değerini uzatmak için wget içinde -T seçeneğini kullanabilirsiniz Zaman aşımı saniye saniye, bu yüzden belki daha yüksek bir değer yardımcı olacaktır
Goez

Tamam. Anlıyorum. Her iki ips de pinglenebilir değildir (2 farklı makineden kontrol ettim). Ancak bağlantı tarayıcıda iyi çalışıyor ve sorun çıkaran makineden farklı makinelerden uyandığında: /
Szczepan

Daha yüksek zaman aşımı yardımcı olmaz
Szczepan

1

CURL kütüphanesini kullanarak PHP betiklerinde yavaş DNS çözünürlüğü düzeltildi.

Libcurl belgelerinden:

CURLOPT_IPRESOLVE

Uygulamaya, ana bilgisayar adlarını çözerken ne tür IP adresleri kullanılacağını seçme izni verir. Bu, yalnızca birden fazla IP sürümü kullanarak adresleri çözen ana bilgisayar adları kullanıldığında ilginçtir. İzin verilen değerler:

CURL_IPRESOLVE_WHATEVER

Varsayılan, adresleri sisteminizin izin verdiği tüm IP sürümlerine çözümler.

CURL_IPRESOLVE_V4

IPv4 adreslerine çözüm bulun.

CURL_IPRESOLVE_V6

IPv6 adreslerine çözüm bulun.

Bunların çevresel değişkenler olarak ayarlanabileceğine inanıyorum. En azından PHP kullanırken, bu ayarlar çözümleyici hızında büyük bir fark yarattı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.