בדיקת סטטוס ה-VPN

אחרי שמגדירים את שערי ה-VPN של עמיתים, צריך לבדוק את הרכיבים הבאים כדי לוודא שהם מתקשרים בצורה תקינה עם Cloud VPN:

  • בודקים את הסטטוס של מנהרות ה-HA VPN או VPN קלאסי שהגדרתם, כולל מצב הפעולה.
  • בדיקת סטטוס הזמינות הגבוהה של מנהרות בשער HA VPN.
  • צפייה בסטטוס של סשנים של Border Gateway Protocol‏ (BGP) ב-Cloud Router או במסלולים ש-Cloud Router מפרסם.

מידע נוסף על Cloud VPN זמין במקורות המידע הבאים:

בדיקת מנהרות HA VPN

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

המסוף

  1. נכנסים לדף VPN במסוף Cloud de Confiance .

    מעבר ל-VPN

  2. בודקים את הסטטוס של מנהרת ה-VPN ואת הסטטוס של סשן ה-BGP.

  3. כדי לראות את פרטי המנהרה, לוחצים על שם המנהרה.

  4. בקטע יומנים, לוחצים על הצגה עבור יומנים של Cloud Logging.

  5. אפשר גם לשנות את סשן ה-BGP שמשויך למנהרה הזו.

gcloud

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

בפקודות הבאות, מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • GW_NAME: השם של השער
  • REGION: האזור שבו נמצא השער או המנהרה
  • NAME: השם של המנהרה

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

  1. מזהים את השם והאזור של מנהרת ה-VPN שרוצים לבדוק את הסטטוס שלה. אפשר לזהות את המנהרה באחת מהדרכים הבאות:

    1. אפשרות 1: כדי לראות את רשימת כל מנהרות ה-VPN בפרויקט, מריצים את הפקודה הבאה:

      gcloud compute vpn-tunnels list
        --project=PROJECT_ID
      

      פלט הפקודה אמור להיראות דומה לדוגמה הבאה:

      NAME                REGION       GATEWAY      VPN_INTERFACE  PEER_ADDRESS
      tunnel-a-to-b-if-0  us-central1  ha-vpn-gw-a  0              10.242.123.165
      tunnel-a-to-b-if-1  us-central1  ha-vpn-gw-a  1              10.220.75.213
      tunnel-b-to-a-if-0  us-central1  ha-vpn-gw-b  0              10.242.127.148
      tunnel-b-to-a-if-1  us-central1  ha-vpn-gw-b  1              10.220.66.156
      
    2. אפשרות 2: אם אתם יודעים את השם של שער ה-VPN שמכיל את המנהרה, כדי לאחזר את רשימת המנהרות שמשויכות לשער, מריצים את הפקודה הבאה:

      gcloud compute vpn-gateways describe GW_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --format='flattened(tunnels)'
      
  2. אחרי שמגלים את השם והאזור של המנהרה, משתמשים באפשרות describe של הפקודה vpn-tunnels כדי לקבוע את הסטטוס של המנהרה:

    gcloud compute vpn-tunnels describe NAME \
       --region=REGION \
       --project=PROJECT_ID \
       --format='flattened(status,detailedStatus)'
    

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

    detailedStatus: Tunnel is up and running.
    

    ארבע הדוגמאות הבאות של פלט פקודות מציגות רשימה מלאה של זוג מנהרות בכל אחד משני שערי HA VPN שמחוברים זה לזה. כלומר, בממשק ha-vpn-gw-a, המנהרות ב-interface 0 וב-interface 1 מחוברות למנהרות בממשקים התואמים של ha-vpn-gw-b.

    דוגמה 1: tunnel-a-to-b-if-0

     creationTimestamp: '2018-10-11T13:12:33.851-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '2919847494518181982'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     — 0.0.0.0/0
     name: tunnel-a-to-b-if-0
     peerIp: GW_A_IF_0_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-0
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a
     vpnGatewayInterface: 0
    

    דוגמה 2: tunnel-a-to-b-if-1

     creationTimestamp: '2018-10-11T13:14:21.630-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '178016642781024754'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     —0.0.0.0/0
     name: tunnel-a-to-b-if-1
     peerIp: GW_B_IF_1_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-a
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-a-to-b-if-1
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-a
     vpnGatewayInterface: 1
    

    דוגמה 3: tunnel-b-to-a-if-0

     creationTimestamp: '2018-10-11T13:16:19.345-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '1183416925692236156'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     — 0.0.0.0/0
     name: tunnel-b-to-a-if-0
     peerIp: GW_A_IF_0_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-b
     vpnGatewayInterface: 0
    

    דוגמה 4: tunnel-b-to-a-if-1

     creationTimestamp: '2018-10-11T13:19:01.562-07:00'
     description: ''
     detailedStatus: Tunnel is up and running.
     id: '8199247227773914842'
     ikeVersion: 2
     kind: compute#vpnTunnel
     labelFingerprint: LABEL_FINGERPRINT
     localTrafficSelector:
     — 0.0.0.0/0
     name: tunnel-b-to-a-if-1
     peerIp: GW_A_IF_1_IP
     region: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1
     remoteTrafficSelector:
     — 0.0.0.0/0
     router: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/routers/router-b
     selfLink: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnTunnels/tunnel-b-to-a-if-1
     sharedSecret: '*************'
     sharedSecretHash: SECRET_HASH
     vpnGateway: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-central1/vpnGateways/ha-vpn-gw-b
     vpnGatewayInterface: 1
    

