मैं इस IP पते पर ट्रैसरूट क्यों कर सकता हूं, लेकिन पिंग नहीं?


21

मेरे पास एक आईपी एड्रेस है और मैं इसे ट्रेसरआउट कर सकता हूं, लेकिन मैं पिंग नहीं कर सकता।

आप देखते हैं, मैं ट्रेसरआउट कर सकता हूं 43.224.226.50:

dele-MBP:~ ll$ traceroute 43.224.226.50
traceroute to 43.224.226.50 (43.224.226.50), 64 hops max, 52 byte packets
 1  router.asus.com (192.168.2.1)  2.082 ms  1.039 ms  0.924 ms
 2  100.64.0.1 (100.64.0.1)  3.648 ms  3.795 ms  3.955 ms
 3  118.112.212.225 (118.112.212.225)  4.252 ms  4.569 ms  4.168 ms
 4  171.208.203.73 (171.208.203.73)  6.378 ms
    171.208.198.25 (171.208.198.25)  6.943 ms
    171.208.203.61 (171.208.203.61)  7.055 ms
 5  202.97.36.225 (202.97.36.225)  38.149 ms
    202.97.36.221 (202.97.36.221)  39.949 ms
    202.97.36.225 (202.97.36.225)  40.780 ms
 6  202.97.90.158 (202.97.90.158)  37.894 ms
    202.97.94.146 (202.97.94.146)  39.885 ms  39.354 ms
 7  202.97.38.166 (202.97.38.166)  45.324 ms
    202.97.39.149 (202.97.39.149)  40.097 ms
    202.97.94.77 (202.97.94.77)  40.580 ms
 8  202.97.51.118 (202.97.51.118)  374.218 ms
    202.97.27.238 (202.97.27.238)  187.573 ms
    202.97.86.138 (202.97.86.138)  197.524 ms
 9  218.30.53.190 (218.30.53.190)  201.597 ms
    218.30.54.190 (218.30.54.190)  194.194 ms
    218.30.53.190 (218.30.53.190)  204.027 ms
10  182.54.129.91 (182.54.129.91)  220.026 ms  282.360 ms
    et-11-1-5.r01.laxus01.us.bb.bgp.net (182.54.129.38)  185.700 ms
11  182.54.129.91 (182.54.129.91)  229.700 ms  508.509 ms  266.683 ms
12  * 212.95.128.2 (212.95.128.2)  565.161 ms *
13  43.224.226.50 (43.224.226.50)  200.531 ms  201.911 ms  191.566 ms

लेकिन मैं इसे पिंग नहीं कर सकता:

dele-MBP:~ ll$ ping 43.224.226.50
PING 43.224.226.50 (43.224.226.50): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
Request timeout for icmp_seq 5
Request timeout for icmp_seq 6
Request timeout for icmp_seq 7
Request timeout for icmp_seq 8
Request timeout for icmp_seq 9
Request timeout for icmp_seq 10
Request timeout for icmp_seq 11

यदि ICMP पर प्रतिबंध है, tracerouteतो भी काम नहीं करना चाहिए। इसका क्या कारण है?

मैंने जाँच की सर्वर का फ़ायरवॉल बंद है।


क्या ऐसा हो सकता है कि पिंग के लिए समय समाप्त हो गया है, और यह अधिक सफल है, और अधिक समय सीमा दी गई है? ट्रेसरआउट ने कुछ नोड्स के लिए 500 से अधिक एमएस दिए।
vsz

क्या किसी उत्तर ने आपकी मदद की? यदि हां, तो आपको जवाब स्वीकार करना चाहिए ताकि सवाल हमेशा के लिए पॉपअप न हो, जवाब की तलाश में। वैकल्पिक रूप से, आप अपना स्वयं का उत्तर प्रदान कर सकते हैं और स्वीकार कर सकते हैं।
रॉन मौपिन

जवाबों:


39

एक ऐसी ही सवाल पर यहाँ ल्यूक सैवेज यह पूरी तरह स्पष्ट किया:

Traceroute अपने आप में एक प्रोटोकॉल नहीं है, यह एक एप्लिकेशन है और उपयोग किए गए प्रोटोकॉल आपके द्वारा उपयोग किए जा रहे कार्यान्वयन पर निर्भर करता है। मुख्य रूप से यह ICMP है।

दो मुख्य कार्यान्वयन हैं:

tracert - tracert एक Windows अनुप्रयोग है जो अंतिम गंतव्य पते पर हॉप्स को मैप करने के लिए TTL फ़ील्ड को बढ़ाने के साथ ICMP पैकेट का उपयोग करता है।

