מבוא

הגדרות שם דומיין (DNS) הן עמוד השדרה של האופן שבו משתמשים מתחברים לאתרי אינטרנט ושירותים מקוונים.בין אפשרויות התצורה הרבות הזמינות, הזמן לחיות (TTL) הגדרתו היא אחד הבקרות המשפיעות ביותר עבור ביצועים, אמינות, וגמישות תפעולית. TTL שולט כמה זמן של פותרי DNS ומכשירי לקוח מטמון תיעוד DNS לפני שהם חייבים לשאול שוב את שמות הסמכותיים של מקבל TTL יכול להיות שונה בין השינויים הממושך בין התסכולים, לבין שינוי קצה דרך ממשקי DNS, או ניסיון, או ניסיון של זמן קצר לאחר שינויים.

למרות חשיבותו, TTL הוא לעתים קרובות להתעלם או לא מובן על ידי מנהלי מערכת, מפתחי אינטרנט ואפילו מנוסה אנשי IT. רבים מסתמכים על ערכי ברירת מחדל מבלי בהתחשב בצרכים הספציפיים של האתר שלהם או היישום שלהם.חוסר תשומת לב יכול להוביל לזמני ההרחבה איטיים, עומס מיותר בשרתים סמכותיים, ו degraded User Experience.com מקיף זה, אנו נבדוק מה TTL ב- DNS באמת אומר, מדוע זה ביצועים ואמינות נמוכה לשימוש שיטות הפעלה אופטימליתנה.

מאמר זה מתייחס למקורות סמכותיים כגון FLT:0RFC 1035FLT:1, מסמך היסוד המגדיר DNS, ומדריכים מעשיים מ-FLT:2CloudflarephFLT 3 ו-FLT:4DNSimpleph:5.

מה זה TTL ב- DNS?

TTL מייצג את "זמן לחיות", ובהקשר של DNS, זה ערך מספרי המובא בתוך שניות.כאשר ספקן DNS (כגון שרת חוזר המופעל על ידי ISP, Google DNS ציבורי, או Cloudflare 1.1.1.1) שאילתות משמות סמכותיים עבור רישום ספציפי, התגובה כוללת TTL.

לדוגמה, אם יש תיעוד של 'www.example.com' יש TTL של 3600 שניות (שעה אחת), אז כל פתרון כי מכווץ את השיא ינצל אותו למשך שעה אחת לפני ששאילתת השרת הסמכותי שוב.אם השיא מצביע על כתובת IP ,"01. ", כל הלקוחות המבקשים את השם הזה במהלך תקופת החרד יהיו מכוונים לאותו שרת ללא שמות נוספים על גבי ה- IP, לאחר ש-זמנית, לאחר ש-זמנית, לאחר ש-זמנית של אותה שעה.

TTL אינו מוגבל לרשומות משאבים אינדיבידואליות.התחילת הרשות (SOA) למחוז מכיל גם TTL המשקף את ה-TTL ברירת המחדל עבור כל הרשומות שאינן קובעות במפורש את הערך שלהן.בנוסף, תשובות שליליות (כגון NXDOMAIN המצדיקות דומיין אינו קיים) יש שדה TTL משלהן TTL, אשר שולט באופן שבו ניתן לפתור את ה-CacheA להפתעות שאינן יכולות למנוע הגשמה של תחום זה.

כיצד DNS TTL משפיע על הביצועים ועל אמינות

גילוח ותעמולה

ההשפעה המיידית ביותר של TTL היא על התנהגות צ'ינג.כל פעם שרשומה של DNS מופקת ממקור סמכותי, הפתר מתחייב לזכור את משך ה- TTL. זה מקטין את הגמישות עבור משתמשי קצה כי ה-Switch יכול להגיב מיד מבלי לנטר את ההיררכיה DNS שוב.זה גם מפחית את העומס בשרתים סמכותיים, אשר יכול להיות קריטי עבור גבוה או אזורים מטען כי כאשר הם משתמשים אחראיים.

