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

שם התכונה מסתיר שני קצוות

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

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

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

בנו את הכלל כחיתוך

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

ScenarioSender matchTarget matchRule shape
Media player uses the tunnelPlayer addressAny internet destination except the LANSource only
Office prefix reachableAuthorized LAN devices10.40.0.0/16Target only
One app on one laptopLaptop addressThe service address setSource and target
Guest network never tunnelsGuest subnetAnyDeny, evaluated first

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

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

העדיפות מכריעה את החפיפה

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

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

ip rule show
ip route get 203.0.113.10

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

שמות צריכים מדיניות רענון

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

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

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

הגדירו את מצב אי-הזמינות

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

החליטו איזו מהן הדרישה צריכה, ואז אמתו זאת על ידי עצירת המנהרה וצפייה בזרימה:

curl -sS -o /dev/null -w "%{http_code}" --max-time 5 https://service.example/
ping -c 2 203.0.113.10

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

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