traceroute - traceroute एक * nix एप्लीकेशन है जो अधिकांश लिनक्स आधारित सिस्टम पर उपलब्ध है, जिसमें नेटवर्क डिवाइस और सिस्को डिवाइस शामिल हैं। यह अंतिम गंतव्य के लिए हॉप्स को मैप करने के लिए एक वृद्धिशील TTL फ़ील्ड के साथ UDP पैकेट का उपयोग करता है।

इनके बीच का अंतर जानना उपयोगी है क्योंकि कुछ नेटवर्क अब डिफ़ॉल्ट रूप से ICMP को ब्लॉक कर देते हैं, इसलिए विंडोज मशीन से पिंग और ट्रैसर्ट दोनों ही विफल हो जाएंगे लेकिन लिनक्स डिवाइस से ट्रैसरआउट अभी भी काम कर सकता है।


2
इसलिए, मेरा सर्वर IP ट्रैसरआउट क्यों कर सकता है, लेकिन पिंग नहीं?
244boy

10
आपके साझा किए गए आउटपुट से मैं देख सकता हूं कि आप tracerouteकमांड का उपयोग कर रहे हैं और न tracertकि मुझे यह सोचने के लिए मिला है कि आप यूनिक्स या ग्नू आधारित ऑपरेटिंग सिस्टम का उपयोग कर रहे हैं। उत्तर में मैंने उल्लेख किया है कि आप देख सकते हैं कि यूनिक्स आधारित सिस्टम उपयोग नहीं कर ICMPरहे हैं traceroute। दूसरे शब्दों में, चूंकि PINGउपयोग कर ICMPरहा है (जो मुझे लगता है कि जिस सिस्टम तक आप पहुंचने की कोशिश कर रहे हैं , उससे अवरुद्ध है ) और ट्रेसरआउट फील्ड के UDPएक वृद्धि विधि के साथ पैकेट का उपयोग कर TTLरहा है (जो मुझे लगता है कि आपके द्वारा पहुंचने की कोशिश कर रहे सिस्टम पर अवरुद्ध नहीं है) PINGविफल रहता है लेकिन Tracerouteसफल होता है।
भोलेआर

4
अपनी पोस्ट में एक नई टिप्पणी जोड़ने के बजाय जब कोई 244boy जैसा कोई सुधार सुझाता है, तो बेहतर होगा कि अपनी पोस्ट को संपादित करें ताकि उत्तर पढ़ने वाले भविष्य के लोगों को पूर्ण उत्तर प्राप्त करने के लिए सभी टिप्पणियों को पढ़ना न पड़े।
कीता - मोनिका

@ na @veRSA सख्ती से बोल रहा है, ICMP tracerouteका उपयोग कर रहा है , भले ही यह यूडीपी भेज रहा हो , अर्थात् यह TTL exceededरास्ते में हॉप्स से संदेशों की अपेक्षा करता है और मूल्यांकन करता है। एक होस्ट जो सभी ICMP को ब्लॉक करता है , वह एक बुरा विचार है, लेकिन pingजब ICMP echoअनुरोध या उत्तर लक्ष्य होस्ट पर अवरुद्ध हो जाते हैं , तो यह असफल हो जाएगा
Hagen von Eitzen

17

@ Na addveRSA के उत्तर में जोड़ने के लिए , यदि पथ में फ़िल्टरिंग / फ़ायरवॉलिंग है, तो ऐसी स्थिति भी हो सकती है जहां ICMP "इको रिप्लाई" (पिंग) पैकेट अवरुद्ध है, लेकिन ICMP "समय पार हो गया" (ट्रेसर्ट) पैकेट की अनुमति है। । यह केवल ICMP (Windows) का उपयोग करने पर भी समान परिणाम देगा।

दोनों ही मामलों में (यूडीपी या आईसीएमपी का उपयोग करने वाला प्रेषक) त्रुटि संचार आईसीएमपी (यानी एक पिंग या ट्रेसर * पैकेट के लिए उत्तर देने वाला नोड) होगा।


6

आइए देखें कि क्या होता है?

8.8.8.8 एक अच्छा उदाहरण बनाता है, क्योंकि कम से कम मेरे स्थान से, मैं इसके साथ tracerouteऔर दोनों तक पहुंच सकता हूं ping

पहले आइए ping 8.8.8.8देखें कि क्या होता है:

