İnternet olup olmadığını kontrol etmek için ping için harici güvenilir bir IP adresi nedir? [kapalı]


53

İnterneti algılamak için otomatik modda ping ayarlayabildiğim herhangi bir ortak sunucu var mı? Google gibi mi? 8.8.8.8 olabilir mi?

Özel durumum, çift WAN yönlendirici kullanıyorum. Her bir WAN, ISS’lerden birine bağlıdır. Param ISS'den birinde sona erdiğinde, kanalı engellemiyor. Bunun yerine, bir uyarı sayfasına yönlendirir. Dolayısıyla, yönlendirici internetin açık olduğunu düşünüyor çünkü veriler seyahat ediyor. Bu yönlendirici için diğer seçenek, internetin açık olup olmadığını kontrol etmek için bir adrese ping atmaktır.

Acaba, 8.8.8.8’e ping attığımda Google’ın uygunsuz kullanımları nedeniyle yasaklanmayacak mıyım? Google’ın kotaları olabileceğinden şüpheleniyorum. Ad sunucularına çok sık ping attığımda, bazen DNS reddedilir.


1
Gerçekten ne istediğini test etmeni öneririm. "İnternet mevcuttur" derken, ne demek istiyorsun?
David Schwartz,

1
@DavidSchwartz, internetin kullanılamayacağı anlamına geliyor. Belirli bir test istiyorsanız, WAN tabanlı olacak, bu nedenle test etme seçeneği değil çünkü duvarın üzerinden geçti ama ISS bilecekti.
barlop

5
ping stackexchange.com;)

6
@barlop Bu komik, ama yararlı değil. "İnternet kullanılamıyor" ne demek? Google’ın web sitesine erişemiyorsam, "internet kullanılamıyor" mu? DNS çalışıyor ancak web sayfası çalışmıyorsa, internet kullanılabilir mi? Bir soruyu cevaplamanın ilk adımı soruyu anlamaktır.
David Schwartz

4
@DavidSchwartz Şaka yapmadım ve google ile ilgili bir IP'yi test olarak ping yapmaktan bahsettiğini ve www.google.com gibi bir etki alanını test etmek için pinging yapmaktan bahsettiğini açıkça belirtti. her şey mevcut, o zaman internetin uygun olduğunu düşünür. Kullanılamıyor. Eğer bir soru işareti bulmak istersen, kötü bir yönlendiricinin 'internet kullanılamıyor' olup olmadığını, ama açıkça görüyorsun, 4 senaryosunu test edersin. Kullanılabilir WAN veya bunun içindeki spesifikasyonlar, ona sadece belirli bir vaka için bir test vermekten ya da daha kötüsü, hiçbir vaka için test etmekten daha yararlı olurdu.
barlop

Yanıtlar:


56

8.8.8.8'e ping yapmaya çalışın, bu Google birincil DNS sunucusudur. Bağlantımı doğrulamak için her zaman ping yapıyorum ve hiçbir zaman bulamadım. Alternatif olarak, Google’ın ikincil DNS’i olan 8.8.4.4’ü deneyebilirsiniz.


3
pingTLD'leri de kabul eder. Dolayısıyla ping google.com, dördüncü çeyreği hatırlamak istemiyorsanız, hile yapmalı.
Johannes Pille

38
@JohannesPille Bir etki alanı adına ping etmek çalışan bir DNS sunucusu gerektirir. Bu nedenle, eğer DNS isteği başarısız olduysa başarısız olabilir, bu da internet bağlantınızın gerçekten kapalı olduğu anlamına gelmez.
Jonathan,

3
Yetkili ad sunucunuz kapalı olsaydı, bölgenizdeki net fazla kullanılmazdı, değil mi?
Johannes Pille

6
@JohannesPille, birincil DNS'nizi, DCHP varsayılan yerine 8.8.8.8 olarak geçersiz kılabilirsiniz
mandal ucube,

6
@JohannesPille pingTLD'leri kabul etmiyor. Aynı zamanda alan adlarını da kabul etmiyor. Sadece etki alanı adlarının çoğu aynı zamanda ana bilgisayar adıdır ve bir IP adresine çözümlenir. Yani insanlar yazabilirsiniz http://example.comyerine http://www.example.comtarayıcılar başa ekleyerek Çok akıllı olduğunu önce, www.ilk etapta işe yaramadı eğer bir ana makine adına. ( ping army.milBana inanmıyorsanız deneyin .)
Dubu

33

Microsoft'un ne yaptığını yapabilirsiniz: kontrol et

http://www.msftncsi.com/ncsi.txt

"Microsoft NCSI" döndürür. (Bu, bir Wifi portalından veya başka bir şeyden değil, bir siteden doğru verileri alabileceğinizi doğrular).

Ayrıca dns.msftncsi.com adresini de kontrol edebilirsiniz.

