Địa chỉ IP đáng tin cậy bên ngoài để ping để kiểm tra xem internet có khả dụng không? [đóng cửa]


53

Có bất kỳ máy chủ luôn luôn lên, mà tôi có thể thiết lập để ping trong chế độ tự động để phát hiện internet có sẵn không? Giống như Google hay cái gì đó? Có thể là 8.8.8.8?

Tình hình cụ thể của tôi là tôi đang sử dụng bộ định tuyến WAN kép. Mỗi mạng LAN được kết nối với một trong các ISP. Khi tiền của tôi kết thúc ở một trong các ISP, nó sẽ không chặn kênh. Thay vào đó, nó chuyển hướng đến một trang cảnh báo. Vì vậy, bộ định tuyến nghĩ rằng internet là trên, bởi vì dữ liệu đang đi du lịch. Tùy chọn khác cho bộ định tuyến này là ping cho một số địa chỉ để kiểm tra xem internet có bật không.

Tôi tự hỏi, nếu tôi ping 8.8.8.8, tôi sẽ không bị Google cấm sử dụng không phù hợp chứ? Tôi nghi ngờ rằng Google có thể có một số hạn ngạch. Nếu tôi sẽ ping máy chủ tên của nó quá thường xuyên, thì đôi khi tôi sẽ bị từ chối DNS.


1
Tôi sẽ đề nghị bạn kiểm tra những gì bạn thực sự muốn. Khi bạn nói "Internet có sẵn", bạn có ý gì?
David Schwartz

1
@DavidSchwartz có nghĩa là internet không khả dụng. Nếu bạn muốn có một thử nghiệm cụ thể, nhiều thứ sẽ dựa trên mạng LAN vì vậy không phải là một tùy chọn để kiểm tra vì nó vượt qua tường nhưng ISP sẽ biết.
barlop

5
ping stackexchange.com;)

6
@barlop Điều đó thật buồn cười, nhưng không hữu ích. "Internet không có sẵn" nghĩa là gì? Nếu tôi không thể truy cập trang web của Google, "Internet không khả dụng"? Nếu DNS hoạt động nhưng không có trang web nào hoạt động, internet có sẵn không? Bước đầu tiên để trả lời một câu hỏi là hiểu câu hỏi.
David Schwartz

4
@DavidSchwartz Tôi không nói đùa, và xem xét rằng anh ấy đang nói về việc kiểm tra IP liên quan đến google như một bài kiểm tra và không đưa ra một tên miền như www.google.com như một bài kiểm tra, rõ ràng anh ấy có nghĩa là trong trường hợp DNS không khả dụng nhưng mọi thứ khác đều có sẵn, sau đó anh ta coi Internet là có sẵn. Không có sẵn. Nếu bạn muốn tìm một dấu hỏi, liệu b có phải là một bộ định tuyến kém là 'không có internet' nhưng rõ ràng nếu bạn có thể cung cấp một bài kiểm tra 4 kịch bản so với Có sẵn mạng LAN hoặc chi tiết cụ thể trong đó, sẽ hữu ích hơn là chỉ cho anh ta kiểm tra chỉ một trường hợp cụ thể hoặc tệ hơn, không có trường hợp nào.
barlop

Câu trả lời:


56

Hãy thử ping 8.8.8.8, đó là máy chủ DNS chính của Google. Tôi luôn ping nó để xác minh kết nối của mình và tôi không bao giờ tìm thấy nó. Ngoài ra, bạn có thể thử 8.8.4.4, đó là DNS thứ cấp của Google.


3
pingcũng chấp nhận TLD. Do đó ping google.comnên thực hiện các mẹo, trong trường hợp bạn không muốn nhớ gấp bốn lần.
Johannes Pille

38
@JohannesPille Ping một tên miền yêu cầu máy chủ DNS hoạt động. Do đó, nó có thể thất bại nếu yêu cầu DNS không thành công, điều đó không có nghĩa là kết nối internet của bạn thực sự bị hỏng.
Jonathan

3
Nếu máy chủ tên có thẩm quyền của bạn sẽ ngừng hoạt động, mạng trong khu vực của bạn sẽ không được sử dụng nhiều, phải không?
Julian Pille

6
@JohannesPille bạn có thể ghi đè DNS chính của mình lên 8.8.8.8 thay vì mặc định DCHP
ratchet freak

6
@JohannesPille pingkhông chấp nhận TLD. Nó cũng không chấp nhận tên miền. Nó chỉ là để hầu hết các tên miền cũng là tên máy chủ và giải quyết thành một địa chỉ IP. Vì vậy, mọi người có thể nhập http://example.comthay vì http://www.example.com, trước khi các trình duyệt rất thông minh để thêm vào www.tên máy chủ nếu nó không hoạt động ở nơi đầu tiên. (Hãy cố gắng ping army.milnếu bạn không tin tôi.)
Dubu

33

Bạn có thể làm những gì microsoft làm: kiểm tra xem

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

trả về "Microsoft NCSI". (Điều này xác minh rằng bạn có thể lấy dữ liệu chính xác từ một trang web, ví dụ không phải là cổng Wifi hoặc thứ gì khác).