$ tcpdump -n host 8.8.8.8 or icmp
15:36:51.045994 IP 10.4.27.179 > 8.8.8.8: ICMP echo request, id 7215, seq 0, length 64
15:36:51.062458 IP 8.8.8.8 > 10.4.27.179: ICMP echo reply, id 7215, seq 0, length 64
15:36:52.048350 IP 10.4.27.179 > 8.8.8.8: ICMP echo request, id 7215, seq 1, length 64
15:36:52.073657 IP 8.8.8.8 > 10.4.27.179: ICMP echo reply, id 7215, seq 1, length 64

तो pingएक ICMP इको रिक्वेस्ट भेजता है, और एक ICMP इको रिप्लाई की उम्मीद करता है।

अब traceroute -n 8.8.8.8:

15:41:31.803324 IP 10.4.27.179.44838 > 8.8.8.8.33435: UDP, length 24
15:41:31.815184 IP 10.250.32.2 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.815343 IP 10.4.27.179.44838 > 8.8.8.8.33436: UDP, length 24
15:41:31.819654 IP 10.250.32.2 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.819791 IP 10.4.27.179.44838 > 8.8.8.8.33437: UDP, length 24
15:41:31.824609 IP 10.250.32.2 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.824754 IP 10.4.27.179.44838 > 8.8.8.8.33438: UDP, length 24
15:41:31.830506 IP 64.124.23.161 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.830649 IP 10.4.27.179.44838 > 8.8.8.8.33439: UDP, length 24
15:41:31.834469 IP 64.124.23.161 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.834565 IP 10.4.27.179.44838 > 8.8.8.8.33440: UDP, length 24
15:41:31.840962 IP 64.124.23.161 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.841061 IP 10.4.27.179.44838 > 8.8.8.8.33441: UDP, length 24
15:41:31.847440 IP 64.125.26.21 > 10.4.27.179: ICMP time exceeded in-transit, length 148
15:41:31.847634 IP 10.4.27.179.44838 > 8.8.8.8.33442: UDP, length 24
15:41:31.853664 IP 64.125.26.21 > 10.4.27.179: ICMP time exceeded in-transit, length 148
15:41:31.853761 IP 10.4.27.179.44838 > 8.8.8.8.33443: UDP, length 24
15:41:31.859221 IP 64.125.26.21 > 10.4.27.179: ICMP time exceeded in-transit, length 148
15:41:31.859269 IP 10.4.27.179.44838 > 8.8.8.8.33444: UDP, length 24
15:41:31.864149 IP 64.125.31.15 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.864192 IP 10.4.27.179.44838 > 8.8.8.8.33445: UDP, length 24
15:41:31.870843 IP 64.125.31.15 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.870922 IP 10.4.27.179.44838 > 8.8.8.8.33446: UDP, length 24
15:41:31.876200 IP 64.125.31.15 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.876352 IP 10.4.27.179.44838 > 8.8.8.8.33447: UDP, length 24
15:41:31.882148 IP 64.125.13.111 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.882249 IP 10.4.27.179.44838 > 8.8.8.8.33448: UDP, length 24
15:41:31.890076 IP 64.125.13.111 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.890156 IP 10.4.27.179.44838 > 8.8.8.8.33449: UDP, length 24
15:41:31.896100 IP 64.125.13.111 > 10.4.27.179: ICMP time exceeded in-transit, length 36
15:41:31.896163 IP 10.4.27.179.44838 > 8.8.8.8.33450: UDP, length 24
15:41:31.905037 IP 108.170.242.225 > 10.4.27.179: ICMP time exceeded in-transit, length 60
15:41:31.905235 IP 10.4.27.179.44838 > 8.8.8.8.33451: UDP, length 24
15:41:31.913206 IP 108.170.242.225 > 10.4.27.179: ICMP time exceeded in-transit, length 60
15:41:31.913283 IP 10.4.27.179.44838 > 8.8.8.8.33452: UDP, length 24
15:41:31.923428 IP 108.170.242.241 > 10.4.27.179: ICMP time exceeded in-transit, length 76
15:41:31.923520 IP 10.4.27.179.44838 > 8.8.8.8.33453: UDP, length 24
15:41:31.932266 IP 108.170.237.9 > 10.4.27.179: ICMP time exceeded in-transit, length 60
15:41:31.932441 IP 10.4.27.179.44838 > 8.8.8.8.33454: UDP, length 24
15:41:31.939961 IP 209.85.251.9 > 10.4.27.179: ICMP time exceeded in-transit, length 76
15:41:31.940043 IP 10.4.27.179.44838 > 8.8.8.8.33455: UDP, length 24
15:41:31.947460 IP 108.170.237.21 > 10.4.27.179: ICMP time exceeded in-transit, length 60
15:41:31.947508 IP 10.4.27.179.44838 > 8.8.8.8.33456: UDP, length 24
15:41:31.954824 IP 8.8.8.8 > 10.4.27.179: ICMP 8.8.8.8 udp port 33456 unreachable, length 36
15:41:31.954888 IP 10.4.27.179.44838 > 8.8.8.8.33457: UDP, length 24
15:41:31.963601 IP 8.8.8.8 > 10.4.27.179: ICMP 8.8.8.8 udp port 33457 unreachable, length 36
15:41:31.963671 IP 10.4.27.179.44838 > 8.8.8.8.33458: UDP, length 24
15:41:31.972407 IP 8.8.8.8 > 10.4.27.179: ICMP 8.8.8.8 udp port 33458 unreachable, length 36

