असफल पिंग को कैसे दिखाया जाए?


24

जब हम विंडोज़ पिंग का उपयोग कर रहे हैं, तो यह विफल पिंग दिखाएगा। क्या उबंटू में समान कार्य है?

नेटवर्क को डीबग करते समय विफल पिंग काफी उपयोगी है। आप लोग इसे कैसे हल करेंगे? खैर, मैं केवल सरल समाधान चाहता हूं, मैं एक लंबी स्क्रिप्ट नहीं चाहता हूं।


2
क्या आप प्रश्न के पूरक के लिए एक नमूना आउटपुट या एक स्क्रीनशॉट प्रदान कर सकते हैं?
हरा

1
क्या आप देख रहे हैं या अधिक विस्तृत जानकारी 5 packets transmitted, 0 received, 100% packet loss, time 4032ms(पिंग टर्म समाप्त होने पर मुद्रित की गई जानकारी, स्वयं या Ctrl + C द्वारा) की तरह है? क्या आप प्रत्येक व्यक्तिगत पिंग के बारे में अलग-अलग डेटा खोज रहे हैं?
एलियाह कगन

1
लिनक्स बहुत बढ़िया है और यहाँ हम सभी इसे कई कारणों से पसंद करते हैं लेकिन ... कभी-कभी Windows को यह सही लगता है और लिनक्स को यह गलत लगता है। हां, यहां तक ​​कि बुनियादी सीएलआई उपकरणों में भी। हां, यहां तक ​​कि बुनियादी नेटवर्किंग सीएलआई टूल्स में भी! यदि स्क्रीन पर कोई संदेश प्राप्त करने का कोई आसान तरीका नहीं है, जब चीजें गलत हो जाती हैं, तो हमें इसे "एक सुविधा जो हम याद कर रहे हैं" के रूप में स्वीकार करना चाहिए। हम निश्चित रूप से यह दिखावा नहीं करना चाहते हैं कि यह कुछ इतना जटिल है कि हम यह पता नहीं लगा सकते हैं कि यह वास्तव में क्या है जो ओपी पूछ रहा है (विशेषकर जब यह हमारे चारों ओर कुछ मिलियन बक्से में डिफ़ॉल्ट रूप से एक सुविधा चालू है)।
ndemou

मैं शपथ ले सकता था कि यह सुविधा पहले के लिनिंग पिंग में मौजूद थी। यह MacOS में भी मौजूद है (जो यूनिक्स के शीर्ष पर बनाया गया है)। यह मुझसे परे है कि ऐसा क्यों नहीं होना चाहिए। मेरे पास एक पंक्ति है जो रुक-रुक कर काम करती है और लाइनों को स्पष्ट रूप से अलग-अलग होने के बजाय मैं कूदने की तलाश में ब्लैकआउट्स का पता लगाना चाहता हूं।
सिल्वियो लेवी

जवाबों:


26

सही उत्तर है: " फेल हुए खोया पिंग" जैसी कोई चीज नहीं है । (असफलता जैसे गंतव्य "अप्राप्य" हमेशा मुद्रित होते हैं, यह बिना किसी उत्तर के अलग है।)

पिंग उपयोगिता हर प्राप्त उत्तर को प्रिंट करती है, भले ही यह खाए जाने का फैसला किया गया हो कि यह विशिष्ट पिंग खो गया था। आदेश से उत्तर प्राप्त करना पूरी तरह से संभव है।

: यहां तक कि मेरे Android फ़ोन पर, शेयर पिंग उपयोगिता इन 2 विकल्प का समर्थन करता है
डी से पहले हर संदेश प्रिंट एक टाइमस्टैम्प
-O संदेश जब जबाब समय में प्राप्त नहीं होता है प्रिंट, और यह कम या ज्यादा क्या कहा गया था है
हालाँकि, ये विकल्प हर जगह समर्थित नहीं लगते हैं (उदाहरण के लिए डेबियन व्हीज़ी के पास उनकी कमी है जहाँ तक मुझे पता है, जबकि वे उनके पास हैं। busybox pingउनका समर्थन नहीं करता है)।

यहां एक उदाहरण आउटपुट है जिसे मैं प्राप्त करने में कामयाब रहा (महत्वहीन पिंग जवाब छोड़ दिया गया):

