מה זה DNS TTL ולמה זה משנה עבור התאוששות אסון

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

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

מכניקה של DNS TTL

DNS TTL הוא ערך integer, המובא בתוך שניות, מוטבע בכל שיא של משאבי DNS.זה אומר לכל פתרון של כיס - בין אם הוא מופעל על ידי ISP, רשת תאגידית, או פתרון ציבורי כמו גוגל DNS ציבורי - כמה זמן זה יכול לשמור את השיא הזה לפני שהוא חייב למחוק אותו ולהביא עותק טרי מהשרת הסמכותי. Common TTL מ -30 שניות ל-86,400 שעות.

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

קחו דוגמה פשוטה: אתם קובעים TTL של 300 שניות (5 דקות) עבור רשומות A.אם לוחצים על שיא מצביע על 203.0.113.10 בשעה 12:00, זה ישתמש בערך המצופה עד 12:05.אם בשעה 12:02 אתם מעדכנים את השיא עד 198.51.100.20, הפתר לא יידע על השינוי עד 12:05 במקרה הגרוע ביותר, אם ב-12:02 אתם יכולים לדחות את הנתונים לפני שכמעט TL.

הירויטר הירוארככיה ו-TTL Proagation

החלטת DNS היא Hierarchical. End-user מכשירים בדרך כלל לשאול את ה-DNS המקומי (לעתים קרובות מנוהל על ידי ISP או שרת DNS ארגוני) כי פתרון מקומי בתור שאילתות שורש ה- DNS, TLD, ולבסוף שרת השמות הסמכותי עבור התחום שלך.כאשר כל פתרון בשרשרת השרשרת מיידית יש צורך להקליט, הוא מכבד את ה-TTL. אם ה-C המקומי של המשתמש הוא בעל לוח זמנים מקסימלי, אפילו לא יפתור את זמן קצר יותר, אפילו אם ישארך, אפילו שעה אחת עד שעה אחת, אם אתה צריך להמשיך את ה-זמנית, אפילו כדי להמשיך את ה- 1 שעות עד שעה אחת, אם אתה צריך להמשיך את לוחמתארך, אפילו כדי לעדכן.

השרת הסמכותי יכול רק להגדיר את ה- TTL כמלצה.חלק מהפתירים ליישם מדיניות זמן מקסימלית-כפיית- לדוגמה, כמה פתרונות ISP גדולים עשויים לכווץ TTL לערך מסוים. Standards כגון FLT:0RFC 1035FLT 1 ו-FLT:2RFC 2181F3) מציין TTL זה חייב להיות מכובד, אבל לפעמים להפר את הביצועים הגרועים עבור תוכנית עיצוב.

כיצד DNS TTL משפיע ישירות על אסון התאוששות

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

נכשל טריגר ועדכון שיא

כאשר מערכת המעקב שלך מגלה כי האתר הראשי אינו ניתן לחיזוי, הוא יכול לעדכן באופן אוטומטי את רשומות ה- DNS - לדוגמה, שינוי ה- IP הראשי ל- IP הגיבוי.עדכון זה פורסם לשרת DNS סמכותי כמעט מיד.מהירות של ה-DNS תלויה כעת בתדירות של פתרון מהיר של ה-Chevesards, ו-TaTL של שניות, רוב התנועה העולמית יכולה להיות מבהבת 24 שעות.

ניהול תעבורה מבוסס DNS (GSLB)

פתרונות טעינה Global Server Balancing (GSLB) כגון אלה המוצעים על ידי FLT:0AWS כביש 53FLT:1 או ספקי DNS מנוהלים, להשתמש בבדיקות בריאות ו- TTL נמוך כדי להשיג כשלון מהיר. לדוגמה, כביש 53 בדיקות בריאות יכול לפקח על נקודת הקצה העיקרית, על כישלונ, לעבור נקודת קצה משנית באמצעות TTL נמוך כמו 60 שניות.

היברידית ורב-ענן Scenarios

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

הצעות מסחר: Low Versus High TTL

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

היתרונות של TTL נמוך באסון התאוששות

  • (FLT:0)Fast Failover propagation: FIRLT:1 , ערכים נמוכים יותר (למשל 30-300 שניות) אומר שרוב ה-DNS המעודכנים שלך בתוך דקות, להפחית באופן דרסטי את משך ה-Outage.
  • (FLT:0) גמישות מוגברת: FLT:1ir אתה יכול לשנות במהירות כתובות IP, לעבור לאזורי גיבוי, או להתאים את הפחתת משקל מבלי לחכות לתפוגת כאב ארוך.
  • (FLT:0) שיפור זמן ההתאוששות (RTO): מקוצר 1 קצר יותר TTL באופן ישיר את הזמן הדרוש כדי להדיח את התנועה מהאתר הכושל, עוזר לך לעמוד ב- RTO קפדני.