इसलिए traceroute, मैंने जो कम से कम कार्यान्वयन स्थापित किया है, वह आईसीएमपी नहीं भेजता है। बल्कि, यह यूडीपी पैकेट भेजता है।

इस ट्रेस में दिखाई नहीं दे रहा है (हालांकि यह होगा, अगर मैंने क्रिया को बढ़ाने के लिए दिया tcpdumpहै -v) यह है कि पहले जांच में 1 का ttl है, और फिर यह बाद के जांच के लिए ttl में वृद्धि करता है। यह मेरे और 8.8.8.8 के बीच के राउटर को ICMP ttl से अधिक त्रुटि के साथ प्रतिक्रिया करने का कारण बनता है, जो कि कैसे ट्रेसरआउट ने यहां और वहां के बीच राउटर को पता चलता है।

आखिरकार यह ttl 8.8.8.8 तक पहुंचने के लिए काफी लंबा है, और 8.8.8.8 ICMP पोर्ट के साथ प्रतिक्रिया नहीं करता है, क्योंकि इसमें UDP पोर्ट 44838 पर सुनने की कोई प्रक्रिया नहीं है। यह ट्रेसरूटआउट जानता है कि यह अंतिम गंतव्य तक पहुंच गया है। ।

यहाँ के बीच कुछ और वहाँ ब्लॉक कर रहा है, तो सभी ICMP, तो न पिंग और न ही ट्रेसरूट काम करेंगे।

लेकिन यह आमतौर पर ऐसा नहीं है कि सभी आईसीएमपी अवरुद्ध है, हालांकि यह भी दुर्लभ नहीं है। सभी ICMP को अवरुद्ध करना समस्याग्रस्त है: उदाहरण के लिए यह MTU खोज को तोड़ता है , जो ICMP विखंडन आवश्यक त्रुटि पर निर्भर करता है। ICMP पैकेट में एक प्रकार और एक कोड होता है, और जिम्मेदार नेटवर्क ऑपरेटर केवल कुछ प्रकारों या कोडों को चुन सकते हैं, जो उन लोगों के लिए दुर्व्यवहार करने या किसी विशेष जानकारी का खुलासा करने की क्षमता रखते हैं।

उदाहरण के लिए, कुछ होस्ट ICMP इको रिक्वेस्ट का बिल्कुल भी जवाब नहीं देंगे और इस तरह पिंग काम नहीं करेगा। विचार यह है कि पिंग्स का जवाब नहीं देने से, एक हमलावर के लिए यह पता लगाना कठिन है कि मेजबान नेटवर्क पर क्या मौजूद है। व्यवहार में यह संदिग्ध है, क्योंकि एक मेजबान के लिए जांच करने के अन्य तरीके हैं। उदाहरण के लिए, कोई TCP SYN को पोर्ट 80 पर वेबसर्वर खोजने के लिए भेज सकता है।

जब वे UDP डेटाग्राम या TCP SYN को पोर्ट पर लाते हैं, जिस पर उनके पास सुनने की कोई प्रक्रिया नहीं होती है, और यह ट्रैसरआउट तोड़ता है, तो कई होस्ट भी ICMP पोर्ट को नहीं भेज सकते हैं। फिर से विचार यह है कि एक हमलावर के लिए नेटवर्क को मैप करना अधिक कठिन है, लेकिन फिर से यह एक हमलावर के लिए केवल एक छोटी सी हताशा है।