Bạn cũng có thể kiểm tra (ví dụ ping) mà dns.msftncsi.com

trỏ đến 131.107.255.255 (điều này xác minh rằng DNS đang hoạt động).

Xem http://technet.microsoft.com/en-us/l Library / ee126135

Lưu ý: Bạn cũng có thể truy cập http://www.msftconnecttest.com/redirect để tự mình đi qua một cổng bị giam cầm nếu cần.


1
+1. IIRC, Windows cũng có API để kiểm tra mức độ kết nối internet bằng phương pháp này.
Navin

7
Tại sao điều này không được nâng cao hơn? một trong số ít cách thực sự tốt, đặc biệt đối với Câu hỏi cụ thể. Nếu ISP của bạn chuyển hướng lưu lượng truy cập của bạn đến một trang cảnh báo, kiểm tra câu trả lời như thế này là một trong số ít các tùy chọn đáng tin cậy!
Falco

Không còn hoạt động
user2924019

1
Cái gì không hoạt động? Trang web vẫn trả về đúng văn bản, dns vẫn phân giải đúng IP, tài liệu vẫn trả về đúng thông tin
Mark Sowul

FYI bạn không thể ping 131.107.255.255- nó hết thời gian. www.msftncsi.comđi qua a1961.g2.akamai.net, điều này giải quyết 23.59.182.83tại thời điểm viết bài - Tôi không biết liệu đó có phải là IP tĩnh hay không. Mặc dù đây là một câu trả lời tốt cho câu hỏi "URL nào tốt để kiểm tra kết nối internet của tôi một cách đáng tin cậy" với vURL hoặc trình duyệt, nhưng đó không phải là một IP hơn một pinglệnh đơn giản vì vậy không phải là câu trả lời cho câu hỏi cụ thể này.
iono

13

Trường hợp cụ thể

Bạn muốn ping IP cố định "gần nhất" không thể định tuyến khi ISP chuyển sang trạng thái quá tải lưu lượng. Trên hệ thống của tôi, tôi có thể mô phỏng tình huống này bằng cách không xác thực ADSL. Trong trường hợp đó, bằng cách so sánh kết quả traceroute -ntrong điều kiện bình thường và bất thường, tôi thấy rằng bước nhảy đầu tiên đến 8.8.8.8 (hoặc bất kỳ trang web bên ngoài chắc chắn nào) không phản hồi là 151.6,68,45, là một phần của cơ sở hạ tầng ISP của tôi.

Bằng cách sử dụng IP đó làm máy chủ lưu trữ "kiểm tra trực tiếp" (sau khi lặp lại thử nghiệm để chắc chắn rằng nó đã được sửa), tôi có thể phát hiện ra sự bất thường của ISP mà không nhận được kết quả dương tính giả trong trường hợp ADSL vẫn ổn, nhưng việc định tuyến ISP gặp sự cố .

Tất nhiên, tôi có thể sử dụng 8.8.8.8 cho mục đích , với lý do rằng nếu tôi không thể tiếp cận cơ sở hạ tầng của Google, tôi không quan tâm đến lý do , tôi cũng có thể thử với bộ định tuyến dự phòng.

Trường hợp chung

"Internet có sẵn" là một nhiều điều phức tạp hơn chỉ đơn giản là "Có 8.8.8.8 (hoặc IP khác) có thể truy cập".

Để kiểm tra nhanh, bẩn và không phải lúc nào cũng đáng tin cậy, ping 8.8.8 là tốt. Nhưng khi xem cách bạn sử dụng IP số thay vì tên miền, bạn đã nhận ra rằng bạn có thể có kết nối IP và vẫn "không có Internet" vì sự cố DNS.

Một chẩn đoán hoàn chỉnh sẽ phải bắt đầu gần với PC của bạn.

  • truy vấn cấu hình mạng cục bộ và truy xuất gateway và máy chủ DNS.
  • ping cổng. Nó có thể truy cập được. Nếu không, có một vấn đề địa phương.
  • chạy một traceroute với TTL ngắn (thực ra, một traceroute TCP như được cung cấp bởi hping là tốt hơn) của một địa chỉ bên ngoài chắc chắn, 8.8.8.8 là ổn.
  • bạn muốn thấy rằng, sau cổng của bạn, một số nút bổ sung đang phản hồi.

Ví dụ: trong Windows XP ở nhà tôi có:

 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

Bây giờ hãy thử ping DNS. Nó có thể truy cập được. Thậm chí tốt hơn, chạy một kiểm tra DNS đơn giản. Để tránh bộ đệm DNS, đôi khi tôi sử dụng một số tên miền sẽ trả lời cho tất cả các truy vấn bất kể điều gì. Ví dụ

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

trong khi nếu máy chủ DNS không đáng tin cậy, cùng một truy vấn có thể trả về địa chỉ của cổng bị khóa cho wifi

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

hoặc 127.0.0.1, hoặc thậm chí là một lỗi.

