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

קראו אותם משני הקצוות

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

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

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

הצמצום הוא החלטה של המגיב

היוזם מציע, והמגיב רשאי לקבל רק תת־קבוצה. IKEv2 מאפשר למגיב לצמצם את בוררי התעבורה המוצעים, והתוצאה המצומצמת היא מה שבאמת מותקן. לכן קריאת תצורת היוזם מתארת הצעה, לא את ההסכם.

לכן תת־רשת שנוספה ללקוח יכולה ליצור מנהרה עובדת שעדיין דוחה את היעד החדש. השרת צמצם את ההצעה למה שהמדיניות שלו מתירה, בעוד הקובץ של הלקוח עדיין מפרט את הטווח הרחב יותר. רק המצב שנדון מראה את האמת: בלינוקס, ip xfrm policy ורשימת child SA בתיעוד הרשמי (IKEv2 של strongSwan) מדווחים מה הותקן ולא מה התבקש. כששניהם חולקים, המדיניות של המגיב היא זו שצריך לשנות.

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

עקבו אחר יעד אחד מקצה לקצה

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

ip route get 10.20.30.41
ip xfrm policy list
swanctl --list-sas

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

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

שמרו על שני היעדים בנפרד

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

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

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