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

זהות אינה כתובת

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

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

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

מספר סידורי אינו אורך קידומת

התקנים שמשתמשים במסכה רחבה כמו 10.0.0.0/8 יתייחסו לכל כתובת בטווח הזה כמקושרת ישירות, ולכן תעבורה אל מכונה של לקוח במרחק שתי רשתות לא מגיעה לנתב בכלל. המכונה פשוט משדרת אחרי שכן שאינו יכול לענות.

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

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

כששני לקוחות משתמשים שוב באותן כתובות

לקוח A ולקוח B יכולים שניהם להריץ 192.168.10.0/24, ושניהם יהיו צודקים בבניינים שלהם. זו אינה בעיה שנפתרת במספור מחדש של מתקן של מישהו אחר.

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

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

תנו לסדנה גבול משלה

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

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

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

העבירו את המסלול כשלב עבודה

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

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

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

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

סגרו את המעגל כשהמכונה נשלחת

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

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

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

מאמרים קשורים