API

כדי לראות את פרטי המנהרה, אפשר להשתמש באחת מהקריאות הבאות ל-API:

  • כדי להציג את המאפיינים והסטטוס של כל מנהרות ה-VPN בפרויקט ובאזור ספציפיים, שולחים בקשת GET באמצעות השיטה vpnTunnels.list:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels
    
  • כדי להציג את המאפיינים והסטטוס של מנהרה ספציפית בפרויקט ובאזור ספציפיים, שולחים בקשת GET באמצעות השיטה vpnTunnels.get:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels/TUNNEL_NAME
    

בדיקת מנהרות VPN קלאסיות

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

המסוף

  1. נכנסים לדף VPN במסוף Cloud de Confiance .

    מעבר ל-VPN

  2. צופים בסטטוס של מנהרת ה-VPN ובסטטוס של סשן ה-BGP.

  3. כדי לראות את פרטי המנהרה, לוחצים על שם המנהרה.

  4. בקטע יומנים, לוחצים על הצגה עבור יומני Logging.

  5. אפשר גם לשנות את סשן ה-BGP שמשויך למנהרה הזו.

gcloud

התהליך לבדיקת הסטטוס של מנהרת VPN קלאסי דומה לזה של HA VPN.

בפקודות הבאות, מחליפים את מה שכתוב בשדות הבאים:

  • PROJECT_ID: מזהה הפרויקט
  • GW_NAME: השם של השער
  • REGION: האזור שבו נמצא השער או המנהרה
  • NAME: השם של המנהרה

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

  1. מזהים את השם והאזור של מנהרת ה-VPN שרוצים לבדוק את הסטטוס שלה. אפשר לזהות את המנהרה באחת מהדרכים הבאות:

    1. אפשרות 1: כדי לראות את רשימת כל מנהרות ה-VPN בפרויקט, מריצים את הפקודה הבאה:

      gcloud compute vpn-tunnels list
        --project=PROJECT_ID
      
    2. אפשרות 2: אם אתם יודעים את השם של שער ה-VPN שמכיל את המנהרה, כדי לאחזר את רשימת המנהרות שמשויכות לשער, מריצים את הפקודה הבאה:

      gcloud compute target-vpn-gateways describe GW_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --format='flattened(tunnels)'
      
  2. כדי לתאר את המנהרה ולקבוע את הסטטוס שלה, מריצים את הפקודה הבאה. מוחזרת הודעת הסטטוס הבסיסית והודעה מפורטת יותר. כדי לראות את הרשימה המלאה, משמיטים את האפשרות --format.

    gcloud compute vpn-tunnels describe NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --format='flattened(status,detailedStatus)'
    

API

