Basic IP Addressing & Subnetting

במאמר זה אלמד לעבוד עם בינארי, אסביר מהי כתובת IP (תוך התייחסות ל- IPv4 בלבד), מהי Subnet Mask ומהו Default Gateway, אסקור את ההבדלים בין כתובות פרטיות לכתובות ציבוריות ואסביר בקצרה כיצד מגדירים רשת.
המאמר מיועד לקהל יעד בעל הבנה מינימלית-בסיסית במחשבים וברשתות תקשורת.

עבודה עם בינארי:

כדי להבין את המאמר, נצטרך לדעת לעבוד עם ערכים בינארים ולהמיר ערך דצימלי לערך בינארי ולהיפך.
נעבוד עם 8 סיביות בצורה הבאה (כל מספר מייצג ביט): 1 2 4 8 16 32 64 128
נתחיל מהערך הגדול (128) לקטן (1), עבור כל סיבית שהערך שלה נכנס במספר שברצוננו להמיר נסמן 1 ונפחית את הערך שלה מהמספר הנתון, במידה וערך הסיבית גדול מהמספר הנתון נסמן 0 ונמשיך הלאה לסיבית הבאה עד שנגיע ל- 0, אם הגענו ל- 0 לפני הסוף נסמן 0 בכל הסיביות שנשארו.
לדוגמה – נמיר את המספר 100 לבינארי.

מכאן הבנו שהערך הבינארי של 100 הוא 01100100, תרגלו בעצמכם המרה של כמה מספרים מבסיס אחד לשני, חשוב להבין את זה כדי להמשיך הלאה.
בהמרה עם 8 ביטים בצורה הזאת, ניתן להמיר מספרים בין 0 (00000000) ל- 255 (11111111).

IP Address (בעברית: כתובת IP):

