Subnetting מאפס: איך לקרוא ולחשב CIDR notation
בכל פעם שמגדירים ממשק router, כותבים חוק firewall או מתכננים תכנית כתובות IP, אתם עובדים עם subnets ו-CIDR notation. אם החישובים האלה עדיין מרגישים קצת לא בטוחים — או שאתם לומדים ל-CCNA, CompTIA Network+ או הסמכה דומה — מדריך זה עובר על כל התהליך מהעקרונות הראשוניים. ללא עמימות, ללא דילוג על שלבים.
מה זה כתובת IP?
כתובת IP היא מספר של 32 סיביות. הסימון העשרוני-נקודתי שרואים כל יום — 192.168.1.100 — הוא פשוט דרך קריאה לאדם לכתוב את המספר הזה: ארבע קבוצות של שמונה סיביות, כל אחת מבוטאת כמספר שלם עשרוני בין 0 ל-255.
מבנה IPv4: ארבעה אוקטטים, 32 סיביות
כל קבוצה נקראת אוקטט (שמונה סיביות). כך 192.168.1.100 בבינארי מלא הוא:
192 168 1 100
11000000 10101000 00000001 01100100
מחרוזת ה-32 סיביות הזאת היא הכתובת האמיתית שהחומרה עובדת איתה. הסימון העשרוני-נקודתי קיים רק מפני שבני אדם מתקשים לזכור מחרוזות בינאריות של 32 סיביות.
למה 4 מיליארד כתובות אזלו
2^32 = 4,294,967,296. זה נשמע עצום, אבל זה לא — לא כשכל סמארטפון, חיישן IoT, VM בענן ו-router ביתי צריכים כתובת. קהילת האינטרנט צפתה את האיפוס בשנות ה-90 ועיצבה שני פתרונות: NAT (שמאפשר לרבים לשתף IP ציבורי אחד) ו-IPv6 (שמשתמש בכתובות של 128 סיביות). Subnetting — חלוקת מרחב הכתובות הזמין לבלוקים קטנים ויעילים יותר — הוא הכלי המרכזי האחר. הוא מונע את הבזבוז שגרם מערכת הכיתות הישנה שהקצתה כתובות בבלוקים קבועים של מיליונים בבת אחת.
מה זה Subnet?
Subnet (קיצור של sub-network) הוא חלוקה לוגית של רשת IP. במקום בלוק שטוח של 65,536 כתובות לכל ארגון, מחלקים את הבלוק לקטעים קטנים יותר — אחד לכל מחלקה, קומה, פונקציה או אזור אבטחה.
חלק הרשת מול חלק המארח
כל כתובת IP מתפרשת בשני חלקים בו זמנית:
- חלק הרשת — מזהה לאיזה subnet שייכת הכתובת. כל המכשירים באותו subnet חולקים חלק זה.
- חלק המארח — מזהה את המכשיר הספציפי בתוך ה-subnet.
ה-subnet mask מגדיר את הגבול בין השניים. בצורה עשרונית-נקודתית, 255.255.255.0 אומר "ה-24 סיביות הראשונות הן חלק הרשת; ה-8 הסיביות האחרונות הן חלק המארח".
למה מחלקים רשתות ל-subnets
לחלוקת הרשת שלושה יתרונות עיקריים:
- בידוד תעבורה — תעבורת broadcast נשארת בתוך ה-subnet ולא מציפה את כל הרשת.
- פילוח אבטחה — firewall-ים ו-ACL-ים פועלים על גבולות subnet, מה שמאפשר להגביל תעבורה בין אזורים.
- יעילות כתובות — מקצים רק כמה כתובות מארח שכל קטע באמת צריך, במקום לבזבז /16 על קישור point-to-point.
הבנת CIDR notation
CIDR הוא ראשי תיבות של Classless Inter-Domain Routing. החליף את מערכת הכיתות הישנה (Class A/B/C) ב-1993 וכעת הוא אוניברסלי. CIDR notation משלב כתובת IP ואורך prefix במחרוזת אחת:
192.168.1.0/24
המספר אחרי הלוכסן הוא אורך ה-prefix — כמה סיביות, ספורות משמאל, שייכות לחלק הרשת.
מה המשמעות של /24 (אורך prefix)
/24 אומר שה-24 סיביות הראשונות הן הרשת. מאחר ויש 32 סיביות בסך הכל, נשארות 8 סיביות למארחים.
- 8 סיביות מארח → 2^8 = 256 כתובות בבלוק
- מחסירים 2 (כתובת רשת + broadcast) → 254 כתובות מארח שמישות
/25 משאיר 7 סיביות מארח: 2^7 = 128 כתובות, 126 שמישות.
/30 משאיר 2 סיביות מארח: 2^2 = 4 כתובות, 2 שמישות — הבלוק המינימלי לקישור point-to-point.
איך להמיר בין סימון לוכסן ל-subnet mask עשרוני-נקודתי
כותבים 32 סיביות. ממלאים את n הסיביות הראשונות (כש-n הוא אורך ה-prefix) ב-1, והסיביות הנותרות ב-0. אז קוראים אותן כארבעה אוקטטים בעשרוני.
עבור /24:
11111111 11111111 11111111 00000000
255 255 255 0
Subnet mask: 255.255.255.0
עבור /22:
11111111 11111111 11111100 00000000
255 255 252 0
Subnet mask: 255.255.252.0
ההפך — המרת mask חזרה לסימון לוכסן — הוא פשוט ספירת הסיביות שהן 1. השתמשו ב-ממיר Subnet ל-CIDR → של FileCrank כדי לעשות זאת מיידית.
איך לחשב subnet ביד
לעבוד דרך החשבון פעם אחת מגבש את המושג בדרך שפלט כלים לבדו לעולם לא ישיג. הנה התהליך השיטתי.
שלב 1 — המרה לבינארי
לוקחים את כתובת ה-IP וכותבים את כל 32 הסיביות. עבור 172.16.5.0:
172 16 5 0
10101100 00010000 00000101 00000000
שלב 2 — זיהוי סיביות רשת ומארח
עם prefix /22, 22 הסיביות הראשונות הן חלק הרשת ו-10 הסיביות האחרונות הן חלק המארח. מציירים קו בסיביה 22:
10101100 00010000 000001 | 01 00000000
<---------- רשת (22 סיביות)----> <-- מארח (10 סיביות)-->
שימו לב שהפיצול נופל באמצע האוקטט השלישי. זהו מקור רוב הבלבול ב-subnetting — הגבול לא חייב להיות מיושר עם גבול אוקטט.
שלב 3 — מציאת כתובת הרשת, Broadcast, טווח שמיש
- כתובת רשת: מאפסים את כל סיביות המארח.
10101100 00010000 00000100 00000000 → 172.16.4.0 - כתובת broadcast: מאחדים את כל סיביות המארח.
10101100 00010000 00000111 11111111 → 172.16.7.255 - טווח שמיש: כתובת רשת + 1 עד broadcast - 1.
172.16.4.1עד172.16.7.254
דוגמה מפורטת: 172.16.5.0/22
שימו לב שהכתובת הנכנסת 172.16.5.0 היא כתובת מארח בתוך ה-subnet — כתובת הרשת של בלוק /22 זה היא 172.16.4.0. זהו טריק מבחן נפוץ: הכתובת שניתנת לא תמיד היא כתובת הרשת עצמה.
טיפ: אמתו את חישוביכם הידניים מיידית מול מחשבון Subnet IPv4 → של FileCrank. הדביקו
172.16.5.0/22ואשרו שכל שש הערכים תואמים לפני שמתקדמים לתרגילים קשים יותר.
גדלי Subnet נפוצים במבט מהיר
ה-/24 הוא בפער הנפוץ ביותר בפועל כי 254 מארחים הם הגודל הנכון לרוב ה-VLAN-ים, והחשבון טריוויאלי (חלק המארח תמיד הוא האוקטט האחרון).
שימוש במחשבון Subnet של FileCrank
לעבודה יומיומית — כתיבת חוקי firewall, תכנון הקצאת כתובות, אימות תצורה — אין צורך לבצע חשבון בינארי ביד. הזינו כתובת IP כלשהי עם אורך prefix ל-מחשבון Subnet IPv4 → של FileCrank והוא מיידית מחזיר כתובת רשת, broadcast, טווח שמיש, subnet mask, wildcard mask ומספר מארחים.
אם צריך לראות כל כתובת IP פרטנית בתוך בלוק CIDR — שימושי בהגדרת רשימות לבנות או בדיקת הקצאות — מרחיב טווח CIDR → מפרט את כולן. שני הכלים פועלים לגמרי בדפדפן: שום מידע לא יוצא מהמכשיר שלכם, ללא צורך בחשבון.
לגישה מהירה לכל כלי subnet ו-CIDR במקום אחד, רכז כלי הרשת → מפרט את כל 24 הכלים.
מה זה VLSM ולמה זה חשוב למועמדים לאישורים?
Variable Length Subnet Masking (VLSM) מרחיב subnetting בסיסי בכך שמאפשר ל-subnets שונים בתוך אותה רשת להשתמש באורכי prefix שונים. במקום לחלק /24 לארבעה /26 שווים (62 מארחים שמישים כל אחד), VLSM מאפשר להקצות בדיוק את גודל הבלוק שכל קטע צריך.
דוגמה: יש לכם 10.0.0.0/24 לחלוקה בין ארבעה קטעים:
VLSM ממזער בזבוז כתובות ונבחן רבות בבחינות CCNA ו-Network+. המיומנות המרכזית שהבוחנים בודקים: בהינתן דרישה (מספר מארחים), זהה את ה-prefix הקטן ביותר שמסַפּק אותה, אז הקצה בלוקים לא-חופפים ממרחב הכתובות בסדר.
גם סימולציות בחינות CCNA וגם Network+ נותנות לכם מאגר כתובות קבוע ומבקשות מכם לחלק ל-subnets עבור דרישות מרובות בו זמנית — VLSM הוא הגישה המעשית היחידה. תרגול עם חישובים ידניים ואימות עם מחשבון Subnet IPv4 → הוא הדרך המהירה ביותר לבנות שטף.
שאלות נפוצות
מה ההבדל בין subnet mask ל-wildcard mask?
subnet mask מכיל 1-ים בחלק הרשת ו-0-ים בחלק המארח. wildcard mask הוא ההופכי הביטי שלו — 0-ים בחלק הרשת ו-1-ים בחלק המארח. wildcard masks משמשים ב-ACL-ים של Cisco ובהצהרות network של OSPF. עבור /24, subnet mask הוא 255.255.255.0 וה-wildcard הוא 0.0.0.255.
מה המשמעות של "כל סיביות המארח אפס" ו"כל סיביות המארח אחד"?
כשכל סיביות המארח הן 0, הכתובת היא כתובת הרשת — מזהה את ה-subnet עצמו ולא ניתן להקצות למכשיר. כשכל סיביות המארח הן 1, הכתובת היא כתובת broadcast — חבילות שנשלחות לכאן מועברות לכל מארח ב-subnet. אף אחת מהן לא ניתנת לשימוש ככתובת מארח.
האם שני subnets יכולים לחפוף?
לא. subnets חופפים גורמים לעמימות routing: ה-router לא יכול לקבוע דרך איזה ממשק להעביר חבילה. תמיד אמתו שבלוקים שהוקצו לאחרונה לא מכילים כתובות שכבר בשימוש על ידי בדיקה שהטווחים שלהם לא נחתכים.
מה ה-subnet הקטן ביותר לשימוש על קישור point-to-point?
/30 (4 כתובות: רשת, שני מארחים, broadcast) הוא הבחירה המסורתית. /31 (RFC 3021) מספק בדיוק 2 כתובות ללא רשת או broadcast — תקף לשימוש point-to-point ברוב גרסאות ה-IOS/NX-OS המודרניות ומועדף בדרך כלל כי לא מבזבז כתובות.
איך ממירים subnet mask ל-CIDR notation?
סופרים את הסיביות שהן 1 הרצופות בייצוג הבינארי של ה-mask. 255.255.255.0 = 24 אחדות = /24. 255.255.252.0 = 22 אחדות = /22. ממיר Subnet ל-CIDR → של FileCrank עושה זאת בצעד אחד.
למה ה-router שלי מציג "host route" עם /32?
ל-/32 אין סיביות מארח — זה מסלול לכתובת ספציפית בודדת, לא רשת. ה-router-ים משתמשים במסלולי מארח /32 כדי לכפות next-hop-ים ספציפיים לכתובות יחידות (נפוץ ב-BGP, ממשקי loopback ו-routing מבוסס מדיניות).