כדי לראות את פרטי המנהרה, אפשר להשתמש באחת מהקריאות הבאות ל-API:

  • כדי להציג את המאפיינים והסטטוס של כל מנהרות ה-VPN בפרויקט ובאזור ספציפיים, שולחים בקשת GET באמצעות השיטה vpnTunnels.list:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels
    
  • כדי להציג את המאפיינים והסטטוס של מנהרה ספציפית בפרויקט ובאזור ספציפיים, שולחים בקשת GET באמצעות השיטה vpnTunnels.get:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnTunnels/TUNNEL_NAME
    

בדיקת כללי העברה ב-VPN קלאסי

כדי לבדוק את כללי ההעברה שיצרתם עבור שער VPN קלאסי, פועלים לפי השלבים הבאים.

המסוף

  1. נכנסים לדף VPN במסוף Cloud de Confiance .

    מעבר ל-VPN

  2. לוחצים על שם שער.

  3. בדף פרטי ה-VPN, אפשר לראות את כללי ההעברה שיצרתם.

gcloud

כדי לראות את כללי ההעברה של שער VPN קלאסי באזור מסוים, מריצים את הפקודה הבאה:

gcloud compute target-vpn-gateways describe GW_NAME
    --region=REGION \
    --project=PROJECT_ID

API

כדי להציג את כללי ההעברה של שער VPN קלאסי באזור ספציפי, משתמשים בשיטה targetVpnGateways.get. מחליפים את RESOURCE_ID בשם השער.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetVpnGateways/RESOURCE_ID

הסבר על הודעות הסטטוס של המנהרות

כדי להבין את הודעות הסטטוס של המנהרה ממסוף Cloud de Confiance או מ-CLI של Google Cloud, אפשר להיעזר בטבלה הבאה.

סטטוס הודעת סטטוס מפורטת הערות
הקצאת משאבים הקצאת משאבים. מנהרת ה-VPN תתחיל בקרוב. המצב ההתחלתי של מנהרת Cloud VPN חדשה.
בהמתנה להגדרה מלאה בהמתנה להגדרת המסלול. מתבצעת הכנה של מסלולים או של הגדרות ניתוב.
First Handshake Handshake with peer broken for unknown reason. ננסה שוב בקרוב. מתבצע משא ומתן בשלב 1 (IKE SA) עם ה-VPN של עמית. יכול להיות שהפעולה נכשלה לפחות פעם אחת.
נוצרה הטונל פועל. המנהרה פעילה והנתיבים הוגדרו.
אין חבילות נכנסות אין חבילות נכנסות מהעמית. לא מתקבלת תנועה משער ה-VPN של עמית.

בדיקת סטטוס הזמינות הגבוהה של שערי HA VPN

כדי לבדוק את סטטוס ההגדרה של הזמינות הגבוהה במנהרות בשער HA VPN, אפשר להשתמש במסוף Cloud de Confiance , בפקודה compute vpn-gateways get-status או בשיטה vpnGateways.getStatus.

בפלט מוצג מצב הדרישה של יתירות בזמינות גבוהה למנהרות VPN שמשויכות לכל שער שכן שאליו מחובר שער ה-HA VPN.

שער ה-VPN של העמית יכול להיות שער HA VPN אחר או שער VPN חיצוני. אם יש כמה שערי עמיתים שמחוברים לשער HA VPN, יוצגו כמה סטטוסים של תצורת זמינות גבוהה, סטטוס אחד לכל שער עמיתים.

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

  • שערי VPN שהוגדרו עם יתירות מספקת (כיסוי) יציגו את הסטטוס הבא:
    HighAvailabilityRedundancyRequirementState: CONNECTION_REDUNDANCY_MET.
  • שערי VPN שלא מוגדרת בהם יתירות מספקת יציגו את הסטטוס הבא:
    HighAvailabilityRedundancyRequirementState: CONNECTION_REDUNDANCY_NOT_MET.
  • אם לא מוגדרות מספיק מנהרות בין שער HA VPN לבין שער HA VPN אחר או שער עמית, בפלט הפקודה מוצג הסטטוס הבא:
    redundancyUnsatisfiedReason: INCOMPLETE_TUNNELS_COVERAGE.

מידע נוסף זמין במאמר בנושא הצגת יומנים ומדדים.

המסוף

  1. נכנסים לדף VPN במסוף Cloud de Confiance .

    מעבר ל-VPN

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

