Networking

IPv6: המדריך המקצועי המלא בעברית לכתובות, Prefixes ו-Neighbor Discovery (CCNA 200-301)

13 דק׳ קריאהמכללת נטמי
IPv6: המדריך המקצועי המלא בעברית לכתובות, Prefixes ו-Neighbor Discovery (CCNA 200-301)

במשך שנים אנשי רשת נהגו לומר ש-IPv6 הוא 'בעיה של מחר'. מחר כבר הגיע: ספקיות סלולר בישראל ובעולם מקצות ללקוחות כתובות IPv6 בלבד, ענני AWS ו-Azure מציעים רשתות Dual-Stack כברירת מחדל, ומערכות הפעלה מודרניות מעדיפות IPv6 על פני IPv4 בכל פעם שהוא זמין. במבחן CCNA 200-301 v1.1 יש ל-IPv6 נוכחות משמעותית — ובראיונות עבודה הוא הפך למסננת: מי שמגמגם על FE80 מסמן לעצמו החוצה.

למה בכלל עברנו ל-128 סיביות

IPv4 מציע 32 סיביות, כלומר כ-4.3 מיליארד כתובות — ובפועל פחות, אחרי שמורידים מחלקות שמורות, Multicast, Loopback וכתובות בדיקה. הפתרון הזמני היה NAT, וכפי שכל מי שניסה לאבחן VoIP או VPN מאחורי NAT יודע, המחיר הוא שבירת עקרון הקצה-לקצה, מורכבות תפעולית ובעיות אבטחה. IPv6 מגדיר 128 סיביות — כ-3.4 כפול 10 בחזקת 38 כתובות. זה מספר גדול עד כדי גיחוך: אפשר להקצות כתובת ייחודית לכל גרגר חול על פני כדור הארץ ועדיין להישאר עם עודף.

  • מרחב כתובות ענק שמייתר NAT ומחזיר קישוריות קצה-לקצה אמיתית.
  • כותרת פשוטה יותר בגודל קבוע של 40 בתים — ניתוב מהיר יותר בציוד.
  • אין Broadcast: הפונקציונליות עברה ל-Multicast ממוקד, מה שמפחית רעש ברשת.
  • הגדרה עצמית של כתובות (SLAAC) — מארח יכול לקבל כתובת מלאה בלי שרת DHCP.
  • IPsec נבנה כחלק אינטגרלי מהתקן, ולא כתוסף מאוחר.

מבנה הכתובת: 8 הקסטטים, שני חצאים

כתובת IPv6 נכתבת כשמונה קבוצות של ארבע ספרות הקסדצימליות, מופרדות בנקודתיים: x:x:x:x:x:x:x:x. כל קבוצה (Hextet) מייצגת 16 סיביות. לדוגמה 2001:0000:5723:0000:0000:D14E:DBCA:0764. ברוב המקרים 64 הסיביות הראשונות הן ה-Prefix (רשת) ו-64 האחרונות הן Interface ID (המזהה הייחודי של הממשק). חשוב לזכור: כתובות מוקצות לממשקים, לא למארחים, ולכל ממשק יכולות להיות כמה כתובות בו-זמנית — וזה תקין לחלוטין, בניגוד להרגלים מ-IPv4.

מבנה כתובת IPv6 — Global Routing Prefix, Subnet ID ו-Interface ID
48 סיביות ניתוב גלובלי, 16 סיביות תת-רשת ו-64 סיביות ממשק. איור: מכללת נטמי.

שני כללי הקיצור שחייבים לשלוט בהם

  • השמטת אפסים מובילים בכל הקסטט: 0DA8 נכתב DA8, ו-0001 נכתב 1.
  • החלפת רצף אחד של הקסטטים אפסיים בסימן :: — פעם אחת בלבד בכתובת, אחרת אי אפשר לשחזר כמה אפסים הוסתרו.
תרגול קיצורים — בדיוק בסגנון השאלות במבחן
2001:0DA8:E800:0000:0000:0000:0000:0001  ->  2001:DA8:E800::1
3FFE:0501:0008:0000:0260:97FF:FE40:EFAB  ->  3FFE:501:8::260:97FF:FE40:EFAB
FF02:0000:0000:0000:0000:0000:0000:0001  ->  FF02::1
0000:0000:0000:0000:0000:0000:0000:0001  ->  ::1        (Loopback)
0000:0000:0000:0000:0000:0000:0000:0000  ->  ::         (Unspecified)

! שגוי — שני רצפי :: באותה כתובת אינם חוקיים:
2001::25DE::CADE
טעות ה-:: הכפול היא אחת השגיאות הנפוצות ביותר במבחן.