u0_a93@NX505J:/ $ ping -D -O 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
[1440545014.805478] 64 bytes from 8.8.8.8: icmp_seq=1 ttl=244 time=116 ms
~~~~~~~~~~
[1440545142.995443] 64 bytes from 8.8.8.8: icmp_seq=129 ttl=244 time=110 ms
[1440545144.885601] no answer yet for icmp_seq=130
[1440545145.455485] 64 bytes from 8.8.8.8: icmp_seq=131 ttl=244 time=568 ms
[1440545145.455780] 64 bytes from 8.8.8.8: icmp_seq=130 ttl=244 time=1569 ms
[1440545146.005850] 64 bytes from 8.8.8.8: icmp_seq=132 ttl=244 time=119 ms
~~~~~~~~~~
[1440545254.055962] 64 bytes from 8.8.8.8: icmp_seq=240 ttl=244 time=115 ms
^C
--- 8.8.8.8 ping statistics ---
240 packets transmitted, 240 received, 0% packet loss, time 239250ms
rtt min/avg/max/mdev = 109.062/138.757/1569.620/101.608 ms, pipe 2

ध्यान दें कि कैसे # 130 पहली बार गुम होने की सूचना है, फिर # 131 के बाद प्राप्त की गई है , और अंत में पैकेट नुकसान शून्य होने की सूचना है।


विंडोज के बारे में अतिरिक्त ध्यान दें:

विंडोज पर, पिंग लंबे समय तक उत्तर की प्रतीक्षा करता है और फिर इसे लापता घोषित करता है और बाद में आने पर इसे अनदेखा कर देता है।

डिफ़ॉल्ट रूप से, अंतराल 1 सेकंड है और टाइमआउट 4 सेकंड है, इसलिए:
कम आरटीटी पर, 1-सेकंड अंतराल के साथ पिंग्स भेजे जाएंगे।
RTT> 4 पर, पिंग्स को 4-सेकंड के अंतराल (या 5, निश्चित नहीं) के साथ भेजा जाएगा और सभी को विफल होने के रूप में रिपोर्ट किया जाएगा, जैसे कि सर्वर ने जवाब नहीं दिया।


1
-Oविकल्प के लिए +1 , मौजूद है और आईपुतिल्स-पिंग पैकेज संस्करण 3 से उबंटू भरोसेमंद (और लिनक्स मिंट 17.2) में अच्छा काम करता है: 20121221-4ubuntu1.1
Xen2050

11

आंशिक रूप से EvgEnZh द्वारा उत्तर से दूर जा रहा है, लेकिन अपने स्वयं के संस्करण के साथ:

ping -O -q 8.8.8.8

यह एक संदेश को प्रिंट करता है जब कोई उत्तर बहुत लंबा हो जाता है या कभी वापस नहीं आता है ( -O) और संदेशों को दबाता है जब वे वापस आते हैं ( -q)। इसका नतीजा यह है कि पैकेट गायब होने पर आपको केवल आउटपुट मिलता है। यह रुक-रुक कर होने वाली समस्याओं को बहुत आसान बना सकता है, इसलिए आपको उन कुछ स्थानों के लिए "काम किया" संदेशों के ढेर के माध्यम से झारना नहीं है जो इसे तोड़ दिया।


ध्यान दें कि -O ट्रिगर करने का मतलब केवल यह है कि विलंबता अपेक्षा से अधिक है। यह अक्सर एक वास्तविक समस्या को इंगित करता है, लेकिन हमेशा नहीं। उस लॉग को मैंने अपने उत्तर में पोस्ट किया था जो एक कमजोर जीपीआरएस कनेक्शन पर प्राप्त किया गया था, और भले ही 2 मिनट में मैंने केवल एकल आउट-आर्डर उत्तर पकड़ा, "देर" में आए कई उत्तर थे। भद्दा कनेक्शन कुछ ही समय में अभिभूत हो गया, एक पंक्ति में कई पिंग गायब होने की सूचना दी, और फिर वे सभी कुछ सेकंड के बाद आए। कनेक्शन अभी भी विश्वसनीय था (शायद जीपीआरएस ने आंतरिक रूप से पीछे हटने का काम संभाला था, मुझे नहीं पता), एसएसबी एक्सेस के लिए भी उपयोग करने के लिए बस एक चरम दर्द।
EvgEnZh

3

शायद ping -fआपके लिए उपयुक्त है। पिंग मैनुअल से:

-f

