זיהוי ותיקון בעיות שקשורות ל-ICMP

במדריך הזה תלמדו איך להשתמש בכלי לבדיקת קישוריות באופן איטרטיבי כדי לזהות ולתקן בעיה בקישוריות לרשת.

במקרה הזה, כללי חומת האש של הענן הווירטואלי הפרטי (VPC) מונעים מכתובת ה-IP החיצונית של מכונה וירטואלית (VM) אחת להשתמש בפרוטוקול ICMP כדי לבצע פינג לכתובת ה-IP החיצונית של מכונה וירטואלית אחרת.

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

סקירה כללית

במקרה הזה, הגדרתם שתי מכונות וירטואליות באותה תת-רשת של רשת ה-VPC. לשתי המכונות הווירטואליות יש כתובות IP חיצוניות. כשבודקים את הקישוריות ביניהם על ידי שליחת מנת נתונים של פינג מ-vm1 לכתובת ה-IP החיצונית של vm2, הפינג לא פועל.

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

לפני שמתחילים

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

כדאי גם לקרוא על האופן שבו פועלים כללי חומת האש ב-VPC.

הגדרת משאבי רשת

בקטע הזה מגדירים את Google Cloud המשאבים בנתיב הבדיקה.

הגדרת רשת VPC

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

הגדרת שתי מכונות וירטואליות

  1. המכונות הווירטואליות במדריך הזה ממוקמות באותה רשת VPC ותת-רשת. אתם יכולים להשתמש במכונות וירטואליות קיימות או ליצור מכונות וירטואליות חדשות.
  2. כשיוצרים את vm1 ו-vm2, מקצים להם כתובת IP חיצונית. חשוב לשים לב לכתובות כי תצטרכו להשתמש בהן בהמשך.

יצירת כלל לחומת האש default-deny-outgoing-ping

אחרי שיוצרים את המכונות הווירטואליות, יוצרים כלל חומת אש של VPC ליציאה בשם default-deny-outgoing-ping. הכלל הזה דוחה את פרוטוקול ICMP מ-vm1 אל vm2. מוודאים שאין ברשת הזו כללי חומת אש קיימים שיבטלו את הכלל הזה. בנוסף, מוודאים שכללים אחרים במדיניות חומת האש ההיררכית לא יבטלו את הכלל הזה. פרטים נוספים מופיעים במאמר סקירה כללית של מדיניות חומת אש היררכית.

צריך להשתמש בערכים שבטבלה הבאה כדי להגדיר את כלל חומת האש של ה-VPC.

שדה של כלל חומת אש ב-VPC ערך
שם default-deny-outgoing-ping
רשת משתמשים ברשת ה-VPC שבה נמצאות המכונות הווירטואליות.
עדיפות 1000
כיוון התנועה Egress
פעולה לגבי התאמה דחייה
יעדים בוחרים באפשרות כל המופעים ברשת.
טווחי כתובות IP של יעד שימוש בכתובת ה-IP החיצונית של vm2.
פרוטוקולים ויציאות שצוינו מסמנים את תיבת הסימון פרוטוקולים אחרים ומזינים את הערך icmp.

יצירת כלל לחומת האש default-deny-ingress-to-vm2

יוצרים כלל חומת אש לדחייה של תעבורת נתונים נכנסת (ingress) בשם default-deny-ingress-to-vm2 כדי לדחות את פרוטוקול ICMP לכתובת ה-IP החיצונית של vm2. מוודאים שאין ברשת הזו כללי חומת אש קיימים שיבטלו את הכלל הזה. בנוסף, מוודאים שכללים אחרים במדיניות חומת האש ההיררכית לא יבטלו את הכלל הזה. פרטים נוספים מופיעים במאמר סקירה כללית של מדיניות חומת אש היררכית.

משתמשים בערכים שבטבלה הבאה כדי ליצור את הכלל.

שדה של כלל חומת אש ב-VPC ערך
שם default-deny-ingress-to-vm2
רשת משתמשים ברשת ה-VPC שבה נמצאות המכונות הווירטואליות.
עדיפות 65534
כיוון התנועה Ingress
פעולה לגבי התאמה דחייה
יעדים בוחרים באפשרות כל המופעים ברשת.
טווחי כתובות IP של המקור שימוש בכתובת ה-IP החיצונית של vm1.
פרוטוקולים ויציאות שצוינו מסמנים את תיבת הסימון פרוטוקולים אחרים ומזינים את הערך icmp.

הפעלת המעקב הראשון

באמצעות מסוף Google Cloud , מריצים מעקב כדי לבדוק אם חבילת ICMP (פינג) יכולה לעבור מ-vm1 לכתובת ה-IP החיצונית של vm2. אחרי הרצת ה-trace הזה, בדיקות הקישוריות יציינו שחבילת ה-trace בוטלה בגלל כלל חומת האש של ה-VPC‏ default-deny-outgoing-ping.