סוגי כתובות: Unicast, Multicast ו-Anycast

ב-IPv6 קיימים שלושה סוגי תקשורת בלבד. Unicast הוא אחד לאחד — כתובת של ממשק יחיד. Multicast הוא אחד לרבים — חבילה נמסרת לכל הממשקים שהצטרפו לקבוצה. Anycast הוא אחד לקרוב ביותר — אותה כתובת מוגדרת בכמה מקומות והניתוב מוביל את החבילה למופע הקרוב טופולוגית. אין Broadcast. נקודה. זו שאלה שחוזרת שוב ושוב במבחן.

סוגי כתובות IPv6 והתחומים שלהן — Global Unicast, Unique Local, Link-Local, Multicast ו-Anycast
כל טווח כתובות ותחום התוקף שלו. איור: מכללת נטמי.
  • Global Unicast — מתחיל ב-2000::/3 (כלומר 2 או 3), שקול לכתובת ציבורית ב-IPv4 וניתן לניתוב באינטרנט.
  • Unique Local (ULA) — FC00::/7, ובפועל תמיד FD בשימוש מקומי; מקביל לכתובות פרטיות. Site-Local הישן (FEC0::/10) הוצא משימוש ב-RFC 3879.
  • Link-Local — FE80::/10, נוצר אוטומטית בכל ממשק עם IPv6, תקף רק על אותו קו ואינו מנותב על ידי ראוטרים. משמש ל-NDP ולשכנויות של פרוטוקולי ניתוב.
  • Multicast — FF00::/8; כל כתובת שמתחילה ב-FF היא Multicast, וקבוצות ידועות מתחילות ב-FF02.
  • Loopback ::1, ו-:: לציון כתובת בלתי מוגדרת (למשל בזמן DAD).

כתובות Multicast שכדאי לשנן

  • FF02::1 — כל הצמתים על הקו (All Nodes).
  • FF02::2 — כל הראוטרים על הקו (All Routers).
  • FF02::5 ו-FF02::6 — OSPFv3: כל הראוטרים וכל ה-DR/BDR בהתאמה.
  • FF02::9 — RIPng; FF02::A — EIGRP for IPv6.
  • FF02::1:FFxx:xxxx — Solicited-Node, נגזרת מ-24 הסיביות האחרונות של הכתובת; זהו הלב של תהליך פענוח כתובת השכן.

היררכיית הקצאה: מ-RIR ועד ה-LAN שלכם

ICANN מקצה טווחים ל-RIR-ים האזוריים (בישראל דרך RIPE NCC) בקידומת מינימלית של /12. כל ספק אינטרנט מקבל בדרך כלל /32, כל אתר לקוח מקבל /48, וכל LAN מקבל /64. המשמעות: לאתר בודד יש 65,536 תתי-רשתות, ובכל תת-רשת 2 בחזקת 64 כתובות מארח. זו הסיבה שאין ב-IPv6 את הדיון האינסופי על גודל מסכה — /64 ל-LAN הוא כמעט חוק טבע, בין השאר כי SLAAC פשוט לא עובד אחרת.

NDP: מה שהחליף את ARP

ב-IPv4 השתמשנו ב-ARP כדי לתרגם כתובת IP לכתובת MAC. ב-IPv6 אין ARP כלל; במקומו יש Neighbor Discovery Protocol שרץ מעל ICMPv6. הוא משתמש בארבעה סוגי הודעות: Router Solicitation (סוג 133), Router Advertisement (134), Neighbor Solicitation (135) ו-Neighbor Advertisement (136). מכיוון שההודעות נשלחות ל-Multicast ממוקד ולא ל-Broadcast, רק המכשירים הרלוונטיים מעובדים — פחות רעש ופחות עומס מעבד על התחנות.

תהליך Neighbor Discovery ו-SLAAC ב-IPv6
RS, RA, NS ו-NA — כך מארח מקבל כתובת ולומד את שכניו. איור: מכללת נטמי.
  • SLAAC — המארח שולח RS ל-FF02::2, מקבל RA עם ה-Prefix, ומרכיב בעצמו כתובת מלאה בלי שרת DHCP.
  • EUI-64 — יצירת Interface ID מכתובת MAC: מפצלים ל-24 סיביות, מוסיפים FFFE באמצע והופכים את סיבית ה-U/L השביעית.
  • DAD (Duplicate Address Detection) — לפני שימוש בכתובת, המארח בודק שאיש אחר לא משתמש בה.
  • DHCPv6 Stateful — כשצריך שליטה מלאה בהקצאה ובתיעוד; DHCPv6 Stateless מוסיף רק DNS על גבי SLAAC.
