सामान्य अवधारणाएँ
टीटीएल (टाइम टू लिव) आईपी (इंटरनेट प्रोटोकॉल) हेडर में एक फ़ील्ड है जिसका उपयोग नेटवर्क पर डेटा पैकेट के जीवनकाल को सीमित करने के लिए किया जाता है। टीटीएल को एक पैकेट द्वारा छोड़े जाने से पहले बनाई जा सकने वाली हॉप्स की अधिकतम संख्या के रूप में परिभाषित किया गया है।
हर बार जब कोई पैकेट राउटर के माध्यम से भेजा जाता है, तो राउटर आईपी हेडर में टीटीएल मान को एक से कम कर देता है। यदि टीटीएल मान शून्य तक पहुंच जाता है, तो पैकेट को त्याग दिया जाता है और प्रेषक को एक आईसीएमपी (इंटरनेट कंट्रोल मैसेज प्रोटोकॉल) "टाइम एक्सीडेड" त्रुटि संदेश भेजा जाता है। ICMP त्रुटि संदेश में उस राउटर के बारे में जानकारी शामिल होगी जहां पैकेट को त्याग दिया गया था और पैकेट के राउंड ट्रिप का समय।
टीटीएल का मुख्य कार्य पैकेट को नेटवर्क पर अनिश्चित काल तक प्रसारित होने से रोकना है। यदि किसी पैकेट में बहुत अधिक टीटीएल है, तो यह अनिश्चित समय तक नेटवर्क पर प्रसारित होता रह सकता है, जिससे नेटवर्क की भीड़ और प्रदर्शन संबंधी समस्याएं हो सकती हैं।
टीटीएल ऑपरेशन का व्यावहारिक उदाहरण
मान लीजिए कि एक होस्ट ए, होस्ट बी को एक डेटा पैकेट भेजना चाहता है, और ए और बी के बीच पथ पर कई मध्यवर्ती राउटर हैं। होस्ट ए पैकेट के आईपी हेडर में एक प्रारंभिक टीटीएल मान सेट करता है, जो एक के बराबर है हॉप्स की संख्या दी गई है जिससे पैकेट को होस्ट बी तक पहुंचने से पहले पार करने की उम्मीद है।
जब पैकेट रूट पर पहले राउटर पर आता है, तो राउटर पैकेट के आईपी हेडर में टीटीएल मान पढ़ता है और इसे एक से कम कर देता है। यदि TTL मान शून्य तक पहुँच जाता है, तो राउटर पैकेट को त्याग देता है और होस्ट A को एक ICMP "समय समाप्त हो गया" त्रुटि संदेश भेजता है। यदि TTL मान शून्य से अधिक है, तो राउटर पैकेट को नेटवर्क में अगले राउटर को अग्रेषित करता है।
यह प्रक्रिया तब तक जारी रहती है जब तक पैकेट होस्ट बी तक नहीं पहुंच जाता या जब तक टीटीएल मान शून्य तक नहीं पहुंच जाता। यदि पैकेट होस्ट बी पर आता है, तो होस्ट बी होस्ट ए को एक पावती लौटाता है। यदि टीटीएल मान शून्य तक पहुंच जाता है, तो पैकेट को छोड़ दिया जाता है और होस्ट ए को एक आईसीएमपी "समय समाप्त" त्रुटि संदेश भेजा जाता है।
Linux में कमांड का उदाहरण
लिनक्स सिस्टम पर, टीटीएल मान को समायोजित करने का आदेश है ttl
. उदाहरण के लिए, लिनक्स पर एक होस्ट से 64 के टीटीएल मान वाला एक पैकेट आईपी पते वाले होस्ट को भेजना 192.168.1.2
, आप निम्न आदेश का उपयोग कर सकते हैं:
ping -c 1 -t 64 192.168.1.2
इस आदेश में, -c 1
निर्दिष्ट करता है कि एक पैकेट भेजा जाएगा और -t 64
निर्दिष्ट करता है कि टीटीएल मान 64 होगा। आदेश ping
निर्दिष्ट आईपी पते पर एक आईसीएमपी (इंटरनेट कंट्रोल मैसेज प्रोटोकॉल) पैकेट भेजता है और रिमोट होस्ट से प्रतिक्रिया की प्रतीक्षा करता है।
यदि दूरस्थ होस्ट प्रतिक्रिया देता है, तो इसके समान एक संदेश प्रदर्शित किया जाएगा:
64 bytes from 192.168.1.2: icmp_seq=1 ttl=63 time=1.23 ms
इस संदेश में, ttl=63
इंगित करता है कि दूरस्थ होस्ट तक पहुंचने से पहले रूट पर पहले राउटर पर टीटीएल मान एक से कम हो गया था।
यदि टीटीएल मान बहुत कम है, उदाहरण के लिए, यदि इसे 1 पर सेट किया गया है, तो पैकेट दूरस्थ होस्ट तक नहीं पहुंच सकता है। इसके बजाय, स्रोत होस्ट को "समय समाप्त हो गया" संदेश भेजा जाएगा।
संक्षेप में, आदेश ping
लिनक्स पर इसका उपयोग निर्दिष्ट टीटीएल मान के साथ पैकेट भेजने और नेटवर्क पर पैकेट के पथ में हॉप्स की संख्या को ट्रैक करने के लिए किया जा सकता है। यह नेटवर्क समस्या निवारण और प्रदर्शन अनुकूलन के लिए उपयोगी हो सकता है।
क्या टीटीएल का उपयोग विंडोज़ पर किया जा सकता है?
हां, आप विंडोज़ सिस्टम पर टीटीएल मान को भी समायोजित कर सकते हैं। टीटीएल मान को समायोजित करने के लिए विंडोज़ में उपयोग की जाने वाली कमांड है ping
. लिनक्स की तरह, कमांड ping
रिमोट होस्ट को पैकेट भेजने के लिए उपयोग किया जाता है और आप विकल्प का उपयोग करके टीटीएल मान को समायोजित कर सकते हैं -i
.
उदाहरण के लिए, विंडोज़ पर एक होस्ट से 64 के टीटीएल मान वाला एक पैकेट आईपी पते वाले होस्ट को भेजना 192.168.1.2
, आप निम्न आदेश का उपयोग कर सकते हैं:
ping 192.168.1.2 -i 64
इस आदेश में, -i 64
निर्दिष्ट करता है कि टीटीएल मान 64 होगा। यदि दूरस्थ होस्ट प्रतिक्रिया देता है, तो इसके समान एक संदेश प्रदर्शित किया जाएगा:
Reply from 192.168.1.2: bytes=32 time=1ms TTL=63
इस संदेश में, TTL=63
इंगित करता है कि दूरस्थ होस्ट तक पहुंचने से पहले रूट पर पहले राउटर पर टीटीएल मान एक से कम हो गया था।
संक्षेप में, आदेश ping
विंडोज़ पर इसका उपयोग निर्दिष्ट टीटीएल मान के साथ पैकेट भेजने और नेटवर्क पर पैकेट के पथ में हॉप्स की संख्या को ट्रैक करने के लिए भी किया जा सकता है। यह नेटवर्क समस्या निवारण और प्रदर्शन अनुकूलन के लिए उपयोगी हो सकता है।