בצד השני של ה- TTL שולט כמה שינויים ארוכים רשומות DNS לקחת להפיץ באינטרנט.אם אתה מעדכן את רישום ה- DNS (לדוגמה, שינוי כתובת ה- IP של שרת האינטרנט שלך), עליך לחכות עד שכל ה-Cches יפוג לפני כל המבקרים רואים את הערך החדש.אם TTL שלך מוגדר ל-86400 שניות (24 שעות), לאחר ביצוע השינוי, זה יכול לקחת עד 24 שעות לכל האינטרנט כדי התכנסות, כמו גם ל- 60 שניות) כדי להפחית את השינויים באופן דרסטי (למידת ה-זמנית) כדי להפחית את האפשרות של Windows) כדי להפחית את השינויים באופן דרסטי, או להפחתה משמעותית, כלומר, כדי להפחית את האפשרות להפחתה משמעותית, כדי להפחית את השינויים, כלומר, כדי להפחית את האפשרות של זמן (לצמצם את האפשרות של 60 שניות (לצמצם את אפקט ה-זמנית) או להפחתה משמעותית) כדי להפחית את ה- 300 שניות (לדוגמה, לאחר ביצוע שינויים).

המונחים: Authoritative DNS server

TTL גם משפיע ישירות על נפח השאילתה שנשלח לשמות הסמכות שלך (שיכול להיות מופעל על ידי רשם התחום שלך, ספק DNS מנוהל כמו כביש 53 של AWS, או התשתית שלך) אמצעי TTL נמוך מאוד כי פותרים חייבים לעתים קרובות יותר, להגדיל את העומס הבקשה. בעוד רוב הספקים המודרניים יכולים להתמודד עם מיליוני שאילתות לשנייה, נמוך מאוד (לדוגמה, 30 שניות) על תחומים יכולים לייצר שאילתה יכול לייצר במהירות גבוהה או ירידה גבוהה, אבל אם אתה יכול להפחית את עלויות ה-מסוג גבוה.

הסרת האיזון הנכון דורש בהתחשב הן הצרכים התפעוליים שלך ואת חוויית המשתמש.עבור אתר ייצור יציב כי לעתים רחוקות משנה תשתיות, TTL של שעה אחת (3600) או אפילו יום (86400) הוא לעתים קרובות מתאים. עבור סביבות דינמיות שבו כתובות IP מסתובבות לעתים קרובות (לדוגמה, כאשר שימוש ב- CDN עם מספר נקודות נוכחות), TL נמוך מבטיח כי משתמשים תמיד מכוונים לנקודת הקצה האופטימלית.

הצעות מסחר: נמוך לעומת TTL גבוה

TTL Scenarios