מי שמחפש ב-IPv6 את טבלת ה-ARP מפספס את הרעיון. ב-IPv6 יש Neighbor Cache, והפקודה show ipv6 neighbors היא הכלי הראשון בכל אבחון תקלת קישוריות מקומית.

תצורת IPv6 בסיסית על ציוד Cisco

הפעלה, הקצאה ואימות
! הפעלת ניתוב IPv6 גלובלית — בלעדיה הראוטר לא ישלח RA
Router(config)# ipv6 unicast-routing

! כתובת סטטית מלאה
Router(config)# interface gigabitEthernet 0/0
Router(config-if)# ipv6 address 2001:DB8:ACAD:10::1/64
Router(config-if)# no shutdown

! כתובת בשיטת EUI-64 — 64 סיביות הממשק נגזרות מה-MAC
Router(config-if)# ipv6 address 2001:DB8:ACAD:20::/64 eui-64

! כתובת Link-Local ידנית וקריאה (מומלץ מאוד בפרודקשן)
Router(config-if)# ipv6 address FE80::1 link-local

! ניתוב סטטי ו-Default
Router(config)# ipv6 route 2001:DB8:ACAD:30::/64 2001:DB8:ACAD:10::2
Router(config)# ipv6 route ::/0 2001:DB8:FEED::1

! אימות
Router# show ipv6 interface brief
Router# show ipv6 interface gigabitEthernet 0/0
Router# show ipv6 route
Router# show ipv6 neighbors
Router# ping 2001:DB8:ACAD:10::2
השורה הראשונה היא זו שנשכחת הכי הרבה — בלי ipv6 unicast-routing אין ניתוב ואין RA.

Dual-Stack ומעבר הדרגתי

המעבר ל-IPv6 אינו אירוע חד-פעמי אלא תהליך. האסטרטגיה המקובלת היא Dual-Stack: הממשק מחזיק גם כתובת IPv4 וגם IPv6, והמארח בוחר לפי זמינות היעד (בפועל, לפי Happy Eyeballs — ניסיון מקביל ובחירה במהיר). כשאין רציפות IPv6 בין אתרים משתמשים במנהור (Tunneling), ובמקרים של תקשורת בין עולמות — במנגנוני תרגום. ב-CCNA מספיק להבין את שלוש הגישות ומתי כל אחת רלוונטית.

טעויות נפוצות שעולות ביוקר

  • שכחת ipv6 unicast-routing — הראוטר מגיב לפינג אבל לא מנתב ולא שולח RA.
  • שימוש במסכה שאינה /64 ב-LAN — שובר SLAAC ויוצר תקלות אקראיות בלקוחות.
  • התעלמות מ-Link-Local: הוא זה שנקרא בטבלאות הניתוב ובשכנויות OSPFv3, ולכן כדאי להגדיר אותו ידנית וקריא.
  • חסימת ICMPv6 בחומת האש 'מטעמי אבטחה' — פעולה שמשביתה NDP, PMTUD ולמעשה את כל IPv6.
  • הנחה ש-IPv6 מאובטח יותר כי אין NAT: בלי מדיניות מפורשת המארחים חשופים ישירות לאינטרנט.
מבחנון קצר

מבחנון IPv6 — רמת CCNA

1. כמה סיביות יש בכתובת IPv6?

2. איזו קידומת מזהה כתובת Link-Local?

3. מהו הקיצור הנכון של 2001:0DA8:0000:0000:0000:0000:00AB:0001?

4. לאיזו כתובת Multicast מאזינים כל הראוטרים על הקו?

5. מה החליף את ARP ב-IPv6?

6. איזה סוג תקשורת אינו קיים ב-IPv6?

7. מה נעשה בשיטת EUI-64 עם כתובת ה-MAC?

8. איזו פקודה מפעילה ניתוב IPv6 בראוטר Cisco?

ענית על 0 מתוך 8

IPv6 נראה מאיים רק עד שמקלידים את הפקודה הראשונה. ברגע שמבינים את החלוקה ל-Prefix ו-Interface ID, את משמעות FE80 ואת תפקיד NDP — הכול מתיישב, והעבודה בפועל אפילו פשוטה יותר מ-IPv4. זהו בדיוק סוג הידע שמפריד בין מי שמתחזק רשת קיימת לבין מי שמתכנן את הרשת הבאה.

רוצים להתמקצע?

הפוסט הזה הוא רק טעימה. הקורס המלא של Cisco CCNA — רשתות תקשורת ילמד אתכם הכל מא׳ עד ת׳.