Trong trường hợp DNS bị lỗi, tôi có thể thử theo dõi địa chỉ IP DNS (hoặc một DNS khác như địa chỉ OpenDNS). Điều đó sẽ không chỉ cho tôi biết liệu vấn đề là DNS hay ISP, nó thường sẽ cho phép tôi làm việc xung quanh sự gián đoạn.

Nếu mọi thứ đều ổn vào thời điểm này, tôi biết rằng kết nối đang hoạt động tốt, nói chung; nó vẫn có thể thất bại đối với một số trang web. Tất cả những gì tôi cần bây giờ là isup.međể lên :-), sau đó kiểm tra

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

hoặc một trang web như Down Det sẽ thông báo cho tôi về "thời tiết Internet".

Trên thực tế, trên máy chủ nhà của tôi có bộ đệm Squid và trang lỗi chứa dữ liệu cuối cùng được truy xuất thành công từ thống kê trang web xuống, vì vậy tôi có thể thấy một cái gì đó như

                Google.com is not reachable

                STORM ALERT: 12 out of 14 sites are unreachable!

giống như nó đã xảy ra vào thứ sáu tuần trước ở đây tại Ý.


Nếu bạn có thể ping 8.8.8.8, chỉ cần chuyển máy chủ DNS của bạn sang đó để các vấn đề DNS của ISP không thành vấn đề
Zeb McCorkle

2
Có, nhưng bạn chỉ nên làm điều đó sau khi bạn xác minh rằng các vấn đề thực sự là dựa trên DNS. Các loại vấn đề khác tồn tại và chúng có thể giữ nguyên định tuyến đến 8.8.8.8 (hoặc giao thức ICMP) trong khi phá hỏng thứ khác. Ngược lại, lỗi ping 8.8.8.8 có thể không chỉ ra vấn đề định tuyến hoặc DNS.
LSerni

6

Như một cặp vợ chồng đã nói, bạn có thể ping, giả sử DNS chính của Google để nhận phản hồi nhưng không dựa vào một địa chỉ. Địa chỉ (vì một số lý do) có thể không hoạt động trong một khoảng thời gian, trong đó phần mềm của bạn sẽ báo cáo "không có kết nối", trên thực tế, khi đó, kết nối mạng của bạn có thể không gặp phải bất kỳ sự cố nào. Bạn phải luôn cố gắng liên lạc với nhiều hơn một địa chỉ để bạn có thể loại trừ các phủ định sai.

Tôi sẽ viết một hàm gửi địa chỉ một lần, nếu không chuyển sang địa chỉ khác (tối đa ba IP) và thời điểm bạn nhận được một vài phản hồi tích cực, chức năng sẽ thông báo cho ứng dụng / tập lệnh của bạn rằng Internet có sẵn và tiếp tục.


3

Khi tôi làm việc cho một tổ chức có kết nối internet không ổn định, tôi đã có một đoạn script kiểm tra một số máy chủ "luôn luôn" để kết nối: đầu tiên là bộ định tuyến / bộ chuyển đổi LAN, sau đó là máy chủ tệp cục bộ, sau đó là bộ định tuyến T1, sau đó là DNS của ISP, rồi Google. Tôi đã kiểm tra hai cái sau là địa chỉ số và dưới dạng tên miền, để kiểm tra các sự cố DNS so với ping per se. Nếu bất kỳ lệnh ping nào thất bại quá thường xuyên, tôi có ý tưởng về vấn đề kết nối với internet có khả năng tồn tại nhất.

Đối với địa chỉ số cho Google, tôi chỉ sử dụng một địa chỉ mà tôi đã nhận được từ nslookup trước đây - tôi chưa bao giờ gặp phải trường hợp nào nó bị sập. Tôi cho rằng 8.8.8.8 sẽ đơn giản hơn.

Khá thường xuyên, khi mọi người gọi để nói rằng "internet đã ngừng hoạt động", hóa ra chỉ có DNS bị sập; chúng tôi có thể gọi những thứ khác nhau đó, nhưng theo quan điểm của các đồng nghiệp của tôi, internet không có sẵn trong cả hai trường hợp.


3

Tôi đã sử dụng 4.2.2.1 trong hơn 10 năm .. Trước khi có dịch vụ DNS công cộng của Googles. Nó dường như là một bộ đệm DNS đáng tin cậy và phản hồi ICMP.


3
4.2.2.2 dễ gõ hơn
user1886419

Tummy.com/articles/famous-dns-server này đề cập đến nó không dành cho mục đích sử dụng công cộng.
kevinf

2

Hãy thử máy chủ DNS của bạn, dù sao bạn cũng sẽ cần nó (và kết nối bên ngoài của ISP của bạn có thể bị hỏng). Nó thực sự phụ thuộc vào những gì bạn muốn. Nếu bạn cần truy cập dịch vụ cụ thể của s, hãy kiểm tra nó.


Điều này chỉ hợp lệ nếu bạn biết rằng máy chủ DNS của ISP đang phản hồi ping. Nó cũng có thể hoạt động nhưng chặn ICMP.
Olli

Đây là câu trả lời đơn giản và tốt nhất, IMO.
njbair
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.