131.107.255.255’e (bu, DNS’nin çalıştığını doğrular) işaret eder.

Bkz http://technet.microsoft.com/en-us/library/ee126135

Not: Gerekirse, kendinizi bir tutuklama portalından geçirmek için http://www.msftconnecttest.com/redirect adresini ziyaret edebilirsiniz .


1
+1. IIRC, Windows'da ayrıca bu yöntemi kullanarak internet bağlantı seviyesini kontrol etmek için bir API vardır.
Navin

7
Bu neden daha fazla büyütülmüyor? özellikle de belirli bir Soru için gerçekten iyi olan birkaç yoldan biri. ISS'niz trafiğinizi bir uyarı sayfasına yönlendiriyorsa, bunun gibi cevabı kontrol etmek birkaç güvenilir seçenekten biridir!
Falco

Artık çalışma
user2924019 9:17

1
Ne işe yaramıyor? Site hala doğru metni döndürüyor, dns yine de doğru IP’ye dönüyor, belgeler yine de doğru bilgiyi
veriyor

Bilgin olsun ping 131.107.255.255- zaman aşımına uğradı . www.msftncsi.comgeçer a1961.g2.akamai.net, bu 23.59.182.83yazı yazarken çözülür - bunun statik bir IP olup olmadığını bilmiyorum. Bu, cURL veya bir tarayıcı ile "İnternet bağlantımı güvenilir bir şekilde test etmek için iyi bir URL nedir" sorusuna iyi bir cevap olsa da, basit bir pingkomutla kontrol edilebilecek bir IP değildir, bu nedenle bu özel sorunun cevabı değildir.
Iono

13

Özel durum

ISS trafik aşırı yük durumuna girdiğinde yönlendirilemeyen "en yakın" sabit IP'ye ping atmak istiyorsunuz. Sistemimde, bu durumu ADSL kimlik doğrulamasında başarısız olarak taklit edebilirim. Bu durumda, traceroute -nnormal ve anormal koşullarda sonuçları karşılaştırarak, ilk atlamanın yanıt vermeyen 8.8.8.8'e (veya kesinlikle herhangi bir harici siteye) karşılık verdiğini ve ISS'nin altyapısının bir parçası olan 151.6.68.45 olduğunu görüyorum.

Kullanarak o (sadece emin olmak için testi tekrarladıktan sonra "check-canlı" ev sahibi olarak IP olan sabit), ben ADSL tamam olması durumunda hatalı pozitif almadan bir ISS anomali tespit edebilir, ancak ISP yönlendirme sıkıntılı olan .

Tabii ki, 8.8.8.8'i , Google’ın altyapısına erişemezsem , sebebi umursamıyorum , yedekleme yönlendiricisini de deneyebilirim diye düşünerek kullanabilirim.

Genel dava

"İnternet mevcuttur", "8.8.8.8 (veya diğer IP) 'e erişilebilmesi" den çok daha karmaşık bir şeydir.

Hızlı, kirli ve her zaman güvenilir olmayan bir kontrol için, 8.8.8.8'e ping atmak iyidir. Ancak, etki alanı adı yerine sayısal bir IP kullandığınızı görünce, IP bağlantınız olabileceğini ve DNS sorunları nedeniyle hala "İnternet yok" gerçeğini çoktan bitirdiniz .

Tam bir teşhis PC'nize yakın başlamalıdır.

  • Yerel ağ yapılandırmasını sorgula ve ağ geçidi ile DNS sunucusunu al.
  • Ağ geçidine ping atmak. Ulaşılabilir olmalıdır. Olmazsa, yerel bir sorun var.
  • kesinlikle bir harici adresin kısa bir TTL (aslında, hping tarafından sağlanan gibi bir TCP traceroute) ile bir traceroute çalıştırmak, 8.8.8.8 tamam.
  • Ağ geçidinizden sonra bazı ekstra düğümlerin cevap verdiğini görmek istiyorsunuz.

Örneğin, evde Windows XP'de var:

 1    <1 ms    <1 ms    <1 ms  192.168.4.200   -- (constant) Home Linux box (gateway)
 2    <1 ms    <1 ms    <1 ms  192.168.0.1     -- (constant) ADSL modem
 3     *        *        *     *               -- WAN interface, always fails; expected
 4     *        6 ms     6 ms  151.6.64.30     -- (varies) ISP gateway

Şimdi DNS'ye ping atmayı deneyin. Ulaşılabilir olmalıdır. Daha da iyisi, basit bir DNS kontrolü yapın. DNS önbelleklerinden kaçınmak için bazen ne olursa olsun tüm sorulara cevap verecek bir etki alanı kullanıyorum . Yani

$ host randomasdfdsasdqwerty987667.godaddy.com
randomasdfdsasdqwerty987667.godaddy.com has address 97.74.104.201