כתובת IP הינה מזהה ייחודי הניתן למכשירים (מחשבים, נתבים וכד') ברשת IP על מנת שיוכלו לתקשר ביניהם. הכתובת מורכבת מ- 32 סיביות המחולקים ל- 4 חלקים של 8 סיביות כל אחד (נקראים גם octets) המופרדים ביניהם בנקודה (.). נהוג להמיר את הכתובת לערך דצימלי, כך שכל אחד מארבעת חלקי הכתובת מכיל מספר בטווח 0-255.
כתובת IP לדוגמה: 74.125.230.83 (בבינארי: 01001010.01111101.11100110.01010011).

בנוסף, ניתן לחלק את כתובות ה- IP ל- 5 מחלקות/ רשתות, A-E, אנו נתייחס לרשתות A-C בלבד היות והן הרשתות שבהן נעשה השימוש העיקרי כיום.
את המחלקה/ הרשת של כתובת ה- IP ניתן לזהות על פי ה- octet (החלק) הראשון בכתובת:
רשת A מכילה את הכתובות שבהן ה- octet הראשון הינו בטווח 1-127.
רשת B מכילה את הכתובות שבהן ה- octet הראשון הינו בטווח 128-191.
רשת C מכילה את הכתובות שבהן ה- octet הראשון הינו בטווח 192-223.

Subnet Mask (בעברית: מסכת רשת משנה):

subnet mask הינה הגדרה בעלת מבנה זהה לזה של כתובת IP הבאה במטרה להגדיר איזה חלק מהכתובת מסמל את הרשת ואיזה חלק מסמל את המכשיר (לדוג': מחשב).
בעזרת subnet masks ניתן לחלק כל אחת מן הרשתות המוזכרות לעיל לתת-רשתות וכך בעצם ניתן ליצור מספר רשתות גדול יותר בצורה משמעותית לעומת כמות הרשתות שיכולנו ליצור בשימוש ברשתות הקיימות במחלקות A-C בלבד.
כשמגדירים subnet mask חובה לשמור על רצף של 1 (המשמש לציון הרשת) ולאחר מכן רצף של 0 (המשמש לציון הרכיבים), רצוי לכתוב את ה- subnet mask בבינארי לפני שהופכים אותו לדצימלי בכדי לוודא את תקינות ההגדרה.

כאשר לא נגדיר subnet mask, יעשה שימוש בהגדרת ברירת המחדל שהוגדרה עבור הרשת (A-C) של הכתובת בה השתמשנו –
ברשת A ברירת המחדל היא 255.0.0.0 11111111.00000000.00000000.00000000,
הרשת מוגדרת ע"י ה- octet הראשון בכתובת (8 bits), הרכיבים ע"י שלושת האחרים (24 bits).
ברשת B ברירת המחדל היא 255.255.0.0 11111111.11111111.00000000.00000000,
הרשת מוגדרת ע"י שני ה- octets הראשונים בכתובת (16 bits), הרכיבים ע"י שני האחרים (16 bits).
ברשת C ברירת המחדל היא 255.255.255.0 11111111.11111111.11111111.00000000,
הרשת מוגדרת ע"י שלושת ה- octets הראשונים בכתובת (24 bits), הרכיבים ע"י האחרון (8 bits).

דוגמאות:
subnet mask תקין – 255.255.255.224 11111111.11111111.11111111.11100000 (קיים רצף תקין של 1 ו- 0).
subnet mask לא תקין – 255.255.255.153 11111111.11111111.11111111.10011001 (לא קיים רצף תקין של 1 ו- 0).

Default Gateway (בעברית: שער ברירת מחדל):

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

כתובות ציבוריות וכתובות פרטיות:

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

ישנם מספר טווחים שהוקצו לטובת כתובות פרטיות –
10.0.0.0 – 10.255.255.255
172.16.0.0 – 172.31.255.255
192.168.0.0 – 192.168.255.255

Subnetting:

אחרי שלמדנו והבנו כמה מושגים בסיסיים, הגיע החלק המעשי – איך מגדירים subnet masks.
ניתן להגדיר subnet masks על פי שני עקרונות: כמות הרשתות הרצויה או כמות הרכיבים הרצויה בכל רשת.

ב- 2 ההדגמות נשתמש בכתובת הרשת הבאה: 192.168.0.0

נתחיל עם הגדרה על פי כמות רשתות רצויה:

שלב ראשון – הגדרת כמות הרשתות הרצויה, המרת המספר לבינארי ומציאת כמות הביטים הדרושה לייצוג אותו מספר, לצורך הדגמה נצטרך 5 רשתות.
לאחר שנמיר את המספר 5 לבינארי נקבל 00000101, כמו שניתן לראות השתמשנו ב- 3 ביטים (00000101) כדי להגדיר את כמות הרשתות.

שלב שני – הצבת כמות הביטים הנחוצה ב- subnet mask ותחימת הטווחים ברשת.
כפי שניתן לראות אנו משתמשים בכתובת IP מרשת C (ה- octet הראשון הינו 192),
אנו יודעים שה- subnet mask ברירת המחדל של רשת זו הינה 255.255.255.0, או 11111111.11111111.11111111.00000000 בייצוג בינארי.
הסברנו שאנו משתמשים ב- 1 להגדרת הרשת וב- 0 להגדרת הרכיבים, לכן נגדיר 3 ביטים (כמות הביטים הדרושה לייצוג כמות הרשתות הרצויה) עבור הרשת ו- 5 ביטים עבור הרכיבים ונקבל: 11111111.11111111.11111111.11100000.
נמיר את ה- subnet mask שהתקבל לערכים דצימלים ונקבל: 255.255.255.224.

כדי לתחום את הטווחים ברשת נבצע את הפעולה הבאה –
מצאנו שצריך 3 ביטים כדי להגדיר 5 רשתות והצבנו אותם בצורה הבאה: 11100000,
נבחר את ערכו של הביט הנמוך ביותר בו אנו משתמשים, במקרה הזה זה יהיה הביט השלישי משמאל (הראשון משמאל הוא 128, השני הוא 64, השלישי הוא 32 וכך הלאה),
הערך הנמוך ביותר הינו 32 וזה ישמש אותנו לתחימת הרשת בצורה הבאה:
192.168.0.0 – 192.168.0.31
192.168.0.32 – 192.168.0.63
192.168.0.64 – 192.168.0.95
192.168.0.96 – 192.168.0.127
192.168.0.128 – 192.168.0.159

עכשיו נעבור להגדרה על פי כמות הרכיבים הרצויה בכל רשת:

שלב ראשון – הגדרת כמות הרכיבים המירבית בכל רשת, המרת המספר לבינארי ומציאת כמות הביטים הדרושה לייצוג אותו מספר, לצורך הדגמה נצטרך 30 רכיבים בכל רשת.
לאחר שנמיר את המספר 30 לבינארי נקבל 00011110, כמו שניתן לראות השתמשנו ב- 5 ביטים (00011110) כדי להגדיר את כמות הרכיבים.

שלב שני – הצבת כמות הביטים הנחוצה ב- subnet mask, מציאת כמות הרכיבים המירבית בכל רשת ותחימת הטווחים ברשת.
כפי שניתן לראות אנו משתמשים בכתובת IP מרשת C (ה- octet הראשון הינו 192),
אנו יודעים שה- subnet mask ברירת המחדל של רשת זו הינה 255.255.255.0, או 11111111.11111111.11111111.00000000 בייצוג בינארי.
הסברנו שאנו משתמשים ב- 0 להגדרת הרכיבים וב- 1 להגדרת הרשת לכן נגדיר 5 ביטים (כמות הביטים הדרושה לייצוג כמות הרכיבים הרצויה) עבור הרכיבים ו- 3 ביטים עבור הרשת ונקבל: 11111111.11111111.11111111.11100000.
נמיר את ה- subnet mask שהתקבל לערכים דצימלים ונקבל: 255.255.255.224.

כדי לתחום את הטווחים ברשת נבצע את הפעולה הבאה –
מצאנו שצריך 5 ביטים כדי להגדיר 30 רכיבים בכל רשת והצבנו אותם בצורה הבאה: 11100000,
נבחר את ערכו של הביט הנמוך ביותר בו אנו משתמשים, במקרה הזה זה יהיה הביט השלישי משמאל (הראשון משמאל הוא 128, השני הוא 64, השלישי הוא 32 וכך הלאה),
הערך הנמוך ביותר הינו 32 וזה ישמש אותנו לתחימת הרשת בצורה הבאה:
192.168.0.0 – 192.168.0.31
192.168.0.32 – 192.168.0.63
192.168.0.64 – 192.168.0.95
192.168.0.96 – 192.168.0.127
192.168.0.128 – 192.168.0.159

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

חשוב לדעת!
לכל רכיב ברשת IP חובה להגדיר IP address כדי שנוכל לתקשר איתו,
לכל רשת IP חובה שתהיה subnet mask כדי לתחום את טווח הכתובות שלה,
הגדרת default gateway אינה בגדר חובה והיא דרושה רק במידה ורוצים לתקשר אל מחוץ לרשת המקומית.

הגדרת רשת לדוגמה:
הגדרת רשת לדוגמה

2 תגובות בנושא “Basic IP Addressing & Subnetting”

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *