به "وبلاگ فالنیک ( ایران اچ پی)" خوش آمدید    |   وبسایت فالنیک (ایران اچ پی)
تماس با فالنیک : 8363-021
سرور و شبکه

ttl در پینگ به چه معناست و چگونه کاهش و افزایش پیدا می کند؟

وقتی بسته دیتا در اینترنت ایجاد و ارسال می‌شود، این ریسک وجود دارد که مسیرش را از روتری به روتر دیگر ادامه دهد و پایانی برای آن نباشد. بنابراین تاریخ انقضایی تعریف شد با نام time to live یا hop limit. در ادامه به بررسی این مفاهیم می‌پردازیم. با فالنیک همراه باشید.

خرید سرور با بهترین قیمت و گارانتی طلایی فالنیک
فالنیک با دارا بودن سبد کاملی از سرورهای اچ پی و تنها دارنده گارانتی رسمی و معتبر سرور اچ پی در ایران، خرید سرور را با گارانتی طلایی، سرویس دوره ای و مشاوره خرید رایگان ارائه می‌کند. شماره تماس مشاوره و اطلاع از قیمت سرور: 02154591914
خرید سرور

تی تی ال چیست و چگونه کار می کند؟

برای اینکه مطمئن شویم بسته‌های IP عمر محدودی در شبکه دارند تمام بسته‌های آی پی دارای فیلد هدر 8 بیتی Time To Live (در IPv4) و یا Hop Limit (در IPv6) هستند. این فیلد، حداکثر تعداد هاپ های لایه سه (معمولا روتر) که در مسیری که بسته به مقصد می‌پیماید وجود دارد را مشخص می‌کند.

در تصویر زیر فیلد Time to Live در هدر IPv4 را می‌بینید.

تی تی ال چیست و چگونه کار می کند؟
فیلد Time to Live در هدر IPv4

در تصویر زیر فیلد Hop Limit در هدر IPv6 را می‌بینید.

ttl چیست و چگونه کار می کند؟
فیلد Hop Limit در هدر IPv6
پیشنهاد مطالعه

Hop چیست؟

هر دستگاه لایه سه در شبکه، یک هاپ محسوب می‌شود. هر بار که بسته به یک هاپ می‌رسد، از مقدار Hop Limit یا ttl یکی کم می‌شود و به مسیرش ادامه می‌دهد. وقتی بسته IPv6 با مقدار هاپ لیمیتِ صفر، به دستگاهی برسد که مقصدش نیست، توسط دستگاه حذف – Discard می‌شود و پیام خطای ICMP به هاست ایجاد کننده آن، می‌فرستد. وقتی مقدار آن صفر یا یک باشد و به دستگاهی برسد که مقصدش است، Accept می‌شود.

پیغام خطای ICMP در IPv6 به صورت زیر است:

  • IPv6: type 3: ‘Time Exceeded’, code 0: ‘Hop limit exceeded in transit’
ttl چیست؟
پیغام خطای ICMP در IPv6

در مورد IPv4 وضعیت ساده‌تری داریم: اگر این فیلد صفر باشد، بسته حذف می‌شود. بدین ترتیب در شبکه از ایجاد لوپ مسیریابی و مواردی از این دست، جلوگیری و از Fail شدن روتر پیشگیری می‌شود.

پیغام خطای ICMP در IPv4 به صورت زیر است:

  • IPv4: type 11: ‘Time Exceeded’, code 0: ‘time to live exceeded in transit’
خطای ICMP در IPv4
پیغام خطای ICMP در IPv4

زمان ttl با ثانیه بیان می‌شود اما مدت زمانی که طول می‌کشد بسته پردازش شود خیلی کمتر از یک ثانیه است. بر این اساس حداکثر زمانی که بسته در شبکه وجود دارد 4.25 دقیقه یا 255 ثانیه است. چون فیلد 8 بیتی است حداکثر مقدار آن می‌تواند 256 باشد یعنی در واحد باینری می‌شود 11111111.

خب، پس Time to live چیست؟ TTL یا Time to live به مدت زمان یا تعداد Hop که بسته قبل از حذف توسط روتر می‌تواند در شبکه وجود داشته باشد گفته می‌شود. 

کاربردهای دیگر ttl

TTL در CDN Caching و DNS Caching هم استفاده می‌شود.

در DNS برای هر رکورد، ttl تعریف می‌شود تا مدت زمان کش بودن اطلاعات مربوط به دامنه و آی پی آدرس مشخص شود. با کش شدن این اطلاعات، بار کمتری به سرور DNS وارد می‌شود و زمان لود صفحات کاهش می‌یابد.

ttl در شبکه توزیع محتوا یا CDN هم کاربرد دارد و بازه زمانی لازم برای مراجعه به سرور هاست و آپدیت محتوا را مشخص می‌کند. نتیجه آن افزایش سرعت وب سایت و افزایش سرعت ارایه محتوا به کاربر است.

پیشنهاد مطالعه

مقدار پیش فرض ttl و Hop Limit

مقدار پیش فرض ttl و Hop Limit در سیستم عامل‌های مختلف فرق دارد برخی از آنها را در ادامه می‌بینید:

  • Linux kernel 2.4 (circa 2001): 255for TCP, UDP and ICMP
  • Linux kernel 4.10 (2015): 64for TCP, UDP and ICMP
  • Windows XP (2001): 128for TCP, UDP and ICMP
  • Windows 10 (2015): 128for TCP, UDP and ICMP
  • Windows Server 2008: 128for TCP, UDP and ICMP
  • Windows Server 2019 (2018): 128for TCP, UDP and ICMP
  • MacOS (2001): 64for TCP, UDP and ICMP