TTLs נמוך (בדרך כלל 60 עד 300 שניות) מועדפים כאשר אתה מצפה לבצע שינויים ב- DNS בקרוב, או כאשר התשתית שלך היא דינמי מאוד.

  • (FLT:0Website Migration:FLT:1 במהלך מהלך השרת, אתה רוצה שינויים להפיץ במהירות האפשרית כדי למזער את זמני ה- TTL ל-300 שניות כמה ימים מראש מאפשר כמעט עדכונים מיידיים.
  • (FLT:0CDN או איזון עומס:FLT:1eur רשתות מודרניות רבות להקצות כתובות IP שונות בהתבסס על קרבה גיאוגרפית או עומס נוכחי. A TTL נמוך מאפשר למשתמשים להיות מטופלים מחדש במהירות כמו התנאים משתנים.
  • (FLT:0 תרחישים של FLT:1hil; אם אתה מפעיל הגדרות אקטיביות פאסיביות עם בדיקות בריאות, TTL קצר מבטיח כי התנועה ניתן להפנות לשרת גיבוי בתוך דקות.
  • (FLT:0)DNSDD:FLT:1mia עבור בית או שרתי עסקים קטנים עם שינוי IP ציבוריים, TTL נמוך לשמור רשומות הנוכחי.

עם זאת, TTLs נמוך מגיעים עם downsides. כל שאילתה פתרון עולה לטעון על שמות סמכותיים שלך, אשר יכול להיות יקר או ביצוע limiting.בנוסף, כמה פותרים להתעלם מאוד נמוך TTLs או לאכוף זמן מינימלי cache (בדרך כלל 30-60 שניות), אשר יכול לשלול את ההשפעה המיועדת.תמיד לבדוק עם ערך כי מכבדים מינימליים.

TTL Scenarios

TTLs גבוהה (3600 שניות עד 86400 או אפילו 172800 במשך יומיים) הם הטובים ביותר עבור תשתיות יציבות, מבוססות היטב כי לעתים נדירות שינויים.

  • (FLT:0) ניכוי שאילתה: שאילתות קטנות יותר פירושות עלויות תפעול נמוכות ופחות מתח על שמות סמכותיים שלך.
  • (FLT:0) שיפור ביצועים: FLT:1rea לקוחות ו- פותרים יכולים לשרת תוצאות מכווצות במהירות ללא ציפייה לשאילתות מרוחקות, צמצום זמני ה-DNS.
  • (ב) אם שם המחבר שלך הופך להיות בלתי זמין באופן זמני, רשומות חרישיות עדיין פועלות למשך TTL, ומונעות תקלות גישה.

TTL גבוה אופייני לתחומים ברמה הגבוהה ביותר (TLDs), אתרי אינטרנט ידועים, ויישומים ארגוניים שאינם משנים כתובות IP לעתים קרובות.לדוגמה, "Google.com משתמשת ב- TTL של 300 שניות עבור רשומות A - לא גבוה מאוד ולא נמוך - כדי לטעון וביצועים.

הסיכון העיקרי של TTL גבוה הוא שכל שינוי DNS לוקח זמן רב להפיץ.אם אתה צריך לתקן שיא לא מוגדר או להגיב למתקפה, אתה תהיה תקוע שעות המתנה או ימים. לכן, זה קריטי לתכנן מראש: תמיד להפחית את TTL לפני ביצוע שינויים ולשחזר אותו לאחר מכן.

שיטות טובות ביותר עבור אופטימיזציה של הגדרות TTL

כללי הנחיות

שום ערך TTL יחיד מתאים לכל תחום.ההגדרה האופטימלית תלויה בדרישות הספציפיות שלך ליציבות, תדירות העדכון ונפח התנועה.עם זאת, העקרונות הבאים חלים באופן אוניברסלי:

  • (FLT:0) דע את זמן ההצטרפות המינימלי שלך.ReveFLT 1: כמה מהר צריך שינויים ייכנס לתוקף? אם התשובה שלך היא "תוך דקות", ה- TTL שלך חייב להיות מתחת ל-300 שניות.
  • (FLT:0) TTL בסביבה מלחיצה.אנדרל 1 (ראה ערך אחר עם תחום מבחן כדי לראות כיצד פותרים מתנהגים.חלק מהספקים מתעלמים מ- TTLs קצרים מדי או לאכוף מינימום.
  • (FLT:0) להעריך את סוג השיא.FIRLT:1 ; A CNAME או MX להקליט שינויים פחות לעתים קרובות מאשר תיעוד דינמי המשמש לאיזון עומס.
  • (FLT:0) ראו את המינימום SOA.FIRLT:1) עבור צ'יגה שלילית, להגדיר את ה- SOA מינימום TTL לערך סביר (למשל, 300-3600 שניות) כדי למנוע שאילתות מופרזות עבור תת-קיום לא קיים.
  • (FLT:0) יומני שאילתה של מוניטור (Monitor שאפו) 1 (FLT:1) אם יומני השרתים הסמכותיים שלך מראים עלייה בשאילתות, ה- TTL שלך עשוי להיות נמוך מדי.

לפני שינויים מתוכננים

בכל פעם שאתה צופה שינוי DNS (עדכון IP של ה- IP, החלפת ספקי, הוספת שירות חדש), בצע את השלבים הבאים:

  1. (FLT:0)Lower TTLve מתאים ל- 1FLT 1:1 לפחות מחזור אחד מלא TTL לפני השינוי.אם ה- TTL הנוכחי שלך הוא 86400, כלומר לחכות לפחות 24 שעות לאחר הפחתת השינוי.עבור TL נמוך (למשל, 300 שניות), אתה יכול להפחית עוד עד 60 שניות ולהמשיך לאחר כמה דקות בלבד.
  2. (הופנה מהדף ההרחבה) (הגרסה הראשונה של ה-FLT) (הרשמה את הרשומות) באמצעות כלים כגון: לחפור או בודקי DNS מקוונים.
  3. (ב) לאחר ש[[1924]], [[1924]]]], [[1924]]]]]], [[1924]]]], [[1924]]]]]], [[1924]]]]]]]], [[1924]]]]]]]], [[1924]]]]]]]], [[1924]]]]]]]]

