דלג לתוכן הראשי

networking

Subnetting מאפס: איך לחשב CIDR

robinhood-projectsקריאה של 9 דקות

מחשבון רשת משנה IPv4

מחשב כתובת רשת, כתובת Broadcast, טווח Hosts שמישי, מסיכת רשת, מסיכת Wildcard ומספר Hosts מכל בלוק CIDR של IPv4.

השתמש בכלי ←

מרחיב טווח CIDR

מרחיב כל בלוק CIDR לרשימה המלאה של כתובות IP בודדות באותו טווח.

השתמש בכלי ←

Subnet to CIDR Converter

Convert a subnet mask (e.g. 255.255.255.0) to CIDR prefix notation (e.g. /24).

השתמש בכלי ←

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

לחלוקת הרשת שלושה יתרונות עיקריים:

  1. בידוד תעבורה — תעבורת broadcast נשארת בתוך ה-subnet ולא מציפה את כל הרשת.
  2. פילוח אבטחה — firewall-ים ו-ACL-ים פועלים על גבולות subnet, מה שמאפשר להגביל תעבורה בין אזורים.
  3. יעילות כתובות — מקצים רק כמה כתובות מארח שכל קטע באמת צריך, במקום לבזבז /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.4.0
Subnet mask255.255.252.0
Wildcard mask0.0.3.255
Broadcast172.16.7.255
מארח שמיש ראשון172.16.4.1
מארח שמיש אחרון172.16.7.254
סה"כ כתובות מארח1,024
כתובות מארח שמישות1,022

שימו לב שהכתובת הנכנסת 172.16.5.0 היא כתובת מארח בתוך ה-subnet — כתובת הרשת של בלוק /22 זה היא 172.16.4.0. זהו טריק מבחן נפוץ: הכתובת שניתנת לא תמיד היא כתובת הרשת עצמה.

טיפ: אמתו את חישוביכם הידניים מיידית מול מחשבון Subnet IPv4 → של FileCrank. הדביקו 172.16.5.0/22 ואשרו שכל שש הערכים תואמים לפני שמתקדמים לתרגילים קשים יותר.

גדלי Subnet נפוצים במבט מהיר

PrefixSubnet Maskסה"כ כתובותמארחים שמישיםשימוש אופייני
/8255.0.0.016,777,21616,777,214ארגון גדול, ISP
/16255.255.0.065,53665,534קמפוס ארגוני
/20255.255.240.04,0964,094מחלקה גדולה
/22255.255.252.01,0241,022מחלקה בינונית
/24255.255.255.0256254LAN קטן, הנפוץ ביותר
/25255.255.255.128128126פיצול /24
/26255.255.255.1926462קטע קטן
/27255.255.255.2243230VLAN שרתים
/28255.255.255.2401614אשכול קטן
/30255.255.255.25242קישור point-to-point

ה-/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 לחלוקה בין ארבעה קטעים:

קטעמארחים נדרשיםבלוק מוקצהPrefix
הנדסה10010.0.0.0/25 (126 מארחים)
מכירות5010.0.0.128/26 (62 מארחים)
ניהול2010.0.0.192/27 (30 מארחים)
Point-to-point210.0.0.224/30 (2 מארחים)

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 מבוסס מדיניות).