לדלג לתוכן

BGP

מתוך ויקיפדיה, האנציקלופדיה החופשית

Border Gateway Protocolאו בקיצורBGPהוא פרוטוקולניתובהמהווה את ליבת מערכת הניתוב שלרשתהאינטרנט[1].BGP הוא פרוטוקול ניתוב מבוסס קשר (Path-vector), המתפקד בשכבת היישום של מודל ה-OSIוכן בשכבת היישום של מודל ה-TCP/IP.נתבשפועל באמצעות BGP מנהל טבלה של הרשתותהמחוברות אליו, והקשרים ביניהן לבין רשתות אחרות, ומבצע החלטותניתובעל בסיס הקשרים בין הרשתות ומדיניות המוכתבת בצורה ידנית על ידי מנהל הרשת.

BGP נמצא בשימוש באינטרנט מאז שנת 1994.

בשנת 2006 פורסמה הגרסה העדכנית של הפרוטוקול (BGP4) ב-RFC 4271.גרסה זו הרחיבה את השימוש בפרוטוקול גם לרשתות IP בסימוןCIDR.

אופן פעולת הפרוטוקול

[עריכת קוד מקור|עריכה]

לכל מערכת אוטונומית (AS - Autonomous System) לניהול רשת באינטרנט מוקצה מספר מזהה ייחודי (ASN - Autonomous System Number). כל AS מהווה צומת ניתוב שמשתמש בפרוטוקול BGP כדי לבנות מסלולי ניתוב דינמיים כדי להתממשק מול AS-ים אחרים[2].

כדי לבנות מסלולים, כל AS מפרסם את ה-ASN ורשימת תחומי כתובות(Prefix) שיש ברשותו והוא יכול להעביר אליהם תעבורה בחבילת BGP Announcement לשכנים שלו. כל שכן מקבל את ההודעה, אוגר את המידע ומשקלל אותו עם המסלולים ששמורים אצלו. לאחר מכן השכן מחלחל את המידע הלאה לשכנים שלו על ידי שרשור ה-ASN של עצמו להודעה. השכנים החדשים מקבלים את תחומי הכתובות יחד עם רשימת ה-ASN-ים שעליהם לעבור כדי להגיע לאותה קבוצת כתובות.

כדי להימנע ממעגלים, AS-ים מפילים הודעות BGP שמכילות את ה-ASN של עצמם.

בחירת מסלול

[עריכת קוד מקור|עריכה]

בחירת המסלול המיטבי נעשית באופן נפרד בכל AS, ורק המסלול המיטבי מפורסם לשכנים. תהליך זה נעשה באמצעות התחשבות בהרבה גורמים כמו כמות הAS-ים בדרך ליעד מסוים או מהירות התקשורת בין שכנים שונים. עם זאת, ההחלטה בסוף נקבעת גם באמצעות מדיניות של ה-AS (BGP Policy ) שנקבעת באופן עצמאי בכל ארגון שבבעלותו AS. דבר זה יכול לגרום לכך שמסלול השליחה ומסלול הקבלה של חבילת מידע לא תמיד יהיו זהים.

יצירת שכנות (BGP Peering)

[עריכת קוד מקור|עריכה]

שני נתבים שמתקשרים ב-BGP יכולים ליצור קשר ביניהם אם הוגדר להם לעשות זאת באופן ידני (אין בפרוטוקול מנגנון שכנות אוטומטי). לאחר מכן, הם יפתחוחיבורBGP מעל חיבור TCP בפורט 179. כל נתב (BGP Speaker) שולח הודעתKeepaliveשל 19 בתים כל 60 שניות כדי לשמור על החיבור.

תתי פרוטוקולים

[עריכת קוד מקור|עריכה]

iBGP או BGP פנימי, הוא פרוטוקול ניתוב בין שני נתבי BGP בתוך אותו AS. מטרת הפרוטוקול היא לספק מידע לנתבים פנימיים ברשת, כמו רשימת כתובות IP הנמצאות מחוץ ל-AS.

eBGP או BGP חיצוני, הוא פרוטוקול ניתוב בין שני נתבי BGP השייכים לAS-ים שונים ושכנים זה לזה (BGP peers). מטרת הפרוטוקול היא לאתר את המסלול האופטימלי ברשת באמצעות עדכון AS-ים אודות כתובות ה-IP עליהן כל נתב אחראי, כדי שהם ינתבו אליו מידע רלוונטי.

בעיות אבטחה

[עריכת קוד מקור|עריכה]

חטיפת BGP (BGP Hijacking)

[עריכת קוד מקור|עריכה]

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

  1. מניעת שירותעל ידי יצירת מסלולים כוזבים או ביטול מסלולים לגיטימיים.
  2. האזנהעל ידי שימוש ב-BGP כדי לנתב תעבורה לכיוון רכיב או רשת אינטרנטיים שנמצאים בבעלות התוקף.
  3. יצירת חוסר יציבות במסלול.

קישורים חיצוניים

[עריכת קוד מקור|עריכה]

הערות שוליים

[עריכת קוד מקור|עריכה]
  1. ^מערך הסייבר הלאומי,המלצות ליישום (Best Practices) מניעה והתמודדות כנגד חטיפת BGP,באתר gov.il, ‏יולי 2020
  2. ^דן פייגין,BGP Hijacking - או עד כמה קל להפיל את האינטרנט?,Digital Whisper102, 2019