אסטרטגיה זו מצמצם את חלון אי עקביות בין רשומות ישנות וחדשות, אשר חשוב במיוחד עבור שירותים עם דרישות זמינות גבוהות.

עבור סוגים שונים של רשומות

בעוד TTL הוא נכס של כל שיא, עליך להתאים בהתבסס על מטרה רשומה:

  • (FLT:0)A / AAAA רשומות:FLT:1ir שם אלה מפה כתובות IP. עבור שרתי אינטרנט, 300-3600 שניות הוא נפוץ.עבור נקודות קצה של CDN, 60-300 שניות יכול להיות טוב יותר.
  • (ב) ויקרא י"א: "ה' י"א י"א י"א י"א י"א י"א י"א י"א י"א י"א, ו"וְאֶת אֱלֹהִים" (בראשית כ"ד).
  • רשומות של ההרחבה:0 (MX Records:0)1 (FLT:1) החלפת רשומות משתנות באופן בלתי צפוי: A TTL של 3600-86400 שניות הוא טיפוסי, אך נמוך יותר אם אתה משתמש בשירות דואר שעשוי לעבור IP.
  • רשומות FLT:0 (TXTXT) רשומות: FLT:1 המשמש עבור SPF, DKIM, DMARC או אימות אסימונים, שכן אלה לעתים קרובות צריך לעדכן שינויים אימות דואר אלקטרוני, לשמור על TTL ב 300-3600 שניות כדי לאפשר שינויים מהירים.
  • (ב) ,0 NS רשומות: ⁇ FLT:1 , אלה רק לעתים נדירות השתנו רשם רבים להגדיר אותם 172800 שניות (2 ימים).

SOA TTL לעומת רשומות TTL

שיא SOA מכיל כמה שדות הקשורים TTL: TTL של רשומות SOA עצמו, ואת שדה TTL המינימום המשמש עבור צ'יגה שלילית. TTL ברמת השיא עבור רשומות משאבים לוקח עדיפות על ברירת המחדל SOA. עם זאת, אם תיעוד אינו מציין TTL שלה (ביישומים DNS ישנים), הפתרון משתמש ב- SOATL.

ה- TTL המינימלי ברשומות SOA שולט כמה זמן תשובות מ- NXDOMAIN (שם המבוקש אינו קיים) ותשובות שליליות אחרות.קביעת הסיבות הנמוכות מדי עבור תת-קיום בלתי-ישן; שגיאות גבוהות מדי וקטנו נמשכות במשך שעות.ערך של 300-3600 שניות הוא מטושטש. Note כי שדה זה לפעמים לא מפרש – הוא לא ברירת המחדל עבור רשומות חיוביות (ATL)

טעויות נפוצות עם הגדרות TTL

שכחה ל- TTL נמוך לפני שינויים

זוהי הטעות השכיחה ביותר.מנהלים לעשות שינוי DNS עם TTL גבוה, אז תוהה מדוע משתמשים עדיין רואים את שעות ה- IP הישנות מאוחר יותר.התיקון הוא תמיד להוריד את ה- TTL מראש.

שימוש ב- TTLs נמוך באופן קיצוני

קביעת TTL ל 1 השני או נמוך מאוד ערכים "לביצועים טובים יותר" היא תפיסה מוטעית.פתרוןrs cap מינימום TTLs (לעתים קרובות 30 שניות) כדי למנוע זיהום מטמון.בנוסף, שאילתה עומס על סלעים, הגדלת הגינות עבור משתמשים (מכיוון שכל בקשה גורמת למחפשים חדשים) להשתמש ב- TTLs נמוך רק כאשר אתה צריך הדבקה מהירה, וחזרה לערכים גבוהים יותר לאחר.

התעלמות מ-NXDOMAIN

כמה מנהלי מיקוד רק על סמך TL חיובי והתעלמות מ- SOA מינימום TTL.אם סוגי משתמשים "x.yourdomain.com" ולא קיים, הקלידים המשתנים כי היעדרות בהתבסס על מינימום TTL.אם הם השאירו ברירת מחדל (לעתים קרובות 86400), הקלדוס יכול להיות בלתי אפשרי ליום מלא.