बाढ़ पिंग। प्रत्येक ECHO_REQUEST के लिए एक अवधि '' '' मुद्रित की जाती है, जबकि ECHO_REPLY के लिए एक बैकस्पेस प्राप्त होता है। यह एक पैकेट कितनी तेजी से गिराया जा रहा है इसका एक तीव्र प्रदर्शन प्रदान करता है। यदि अंतराल नहीं दिया जाता है, तो यह अंतराल को शून्य पर सेट करता है और पैकेट को तेजी से सेट करता है क्योंकि वे वापस आते हैं या प्रति सेकंड एक सौ गुना, जो भी अधिक हो। केवल सुपर-उपयोगकर्ता शून्य अंतराल के साथ इस विकल्प का उपयोग कर सकते हैं।

1 इको_रेक्स्ट के लिए हर सेकंड ऐसा लगेगा ping -i 1 -f 8.8.8.8


सुनिश्चित नहीं है कि यह एक नई सुविधा है या नहीं, मैं असफल पिंग्स देख सकता था।
王子 1986

रिपोर्ट किए गए पिंग्स को प्राप्त करने के लिए आपने किस विकल्प का उपयोग किया? एक असफल पिंग के लिए आपको क्या संदेश मिल रहा है?
डैनियल यूस्टे अरोका

जबकि मैंने सिर्फ पिंग का उपयोग किया है यह संदेश $ 172.18.1.12 पिंग 172.18.1.12 (172.18.1.12) 56 (84) बाइट्स डेटा की तरह है। 172.18.1.224 से icmp_seq = 1 गंतव्य होस्ट अनुपलब्ध 172.18.1.224 से icmp_seq = 2 गंतव्य होस्ट अनुपलब्ध 172.18.1.224 से icmp_seq = 3 गंतव्य होस्ट अप्राप्य
' 1986

2
"डेस्टिनेशन होस्ट अनरीचेबल" पिंग टाइमआउट के समान नहीं है
ndemou

पिंग -f जवाब नहीं है, क्योंकि यह एक रिकॉर्ड नहीं छोड़ता है। क्या जरूरत है एक सफल पिंग के लिए एक प्रकार की लाइन और विफलता के लिए एक अलग, इसलिए कोई तुरंत बता सकता है (ऐसी स्थिति में जहां सेवा रुक-रुक कर होती है) ब्लैकआउट कितनी बार और कब तक होते हैं।
सिल्वियो लेवी

0

-V विकल्प के साथ भी, पिंग ऐसा नहीं करते हैं। इस प्रश्न को देखें । लेकिन अगर यह आपके लिए वास्तव में महत्वपूर्ण (या मजेदार) है, तो आप स्रोत डाउनलोड कर सकते हैं, एक उपयुक्त प्रिंटफ कॉल शामिल करने के लिए कोड को संशोधित कर सकते हैं। उस के लिए एक अच्छी जगह विधि 'send_probe' (12.10 पर लाइन 619) के अंत में होगी ...

सबसे पहले आपको स्रोत मिलता है

apt-get source iputils
cd iputils*

संपादन करें

gedit ping.c

निर्माण, और उत्पन्न पैकेज स्थापित ...

apt-get install libsysfs-dev
dpkg-buildpackage

मैं यह करना चाहता हूं (और इस उत्तर को 10 बार बढ़ाता हूं) लेकिन कुछ गायब होना चाहिए। मैं sudo -s के तहत काम कर रहा हूँ। Ping.c के संपादन के बाद, अगर मैं "बनाने" का प्रयास करता हूं तो मुझे "घातक त्रुटि: sys / क्षमता.h: ऐसी कोई फ़ाइल नहीं मिलती"। यदि मैं उत्तर में अगली दो पंक्तियों का अनुसरण करता हूं (apt-get install और dpkg -...) तो मुझे कोई त्रुटि नहीं मिलती है लेकिन मुझे नहीं पता कि निष्पादन योग्य कहां रखा गया है। पुराना निष्पादन योग्य (/ बिन / पिंग) अभी भी है - मुझे पता है कि यह टाइमस्टैम्प से पुराना है और क्योंकि यह अलग तरह से व्यवहार नहीं करता है।
सिल्वियो लेवी

-1

सारे सवालों के जवाब देने के लिए धन्यवाद। ऐसा लगता है कि नवीनतम ubuntu पिंग पिंग को विफल दिखा सकता है।

एक बार फिर धन्यवाद।


1
नहीं, यह नहीं है (2015-जनवरी तक कम से कम) "डेस्टिनेशन होस्ट अनरेचेबल" पिंग टाइमआउट के समान नहीं है
ndemou

यह स्वीकृत उत्तर क्यों है? ping -O -q 8.8.8.8जाने का रास्ता है।
TheV0ID
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.