क्योंकि ट्रेसरआउट एक कार्यक्रम है और कोई विशेष प्रोटोकॉल नहीं है, इसमें जांच के अन्य तरीके हैं। वे सभी राउटर्स की खोज के लिए टीटीएल को बढ़ाने पर भरोसा करते हैं, लेकिन विभिन्न प्रकार के जांच को भेजा जा सकता है, जो एंडपॉइंट से प्रतिक्रिया प्राप्त करने का मौका कम या ज्यादा हो सकता है। उदाहरण के लिए, मेरी man tcpdumpसूची -IICMP इको जांच का उपयोग करने के लिए एक विकल्प को सूचीबद्ध करती है , जो पिंग के समान है। इसमें -TUDP के बजाय TCP SYN जांच का भी उपयोग करना है। यदि आप जानते हैं कि एक मेजबान जवाब देगा pingतो -Iबहुत मायने रखता है। यदि आप जानते हैं कि मेजबान एक विशेष टीसीपी पोर्ट पर सुन रहा है, तो -Tसमझ में आता है, शायद -pपोर्ट के चयन के विकल्प के साथ संयोजन में ।

दुर्भाग्य से इन विकल्पों में रूट या विशेष क्षमताओं की आवश्यकता हो सकती है, इसलिए UDP एक निष्पक्ष डिफ़ॉल्ट बनाता है। वास्तव में एक समान उपकरण, tracepathयह उसके मैन पेज में कहने के लिए है:

विवरण

यह इस पथ के साथ एमटीयू की खोज करने के लिए पथ का पता लगाता है। यह यूडीपी पोर्ट पोर्ट या कुछ यादृच्छिक पोर्ट का उपयोग करता है। यह ट्रेसरआउट के समान है, केवल सुपरसुसर विशेषाधिकारों की आवश्यकता नहीं है और इसमें कोई फैंसी विकल्प नहीं है।


2

TLDR; पिंग्स को एक दूरस्थ होस्ट पर अवरुद्ध (ICMP ब्लॉक) किया जा सकता है, लेकिन ट्रैसरआउट अभी भी यूडीपी या टीसीपी / आईपी (कोई भी प्रोटोकॉल राउटिंग स्टैंडर्ड नेटवर्क) का उपयोग करके इसका मार्ग पा सकता है; रेफ /networkengineering//a-36509/ ; 58968 ) है। ध्यान दें कि आपका पिंग मेजबान तक भी पहुंच सकता है (जब तक कि आपके पास शायद बहुत ही स्मार्ट फ़ायरवॉल आईसीएमपी पिंग ट्रैफ़िक को अवरुद्ध न कर दे), मेजबान बस जवाब नहीं देता है।


0

Traceroute के लिए ICMP के बजाय UDP का उपयोग कर लिनक्स , फ़ायरवॉल ने उस UDP पोर्ट को ब्लॉक नहीं किया


0

आप nmap (insecure.org) इंस्टॉल कर सकते हैं और यूडीपी या टीसीपी और किसी भी पोर्ट के साथ नैपिंग का उपयोग कर सकते हैं। ब्लॉकिंग आउटबाउंड के साथ नेटवर्क पर बढ़िया काम करता है।

वेब सर्वर को पिंग करने के लिए --tcp -p 80,443

एक टाइम सर्वर को पिंग करने के लिए - nudp -p 123

https://nmap.org/book/nping-man.html


0

आपके प्रश्न का एक संक्षिप्त उत्तर यह है कि pingउपयोगिता ICMP प्रोटोकॉल पर निर्भर करती है जो कभी-कभी नेटवर्क फ़ायरवॉल या डिवाइस पर फ़ायरवॉल पर ही ब्लॉक हो जाती है। सबसे सामान्य कारण है कि नेटवर्क के प्रवेश को रोकने के लिए आईसीएमपी नेटवर्क की "स्कैनिंग" को रोकना है जिसे वे सुरक्षा चिंता मानते हैं। tracerouteलिनक्स पर उपयोगिता यूडीपी, एक पूरी तरह से अलग प्रोटोकॉल, जो इस मामले में में नेटवर्क व्यवस्थापक द्वारा अवरोधित नहीं उपयोग करता है। यूडीपी के उपयोग कई प्रकार के हैं और इसे अवरुद्ध करने से कई चीजें एक नेटवर्क पर बेकार हो जाएंगी। जिस प्रकार के ICMP 'कंट्रोल मैसेज' की जरूरत होती है pingवह एक प्रोटोकॉल का एक सबसेट होता है जिसका अर्थ है कि उस प्रकार के ICMP पैकेट को ब्लॉक करने से नेटवर्क पर समस्या कम होती है और इसलिए UDP की तुलना में ब्लॉक होने की अधिक संभावना होती है।

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