לא להזרים TTL ברשומות קשורות

אם יש לך תיעוד עבור 'www.example.com' מצביע על מאזן עומס, וכי שם של מאזן העומס הוא CNAME ל- CDN, להבטיח TTLs עקביים. A קצר TTL על הרשומה אבל TTL ארוך על ה- CNAME יוצר בלבול דומה, אם תשנה את ה- IP של שרת אבל MX נקודות לשרת זה, הן TTL.

« כל הבקשות לכבוד TTL

לא כל פותרים מכבדים את TTL בדיוק. חלק מ- ISPs cache מעבר ל- TTL כדי להפחית את שאילתות הזרם, וכמה פרוקסים ניידים מעלים TTLs נמוך.עבור שליטה מקסימלית, להשתמש בספק DNS המאפשר TTLים קצרים לפקח על התנהגות בפועל.

כלים וטכניקות למעקב אחר TTL

הבנת ערכי TTL משמשים כיום וכיצד הם מתנהגים בטבע חיוני אופטימיזציה.מספר כלים ושירותים מקוונים יכול לעזור:

  • dig: FigFLT:1 [הכלי הגדול ביותר של DNS. Run ’dig www.example.com’ כדי לראות את סעיף התשובה, כולל TTL. השתמש ב-“+no ס"מ +noquestion +nocomments +nostats +nostats עבור פלט נקי.com כדי לבדוק TTL מפתרון ספציפי, השתמש ב-“Dig @8.8.com.
  • (FLT:0nslookup: FLT:1 זמין ב- Windows; פחות עשיר תכונה אבל עובד. השתמש nslookup -type=anyדוגמה.com (למרות שהרבה פותרים מדכאים כל תגובה).
  • (ב) עיין ב-DNS:0) ב-DNS: FLT:1ir אתרים כמו:2DNS CheckerFLT 3 מראה ערכי TTL ממיקומים גלובליים מרובים.
  • (FLT:0)Zone file Editors:FLT:1 רוב ספקי ה-DNS (למשל, Cloudflare, AWS Route 53, Google Cloud DNS) מציגים את TTL בקונסולת הניהול.
  • (ב) ⁇ :0 (Query logs: FLT:1 Enable ⁇ על שמות הסמכות שלך לראות כמה פעמים פותרים שאלמים ספציפיים. A פתאומי יכול להצביע על TTL שלך נמוך מדי או כי תיעוד הוא התעללות.

השתמש בכלים אלה באופן קבוע, במיוחד לאחר ביצוע שינויים.לעקוב אחר ה- TTL של הרשומות שלך ואת המינימום SOA כדי להבטיח עקביות.אם אתה משתמש ב- Multi-cloud או בתשתיות היברידיות, ודא כי לכל שיא בספקים יש TTL המיועד - פגמים גורמים להתנהגות בלתי צפויה.

מסקנה

הגדרות TTL הן מרכיב חיוני אך לעתים קרובות מזלזל בניהול DNS.הם משפיעים ישירות על ביצועי האתר, ניסיון משתמש, עומס השרת, ואת המהירות שבה DNS משנה את propagate. על ידי הבנת מכניקה של TTL - איך זה משפיע על caching, propagation ו ספין נפח השאילתה - אתה יכול לקבל החלטות מושכלות כי מאזן את הצורך יציבות עם הגמישות לעדכן רשומות.

אופטימיזציה TTL היא לא משימה חד פעמית; זה דורש סקירה תקופתית והתאמה ככל שהתשתית שלך מתפתחת.לפני ביצוע כל שינוי DNS, TTLs נמוך יותר מראש.לאחר השינוי propagates, להעלות אותם שוב כדי להפחית את העומס. לשים לב לעומס חיובי ושלילי (SOA מינימום). להימנע ערכים קיצוניים כי פסולת משאבים או גרימת עיכובים.

לבסוף, לשמור על למידה ממקורות סמכותיים ושיטות הקהילה הטובות ביותר.המאמר ה-FLT:0 [Wikipedia] על TTLIRFLT:1 מספק סקירה מוצקה, וספקי DNS לעתים קרובות לפרסם מדריכים מפורטים המותאמים לפלטפורמות שלהם.