gcloud

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

  • GW_NAME: השם של שער HA VPN
  • REGION: האזור שבו נמצא שער הרשת
gcloud compute vpn-gateways get-status GW_NAME \
    --region=REGION

בדוגמה הבאה של פלט פקודה מוצג מידע על שער HA VPN שמחובר לשער עמית עם שני ממשקים:

  peerGateways:
  — peerExternalGateway: peer-gw
  tunnels:
  — localGatewayInterface: 0
    peerGatewayInterface: 0
    tunnelUrl:
    https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
    regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-0
  — localGatewayInterface: 1
    peerGatewayInterface:1
    tunnelUrl:
    https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
    regions/us-central1/vpnTunnels/tunnel-a-to-on-prem-if-1
    HighAvailabilityRedundancyRequirementState:
      state: CONNECTION_REDUNDANCY_MET

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

  • הסטטוס של ha-vpn-gw-a מראה את החיבור שלו ל-ha-vpn-gw-b:

    peerGateways:
    — peerGcpGateway: ha-vpn-gw-b
    tunnels:
    — localGatewayInterface: 0
      peerGatewayInterface: 0
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-a-to-b-if-0
    — localGatewayInterface: 1
      peerGatewayInterface: 1
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-a-to-b-if-1
      HighAvailabilityRedundancyRequirementState:
        state: CONNECTION_REDUNDANCY_MET
    
  • הסטטוס של ha-vpn-gw-b מראה את החיבור שלו ל-ha-vpn-gw-a:

    peerGateways:
    — peerGcpGateway: ha-vpn-gw-a
    tunnels:
    — localGatewayInterface: 0
      peerGatewayInterface: 0
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0
    — localGatewayInterface: 1
      peerGatewayInterface: 1
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-b-to-a-if-1
      HighAvailabilityRedundancyRequirementState:
        state: CONNECTION_REDUNDANCY_MET
    

בדוגמה הבאה של פלט הפקודה מוצג שער HA VPN אחד שמחובר לשער וירטואלי של AWS עם שני חיבורים וארבע כתובות IP:

  peerGateways:
  - peerExternalGateway: peer-gw
  tunnels:
   - localGatewayInterface: 0
     peerGatewayInterface: 0
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-0-ip0
   - localGatewayInterface: 0
     peerGatewayInterface: 1
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-0-ip1
   - localGatewayInterface: 1
     peerGatewayInterface: 2
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-1-ip0
   - localGatewayInterface: 1
     peerGatewayInterface: 3
     tunnelUrl:
     https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
     regions/us-central1/vpnTunnels/tunnel-a-to-aws-connection-1-ip1
     HighAvailabilityRedundancyRequirementState:
       state: CONNECTION_REDUNDANCY_MET

בדוגמה הבאה מוצג פלט פקודה שמתייחסת לשני שערים של HA VPN שמחוברים זה לזה באמצעות מנהרה אחת. ההגדרה הזו לא עומדת בדרישות של הסכם רמת השירות (SLA) לזמינות של 99.99%:

  peerGateways:
    - peerGcpGateway: ha-vpn-gw-a
    tunnels:
    - localGatewayInterface: 0
      peerGatewayInterface: 0
      tunnelUrl:
      https://www.googleapis.com/compute/v1/projects/PROJECT_ID/
      regions/us-central1/vpnTunnels/tunnel-b-to-a-if-0
      HighAvailabilityRedundancyRequirementState:
        state: CONNECTION_REDUNDANCY_NOT_MET
      detailedStatus:
        redundancyUnsatisfiedReason: INCOMPLETE_TUNNELS_COVERAGE

API

כדי לקבל את הסטטוס של שער HA VPN ספציפי בפרויקט ובאזור ספציפיים, שולחים בקשת GET באמצעות השיטה vpnGateways.getStatus:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/vpnGateways/GATEWAY_NAME/getStatus

בדיקת הסטטוס של BGP

במנהרות שמשתמשות בניתוב דינמי עם BGP, אפשר לבדוק את הסטטוס של Cloud Router כדי לראות פרטים כמו הסטטוס של סשני BGP של נתב או המסלולים ש-Cloud Router מפרסם.

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

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