می‌توان از مقدار ttl یا hop limit به نوع سیستم عاملی که در هاست استفاده می‌شود پی برد. مثلا ttl 64 چیست؟ مربوط به سیستم عامل MacOS است.

برای استفاده از خدمات و تعمیر سرور hp روی لینک بزنید.

ttl در پینگ به چه معناست؟

دستورات رایج شبکه، ping و traceroute هر دو از ttl استفاده می‌کنند. ابتدا بگوییم Ping مخفف چیست. Ping مخفف Packet InterNet Groper و ابزاری برای عیب یابی اتصالات شبکه است.

معنی ttl in ping چیست؟ پینگ مستقیما برای ttl یا hop limit استفاده نمی‌شود اما خروجی این دستور، ttl یا hop limit بسته آی پی ورودی که برای پیام‌های ICMP Echo Response دریافت می‌شود را نشان می‌دهد.

ttl در پینگ به چه معناست؟
مقدار ttl در دستور ping

مثلا دستور زیر به همراه پینگ، در IPv4 استفاده می‌شود:

sudo tcpdump -vvnni any ‘icmp[icmptype] == 8’

دستور زیر به همراه پینگ، در IPv6 استفاده می‌شود:

sudo tcpdump -vvnni any ‘icmp[icmptype] == 128’

پیشنهاد مطالعه

تغییر ttl در سیستم عامل‌های لینوکس و ویندوز

برای کاهش یا افزایش ttl در سربرگ ip packet روش های مختلفی بسته به نوع سیستم عامل وجود دارد که در ادامه به تغییر ttl در لینوکس و ویندوز می‌پردازیم.

تغییر ttl در لینوکس

تغییر ttl در IPv4 در لینوکس به صورت زیر است:

برای تغییر ttl از دستور زیر استفاده کنید:

sysctl -w net.ipv4.ip_default_ttl=128

در این دستور مقدار ttl را 128 تعریف می‌کنیم. این تغییر موقتی است و تا زمان ریبوت بعدی اعمال می‌شود.

اگر بخواهید مقدار ttl به صورت دایم و ثابت تغییر کند، از روش های زیر استفاده کنید:

  1. ادیت فایل/etc/sysctl.conf 
  2. ایجاد فایل جدید با پسوند .conf در دایرکتوری /etc/sysctl.d/
  3. ادیت فایل موجود در دایرکتوری/etc/sysctl.d/ 

هر مسیری که انتخاب می‌کنید دستور زیر را به فایل اضافه و ذخیره کرده و خارج شوید:

net.ipv4.ip_default_ttl = 128

سپس سیستم را ریبوت کنید.

تغییر ttl در IPv6 در لینوکس مشابه IPv4 است ولی باید IPv4 را به IPv6 تغییر دهید.

تغییر ttl در ویندوز

تغییر ttl در IPv4 در ویندوز به صورت زیر است:

برای نمایش مقدار کنونی ttl در command prompt دستور زیر را تایپ کنید:

C:\WINDOWS\system32&gt;netsh int ipv4 show global<br>Querying active state…<br>​<br>General Global Parameters<br>———————————————<br>Default Hop Limit &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; : 128 hops<br>…

با دستور زیر بلافاصله و به صورت دایم مقدار ttl تغییر می‌کند:

netsh int ipv4 set global defaultcurhoplimit=64

تغییر ttl در IPv6 در ویندوز مشابه IPv4 است ولی باید IPv4 را به IPv6 تغییر دهید.

نحوه افزایش و کاهش ttl در dns

ttl در دامین و DNS مشخص کننده مدت زمان کش شدن دامنه و آی پی سرور در سیستم کلاینت است. مقدار ttl در dns را می‌توان زیاد و کم کرد. ttl بیشتر یا کمتر کاملا بستگی به کاربرد و تغییراتی دارد که در آدرس و وب سرور و رکوردها اعمال می‌شود.

 cpanel یک روش برای این کار است. مقدار پیش فرض در سی پنل 14400 و معادل 4 ساعت است.

نحوه افزایش و کاهش ttl در dns به ترتیب زیر است:

  1. وارد کنترل پنل در cpanel شوید.
  2. در قسمت Domains گزینهZone Editor را بزنید.
  3. از لیست نمایش داده شده گزینه Manage مربوط به دامنه موردنظرتان را انتخاب کنید.
  4. در لیست رکوردهای دامنه روی گزینه Edit کلیک کنید.
  5. مقدار TTL را بر حسب ثانیه تغییر دهید و Save کنید.
مشاوره و طراحی شبکه در فالنیک (ایران اچ پی)
فالنیک با تکیه بر دانش، تخصص و تجربه متخصصین خود، نیازهای مشتریان خصوصی و دولتی خود را بررسی و تحلیل می‌کند و خدمات خود را در زمینه مشاوره، طراحی، پیاده‌سازی، نظارت و پشتیبانی شبکه‌های کامپیوتری ارایه می‌دهد.
دریافت مشاوره طراحی شبکه

5/5 - (2 امتیاز)

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

‫4 دیدگاه ها

دکمه بازگشت به بالا