בטבלה הבאה מפורטים ערכי הקלט למעקב.

שם השדה ערך
פרוטוקול icmp
כתובת ה-IP של המקור

שימוש בכתובת ה-IP החיצונית של vm1.

מסמנים את התיבה זוהי כתובת IP שמשמשת ב Google Cloud.

כתובת ה-IP של המקור או פרויקט השירות אימות שם הפרויקט של vm1.
כתובת ה-IP של היעד

שימוש בכתובת ה-IP החיצונית של vm2.

מסמנים את התיבה זוהי כתובת IP שמשמשת ב Google Cloud.

כתובת ה-IP של היעד או פרויקט השירות אימות שם הפרויקט של vm2.

בצילום המסך הבא של מסוף Google Cloud אפשר לראות שהמערכת הפסיקה את מעקב החבילה בגלל כלל חומת האש default-deny-outgoing-ping.

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

מריצים מעקב שני אחרי השבתת הכלל בחומת האש default-deny-outgoing-ping

  1. כדי לאפשר את בדיקת הפינג vm2, צריך להשבית באופן זמני את כלל חומת האש ב-VPC‏ default-deny-outgoing-ping.
  2. אחרי שההגדרה מתעדכנת בהצלחה, מריצים שוב את ה-trace.
  3. המעקב נכשל שוב. חבילת הנתונים נפסלה כי כלל חומת האש הזה דחה חבילת ICMP נכנסת לכתובת ה-IP החיצונית של vm2.

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

צילום מסך של ממשק המשתמש של המסוף שבו אפשר לראות שהמעקב לא מגיע למכונה הווירטואלית vm2.
תמונה של ממשק המשתמש של Console שבה אפשר לראות שהמעקב לא מגיע אל vm2

יצירת הכלל לחומת האש allow-ping-from-known-ranges

כדי לאפשר תעבורת נתונים נכנסת לכתובת ה-IP החיצונית של vm2, מגדירים כלל חדש של חומת אש של VPC בשם allow-ping-from-known-ranges. התרת כל חבילות ה-ICMP הנכנסות לרשת ה-VPC היא סיכון אבטחה, ולכן צריך לציין רק קבוצה קטנה של טווחי מקור שמורשים לשלוח חבילות ICMP לכתובת ה-IP החיצונית של vm2.

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

משתמשים בערכים שבטבלה הבאה כדי להגדיר את הכלל.

שדה של כלל חומת אש ב-VPC ערך
שם allow-ping-from-known-ranges
רשת משתמשים בשם של הרשת שמכילה את שני המכונות הווירטואליות.
עדיפות 1000
כיוון התנועה Ingress
פעולה לגבי התאמה אישור
יעדים בוחרים באפשרות כל המופעים ברשת.
מסנן מקור טווחי כתובות IP
טווחי כתובות IP של המקור שימוש בכתובת ה-IP החיצונית של vm1.
פרוטוקולים ויציאות שצוינו מסמנים את תיבת הסימון פרוטוקולים אחרים ומזינים את הערך icmp.

הרצת מעקב שלישי

אחרי שיוצרים את כלל חומת האש allow-ping-from-known-ranges, שולחים פינג לכתובת ה-IP החיצונית של vm2 שוב. הפינג פועל והבעיה נפתרה.

פינג מותר בין שתי מכונות וירטואליות.
פינג מותר בין שתי מכונות וירטואליות

כדי לוודא שהתוצאה נכונה, אפשר לבצע עוד מעקב אחרי ההגדרה המעודכנת שמכילה את כלל חומת האש החדש. הפעם, בדיקות קישוריות מראות שהחבילה נמסרה לכתובת vm2 ושהכלל התואם בחומת האש, allow-ping-from-known-ranges, מאפשר לחבילת ICMP נכנסת להגיע לכתובת ה-IP החיצונית של vm2.

צילום מסך של ממשק המשתמש של המסוף עם מעקב מוצלח אל vm2.
צילום מסך של ממשק המשתמש של Console עם מעקב מוצלח אל vm2

הסרת המשאבים

אם צריך, אפשר להשבית או למחוק את כל Google Cloud המשאבים שיצרתם לצורך המדריך הזה. חשוב לוודא שאלה לא משאבי ייצור. אם מחליטים להשבית משאבים, כדאי לעיין בדף התמחור של Compute Engine ובדף התמחור של כל שירותי הרשת כדי לוודא שלא יחויב עליהם תשלום.

  1. משביתים או מוחקים את הכללים של חומת האש.
  2. השבתה או מחיקה של מכונות וירטואליות.
  3. מחיקה של רשתות משנה של VPC.
  4. מוחקים את רשת ה-VPC.

המאמרים הבאים