DNS sunucusu güvenilmez ise, aynı sorgu wifi için esir portalın adresini döndürebilir

$ host randomasdfdsasdqwerty987667.godaddy.com
captiveportal.homenet has address 192.168.4.200

veya 127.0.0.1, hatta bir hata.

DNS hataları durumunda, DNS IP adresinin (veya OpenDNS'inki gibi farklı bir DNS'in) bir izini deneyebilirim. Bu sadece sorunun DNS mi yoksa ISS mi olduğunu söylemeyecek, çoğu zaman bu kesinti konusunda çalışmama izin verecek.

Bu noktada her şey yolunda giderse, bağlantının normal çalıştığını biliyorum; hala bazı siteler için başarısız olabilir. Tek ihtiyacım olan şey şu anda isup.meolmak için :-)

http://www.isup.me/www.google.com
http://www.isup.me/mail.google.com

veya Down Detector gibi bir site beni "İnternet havası" hakkında bilgilendirir.

Aslında, ana sunucumda bir Squid önbelleği var ve hata sayfası, site dışı istatistiklerden başarıyla alınan son verileri içeriyor.

                Google.com is not reachable

                STORM ALERT: 12 out of 14 sites are unreachable!

Tıpkı geçen Cuma günü İtalya’da olduğu gibi.


Ping yapabiliyorsanız 8.8.8.8, DNS sunucunuzu buna değiştirin, böylece ISS DNS sorunları önemli değil
Zeb McCorkle

2
Evet, ancak bunu yalnızca sorunların DNS tabanlı olduğunu doğruladıktan sonra yapmanız gerekir. Başka tür problemler vardır ve başka bir şeyi yıkarken rotalamayı 8.8.8.8'e (ya da ICMP protokolüne) bırakabilirler. Tersine, ping 8.8.8.8 için başarısızlık olabilir değil hiç bir yönlendirme veya DNS sorunu belirtir.
LSerni

6

Bir çiftin dediği gibi, Google birincil DNS’yi yanıtlamak için ping edebilirsiniz, ancak bir adrese güvenmeyin. Adres (bir takım nedenlerden dolayı), bir süredir kapalı olabilir, bu sırada yazılımınızın "bağlantı yok" raporunu vereceği, aslında ağ bağlantınız herhangi bir problem yaşamadığında. Yanlış negatifleri elemek için her zaman birden fazla adresle iletişim kurmaya çalışmalısınız.

Bir kere adres atan bir fonksiyon yazardım, eğer bir başkasına geçmezse (en fazla üç IP) ve birkaç olumlu cevap aldığınız anda fonksiyon, uygulamanıza / betiğinize İnternet'in uygun olduğunu bildirmelidir. devam et.


3

Flakey internet bağlantısı olan bir organizasyon için çalıştığımda, birkaç "her zaman up" sunucusunu bağlantı için test eden bir komut dosyası kullandım: önce LAN yönlendiricisi / anahtarı, ardından yerel dosya sunucusu, sonra T1 yönlendiricisi, sonra ISS'nin DNS'si, sonra Google. İkinci ikisini sayısal adresler ve alanlar olarak test ettim; Herhangi bir ping çok sık başarısız olursa, internete bağlanma probleminin nerede olacağı konusunda bir fikrim var.

Google’ın sayısal adresi için, daha önce nslookup’tan edindiğim bir adresi kullandım - hiçbir zaman aşağı olduğu bir davaya girmedim. Sanırım 8.8.8.8 daha basit olurdu.

Oldukça sık, insanlar "internet kapalıydı" demek için aradıklarında, sadece DNS'nin kapalı olduğu ortaya çıktı; bu farklı şeyleri arayabiliriz, ancak meslektaşlarımın bakış açısından, internet her iki durumda da mevcut değildi.


3

4.2.2.1'i 10 yıldan fazla bir süredir kullanıyorum. Daha önce Googles'ın halka açık DNS servisi yoktu. Güvenilir bir DNS önbelleği ve ICMP yanıtlayıcısı gibi görünüyor.


3
4.2.2.2
yazması

Bu tummy.com/articles/famous-dns-server kamu kullanımı için tasarlanmadığından bahseder.
kevinf

2

DNS sunucunuzu deneyin, yine de ihtiyacınız olacak (ve ISS'nizin dış bağlantısı kopmuş olabilir). Gerçekten ne istediğine bağlı. Özel servisine erişmeniz gerekiyorsa, kontrol edin.


Bu, yalnızca ISS’lerin DNS sunucusunun ping’e yanıt verdiğini biliyorsanız geçerlidir. İyi çalışıyor olabilir ama ICMP'yi engelliyor.
Olli

Bu en basit ve en iyi cevap, IMO.
njbair,
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.