חסרונות פוטנציאליים של TTL נמוך

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

היתרונות של TTL גבוה יותר עבור פעילות נורמלית

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

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

שיטות ל-DNS TTL ב- Disaster Recovery

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

קודם כל נמוך TTL לפני תחזוקת או סיכונים ידועים

אם אתה מתכנן לבצע שינויים - כגון שרתים נודדים, פריסת יתרת עומס חדש, או ביצוע בדיקה מלאה של אתר נכשל - להפחית את ה- DNS TTL שלך מראש.כלל טוב של אצבע הוא להוריד את TTL לפחות שתי תקופות TTL מלאות לפני האירוע. לדוגמה, אם ה- TTL הנוכחית שלך הוא 86,400 שניות (24 שעות), להפחית את זה ל-300 שניות לפני התחזוקה זה מאפשר את הרשומות ארוכות כדי לעצור את כל ה-T כדי לעצור את העיכוב, כאשר אתה מבצע את ה-48 שניות לפני הרשומות, כך מבוקרות, כך, כאשר אתה מבצע את ה-T-48 שניות לפני ה-T-T-48 שניות לפני ה-TTP הוא מפסק, כך, כך, כך, כך, כאשר אתה מפסק, כך, כאשר אתה מפסק, כל ה-48 הוא מפסק, כל ה-TTL הנוכחי שלך הוא מפסק, כל ה-48 שניות (24 שעות ביממה, כל ה-זמנית, כל ה-48 הוא מאפשר, כאשר אתה מפסק, כך ארוך-זמנית, כל ה-TTL הנוכחי שלך הוא מאפשר, כאשר אתה מפסק, כך, כאשר אתה יכול לעשות את ה-זמנית, כך ארוך-48 שניות (24 שעות ביממה, אם אתה מפסק, כך,

התאמת TTL אוטומטית במהלך תגובה

שינויים ב- DNS ידניים תחת לחץ להוביל שגיאות. השתמש בפלטפורמת ניטור ותזמורת (למשל, Terraform, Ansible, או ספק ענן APIs) כדי להוריד אוטומטית את TTL כאשר בדיקת בריאות נכשלת.לדוגמה, אתה יכול לתכנן מדיניות מבוססת זמן: על גילוי כשל באתר, המערכת משנה את TTL ל-60 שניות ולאחר מכן מעדכנת את הערך של ה- IP לאחר האירוע, בהדרגה יכול להעלות את ה- TTL שעות לאחר מכן.

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

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

4. לתאם את TTL עם Health Check Intervals

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

תוכנית ל-Clocking שלילי

פותרי DNS גם מקלקלים תגובות שליליות - NXDOMAIN או NODATA - כאשר שאילתה נכשלת.TTL עבור צ'יגה שלילית נקבע על ידי שדה המינימום של SOA (בכמה יישום) או על ידי caching TTL שלילי מפורש, אם האסון שלך גורם שיא להיות בלתי זמין באופן זמני, cache TTL שלילי ארוך יכול למנוע לקוחות לנסות שוב את המינימום שלך (למשל, כדי לאפשר 300 שניות) כדי לפתור מחדש.

6.העד את אסטרטגיית ה- TTL שלך בתוכנית ה-DR שלך

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

בדיקות DNS TTL ב Disaster Recovery

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

  • (FLT:0)Simulated Failover:FLT:1 במהלך חלון לא ייצור, נמוך TTL, לעדכן את שיא התחום של מבחן, ולעקוב אחר כמה זמן לוקח עבור פותרים ברחבי העולם כדי לשקף את השינוי. השתמש בשירות ניטור עולמי כדי לבדוק את ההתפשטות ממיקומים גיאוגרפיים מרובים.
  • (FLT:0DNS השרת נכשל:FLT:1ir; אם תשתית DNS סמכותי שלך עצמו הוא אדום, לבדוק מה קורה כאשר השרת הסמכותי העיקרי יורד. נמוך רשומות TTL הופך קריטי יותר כי פותרים ינסו לרענן אותם לעתים קרובות.
  • (FLT:0) בדיקות צ'ינג שמרנים: FLT:1 באופן שגוי להגדיר שיא כדי לדמות תרחיש NXDOMAIN, ולאחר מכן לתקן אותו.מד כמה זמן זה לוקח לשאילתות כדי להצליח שוב - זה יחשוף אם ה- SOATL שלך או caching TTL שלילי הוא גבוה מדי.
  • (FLT:0) Cost ו- Performance Analysis:FLT:1hil מודד את העלייה בנפח השאילתה כאשר אתה מוריד את TTL, למשל, 3600 עד 60 שניות, לבדוק כי ספק ה- DNS הסמכותי שלך יכול להתמודד עם העלייה וכי התקציב שלך מאפשר לכל עלויות לכל מחיר.

בדיקות רגילות מסייעות לך לזהות בעיות שביל השאילתה.לדוגמה, כמה פותרים חברותיים מעל TTL עם זמן מינימלי מאולץ של כאב ראש. תרגיל עשוי לחשוף כי ה- 60 שניות הצפוי שלך לוקח 10 דקות כי ISP פופולרי יש מדיניות של 300 שניות. חמוש עם ידע זה, אתה יכול להתאים את האסטרטגיה שלך או לעבוד עם ISP כדי להתאים מדיניות.

דוגמאות ושיעורים של העולם למדו

כמה מאחזים בעלי פרופיל גבוה מדגישים את החשיבות של DNS TTL בשיקום אסון.

הוצאה לאור של ספק הענן

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

מיפוי ה-DNS TTL

כאשר תחת התקפה מבוזרת של הכחשת שירות היעד כתובת ה- IP שלך, ייתכן שתרצה לשנות את ה- IP שלך למגוון או תנועה ישירה דרך מרכז נביחות. Low TTL הוא חיוני כדי לשפשף את ה- IP הישן מכאובים לפני התוקף יכול להמשיך למקד אותו.גם עם 60 שניות TTL, כמה staleness יכול להתרחש, אבל הוא מכים חלון רב שעות עבור סיבה זו, רבים אחרים, דורש הגנה על ידי TL, 000 או יותר.

Windows Gone Wrong

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

קידוד DNS TTL עם Broader Disaster Recovery Components

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

  • (FLT:0 Anycast routing:FLT:1 Anycast מציג את אותה כתובת IP ממיקומים גיאוגרפיים מרובים בשילוב עם DNS נמוך TTL, כל סטק יכול לספוג שינויים התנועה מבלי לדרוש שינוי ברשומה של DNS בכלל.
  • (FLT:0CDN caching:FLT:1 אספקת תוכן רשתות לעתים קרובות מטמון דפים שלמים או אובייקטים.אם המקור שלך נכשל, CDN עשוי להמשיך לשרת תוכן מלוטש גם אם DNS מעודכן. Align your DNS TTL עם הגדרות בדיקת TTL של CDN ובריאות.
  • (FLT:0) בדיקות בריאות איזון יתר של יתרת משקל: FLT:1 השתמש בדיקות בריאות יתר על משקל בשכבת התשתית כדי לקחת באופן אוטומטי שרתים מתוך סיבוב.DNS-level Failover הוא קו שני של הגנה - TTL נמוך מבטיח שאם האתר כולו אינו ניתן להשגה, משתמשים אינם תקועים.
  • (FLT:0) DNS סמכותי:FIRLT:1) ה- DNS הסמכותי שלך חייב להישאר זמין. השתמש במספר ספקי DNS או שירות DNS רב-ספקי יותר כדי להבטיח כי פותרים יכולים תמיד להביא את הרשומה החדשה, גם אם שרת סמכותי אחד ירד.

בנוסף, לשקול שימוש בתכונות DNS כגון routing, קידוד מבוסס על שקיפות, ו Geolocation routing כדי להפיץ תנועה לפני-הפצה על פני אתרים מרובים. במהלך אסון, אתה יכול להתאים משקולות או מדיניות גיאוגרפיה במקום שינוי כתובות IP, אבל שוב, ה- TTL על רשומות אלה קובע כמה מהר ההתאמה לוקחת את ההשפעה.

מסקנה: להפוך את ה-DNS TTL לאזרח ראשון בתכנית ה-DR שלך

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

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

בעולם שבו כל שנייה של זמן השבתה משפיעה על המשכיות עסקית, DNS TTL הוא דרך פשוטה, לעתים קרובות חופשית להרוויח דקות או אפילו שעות של מהירות התאוששות.אל תתעלמו ממנה.לקריאה נוספת, לבחון את ה-FLT:0AWS כביש 53 TTL תיעודFLT:1 ואת מדריך NIST על FLT:2DNS אסטרטגיית שיקום אסון.