בדף הזה מוסבר איך כלי בדיקות הקישוריות מודד את הנגישות. בנוסף, מוסבר בו איך פועלים ניתוח ההגדרות וניתוח מישור הנתונים בזמן אמת.
מהי נגישות?
אפשר להגיע למשאב מנקודת קצה אחרת אם הגדרות הרשת, כמו חומות אש ונתיבים, מאפשרות לתעבורה להגיע מנקודה אחת לשנייה. לדוגמה, אם הגדרת הרשת מאפשרת למכונה וירטואלית VM1 לשלוח מנות למכונה וירטואלית VM2, אז אומרים שמכונה וירטואלית VM2 נגישה ממכונה וירטואלית VM1.
חשוב לשים לב להיבטים הבאים לגבי האופן שבו בדיקות הקישוריות מודדות את הנגישות:
- בדיקות קישוריות מודדות את הנגישות ממקור מסוים ליעד מסוים. העובדה שמכונה וירטואלית VM1 יכולה להגיע למכונה וירטואלית VM2 לא אומרת בהכרח שמכונה וירטואלית VM3 יכולה להגיע למכונה וירטואלית VM2.
- בדיקות הקישוריות מודדות את הנגישות החד-כיוונית. העובדה שמכונה וירטואלית VM1 יכולה לפתוח חיבור למכונה וירטואלית VM2 לא אומרת שמכונה וירטואלית VM2 יכולה לפתוח חיבור למכונה וירטואלית VM1. יכול להיות שכללי חומת האש יאפשרו תעבורת נתונים בכיוון אחד, אבל לא בכיוון השני.
- בדיקות הקישוריות מודדות את הנגישות לפרוטוקול מסוים ולנמל יעד מסוים. העובדה שהמכונה הווירטואלית VM1 יכולה להגיע למכונה הווירטואלית VM2 ב-
tcp:443לא אומרת שהיא יכולה להגיע אליה ב-tcp:80. - בבדיקות הקישוריות נבדקות רק Google Cloud הגדרות של רשתות VPC שיכולות להשפיע על העברת מנות מהמקור ליעד. היא לא בודקת אם שרת תקף פועל ביעד, אם כללי חומת האש של מערכת ההפעלה עלולים לחסום את תעבורת הנתונים או אם תוכנת אבטחה חוסמת מנה שנושאת מטען ייעודי של וירוס.
הקונספט של נגישות מקורו בתורת הגרפים. מבחינה מושגית, גרף הנגישות המלא של רשת מכיל את כל נקודות הקצה כצמתים, וקשתות כיווניות שמציינות נגישות מצמתי מקור לצמתי יעד.
ניתוח נגישות הוא מונח כללי יותר שמתאר קבוצה של ניתוחים שאפשר לבצע כדי לקבוע את הנגישות לרשת. אחד מתרחישי השימוש בניתוח הנגישות הוא בדיקת קישוריות. קישוריות, במקרה הזה, מתייחסת למצב של חיבורי הרשת.
בכל שלב לאורך נתיב העברת הנתונים ברשת, ניתוח הנגישות בודק את הגדרת הרשת הבסיסית ומספק תוצאות. לדוגמה, בדיקות קישוריות מנתח את Google Cloud כללי חומת האש ואת המסלולים שחלים על חבילת בדיקה מדומה.
איך בדיקות הקישוריות פועלות
בדיקות הקישוריות כוללות שני רכיבים עיקריים: ניתוח של ההגדרות וניתוח של מישור הנתונים בזמן אמת. בקטע הזה מוסבר איך פועלים שני סוגי הניתוחים האלה.
איך ניתוח ההגדרות עובד
בקטע הזה מוסבר איך פועלות בדיקות הקישוריות והרכיבים שלהן.
במסגרת בדיקות הקישוריות מתבצע ניתוח של הנגישות, שבו נבדקים ה Google Cloud משאבים בנתיב הבדיקה ביחס למודל אידיאלי של הגדרה. היא מורחבת על ידי התכונה 'ניתוח של מישור הנתונים בזמן אמת', ששולחת מנות כדי לאמת את המצב של מישור הנתונים ומספקת מידע בסיסי לגבי תצורות נתמכות. לפרטים על אופן הפעולה של ניתוח נתוני מישור בקרה בזמן אמת, אפשר לעיין במאמר איך פועל ניתוח נתוני מישור בקרה בזמן אמת.
כאדמינים ברשת, יש לכם שליטה בהרבה הגדרות שיכולות להשפיע על תוצאות הניתוח, אבל יש גם כמה יוצאים מן הכלל. לדוגמה, אין לכם שליטה ברשתות VPC שמארחות שירותים מנוהלים של Google, כמו מופעי Cloud SQL. בנוסף, בגלל הגבלות הרשאות, יכול להיות שלא תהיה לכם שליטה בכללי מדיניות חומת האש ההיררכית שמשפיעים על הרשת שלכם.
כשמריצים בדיקת קישוריות, מזינים קבוצה ספציפית של פרמטרים ומקבלים תוצאות מפורמטות בצורה של מעקב אחר רשת או שאילתה. בדיקת קישוריות יוצרת יותר ממעקב אחד אם לבדיקה יש כמה נתיבים אפשריים ברשת (לדוגמה, כשנקודת היעד היא Google Cloud מאזן עומסים עם כמה קצוות עורפיים).
- התאמה פירושה שהכלי לבדיקת קישוריות מצא הגדרה Google Cloud שמאפשרת לחבילה המדומה להמשיך במסלול הבדיקה.
- לא נמצאה התאמה – בדיקות קישוריות לא מצאו התאמה. לכן, ההגדרה לא קיימת.
- התאמה שנחסמה פירושה שבדיקות הקישוריות מצאוGoogle Cloud הגדרה שבה חבילת הבדיקה המדומה חייבת להיפסל.
רכיבים של בדיקות קישוריות
בדיקת הקישוריות היא הרכיב ברמה העליונה שמכיל את כל רכיבי המשנה האחרים לבדיקה שנדרשים לניתוח ההגדרה. הרכיבים האלה כוללים:
- נקודות קצה של המקור והיעד
- פרטים על הנגישות של הבדיקה והעקבות שלה, כולל תוצאת נגישות כללית שנקבעה על ידי ניתוח ההגדרה
- עקבות אחד או יותר, שכל אחד מהם מכיל שלב אחד או יותר
- מצב לכל שלב
לכל בדיקה יש שם ייחודי, ולכל שלב יש מצב וInfo מטא-נתונים שמשויכים אליו. לדוגמה, אם שלב בודק מסלול, RouteInfo
הוא כולל מטא-נתונים.
בתרשים הבא מוצגת בדיקה ממכונה וירטואלית אחת של Compute Engine למכונה וירטואלית אחרת. בסעיפים הבאים מפורטים רכיבי הבדיקה.
נקודות קצה של המקור והיעד
ניתוח ההגדרות של בדיקות הקישוריות תומך בכותרת של מנות 5-tuple ללא יציאת המקור. הסיבה לכך היא שלא נעשה שימוש ביציאת המקור כדי לאמת משאבים בהגדרות הרשת של Google Cloud . לכן, לא צריך לספק אותו כשמריצים בדיקות.
כותרת החבילה מכילה את הרכיבים הבאים:
- פרוטוקול רשת
- נקודת קצה של מקור, שכוללת אחת מהאפשרויות הבאות:
- שם של מכונת VM
- כתובת IP של מקור
- שירות מקור ב-App Engine
- סביבה של פונקציית Cloud Run (דור ראשון)
- שירות Cloud Run
- משימה ב-Cloud Run
- שם מכונה של Cloud SQL
- שם אשכול למישור בקרה של GKE
- נקודת קצה של היעד, שכוללת את אחד מהרכיבים הבאים ומספר יציאה:
- שם של מכונת VM
- כתובת IP של יעד
- שם מכונה של Cloud SQL
- שם אשכול למישור בקרה של GKE
- נקודת קצה של Private Service Connect
אפשר גם לציין סוג רשת Google Cloud או לאGoogle Cloud , או שילוב של סוג רשת וכתובת IP או שם של מופע מכונה וירטואלית, כדי לזהות באופן ייחודי מיקום ברשת.
פרוטוקולי הרשת הבאים נתמכים במכונות וירטואליות, בכתובות IP ובשירותים שמנוהלים על ידי Google:
- TCP
- UDP
- ICMP
- ESP
- AH
- SCTP
- IPIP
המחברים של חיבור לרשת (VPC) מאפליקציית serverless תומכים בפרוטוקולי הרשת הבאים:
- TCP
- UDP
יש תמיכה ביציאות יעד לפרוטוקולים TCP או UDP. אם לא מציינים יציאה, ברירת המחדל היא יציאה 80.
עקבות, שלבים ומצבים
ניתוח ההגדרות מכיל מעקב אחד או יותר. כל מעקב מייצג נתיב ייחודי של העברת מנות שנדמה בבדיקה.
- כל מעקב מכיל כמה שלבים מסודרים.
- כל שלב מכיל מצב שקשור ל Google Cloud הגדרה שבדיקות הקישוריות בודקות בשלב הזה.
- המצבים מחולקים למצבים לא סופיים ולמצבים סופיים.
סטטוסים לא סופיים
מצבים לא סופיים מייצגים בדיקת הגדרה של כל Google Cloudמשאב בנתיב הבדיקה, כמו מופע של מכונה וירטואלית, נקודת קצה, כלל חומת אש, נתיב או Google Cloud מאזן עומסים.
יש ארבעה סטטוסים לא סופיים:
- ראשי תיבות
- בדיקת ההגדרות
- העברה לשרתים
- מעבר
מידע נוסף מופיע במאמר מצבי ניתוח ההגדרות.
סטטוס סופי
כל מעקב חייב להסתיים במצב סופי, שהוא השלב האחרון במעקב.
יש ארבעה סטטוסים סופיים אפשריים:
DropAbortForwardDeliver
לכל מצב משויכת סיבה. מידע נוסף מופיע בקטע פרטים על כל מצב סופי.
תוצאה כוללת של נגישות
בניתוח התצורה מוצג גם תוצאה כללית של נגישות, שיכולה להיות אחת מארבעת הערכים הבאים: Reachable, Unreachable, Ambiguous או Undetermined.
התוצאה הכוללת של הנגישות יכולה לעזור לכם להגדיר מעקב או אוטומציה.
מידע נוסף זמין במאמר בנושא תוצאת הנגישות הכוללת.
בדיקת זיוף
במהלך בדיקות הקישוריות מתבצעת בדיקת זיוף כשחבילה מדומה למכונה וירטואלית או ממנה משתמשת בכתובת IP שלא בבעלות המכונה הווירטואלית הזו. כתובות IP שבבעלות מכונה וירטואלית כוללות את כל כתובות ה-IP הפנימיות של המכונה הווירטואלית וכתובות IP משניות.
אם הכתובת היא כתובת שנראית כאילו היא מגיעה מתנועה חיצונית, שנקראת גם כתובת זרה, כתובת ה-IP לא עוברת את בדיקת הזיוף.
מטא-נתונים
לכל מצב יכולים להיות מטא-נתונים שמשויכים אליו בצורה של שדה Info.
לדוגמה, InstanceInfo מכיל פרטים של מכונה וירטואלית, כולל השם וכתובת ה-IP.
בניתוח התצורה מוצגים מטא-נתונים של הבדיקה עצמה וגם מטא-נתונים של כל שלב בבדיקה.
איך עובד ניתוח של מישור נתונים בזמן אמת
מנגנון הבדיקה לניתוח של מישור הנתונים בזמן אמת לא כולל את מערכת ההפעלה של האורח, והוא שקוף לחלוטין למשתמש. הבדיקות מוזרקות לרשת בשם נקודת הקצה של המקור, ומוסרות רגע לפני שהן מועברות לנקודת הקצה של היעד. הבדיקות לא נכללות בחיוב הרגיל של הרשת, במדדי הטלמטריה וביומני הזרימה.
המאמרים הבאים
זיהוי ותיקון בעיות ב-ICMP (הדרכה)