IPv6

מבנה כתובת IPv6

כתובת IPv6 מורכבת מ-128 סיביות: 64 הסיביות הראשונות משמשות לזיהוי תת-הרשת, ו- 64 הסיביות האחרונות משמשות כמזהה ממשק (interface ID). ערכו של מזהה הממשק נקבע על ידי כתובת ה־MAC של כרטיס הרשת. עם זאת, מכיוון שכיום כתובות ה־MAC של רוב ממשקי הרשת הן בפורמט של 48 סיביות, יש צורך להמיר אותן לפורמט EUI-64. הערך של תת-הרשת מורכב מקידומת גלובלית (global routing prefix) שיכולה לייצג למשל ספק שירותי אינטרנט ותת-רשת שיכולה לייצג רשת של לקוח שמחובר לספק.
הייצוג של כתובות IPv6 נעשה בדרך כלל באמצעות סדרה של 8 מספרים בני ארבע ספרות בבסיס הקסדצימלי שמופרדים בנקודתיים וכל אחד מהם מייצג 16 סיביות. לשם קיצור ניתן להשמיט את האפסים המובילים וכן רצף אחד של אפסים. לדוגמה, הכתובת 2001:db8::ff00:42:8329 היא קיצור של הכתובת 2001:0db8:0000:0000:0000:ff00:0042:8329.

פרוטוקול IPv6 לעומת IPv4

החידוש העיקרי בגרסה 6 הוא הגדלה משמעותית בכמות כתובות ה-IP האפשריות. ב-IPv6, נעשה שימוש ב-128 סיביות, המאפשרות עד 10³⁸×3.4 כתובות שונות, כלומר, עבור כל אחד מ-7 מיליארד בני אדם החיים כיום ניתן לחלק 10²⁸×5 כתובות ייחודיות, מספר עצום כשלעצמו. דוגמה נוספת הממחישה את כמות הכתובות ב-IPv6: אם רובוטים זעירים יכסו את פני כדור הארץ מגובה פני הים ועד לגובה 10 קילומטר (מעל לגובה ההר הגבוה ביותר – האוורסט), נוכל להקצות כתובת ייחודית לכל רובוט, כל עוד הצפיפות שלהם לא תעלה על 278 מיליארד רובוטים למילימטר מעוקב.
למרות שהמוטיבציה המרכזית לניסוח פרוטוקול IPv6 הייתה לפתור את מצוקת הכתובות ב-IPv4, הפרוטוקול כולל מספר חידושים שנועדו להתגבר על חולשות שזוהו לאורך השנים ב-IPv4 ולהתאים אותו לטכנולוגיות הרשת האחרונות.

פישוט פעולות העיבוד בנתבים

אחד מהחידושים הנ"ל הוא העברת האחריות לחלוקה (fragmentation) של מנות ה-IP מהנתבים למחשבי הקצה (endhosts). בהתאם לפרוטוקול, במידה ונתב מקבל חבילה שגודלה עולה על ה־MTU של הממשק הפיזי דרכו הוא צריך לנתב את החבילה הוא נדרש ל"השליך" (discard) אותה ולשלוח חבילת ICMPv6  בחזרה לכתובת המקור על מנת ליידע את המחשב השולח שהחבילה גדולה מדי לניתוב המבוקש. במקרה שמחשב מקבל הודעה כזו מנתב, האופציות שעומדות לרשותו הן: לחלק את החבילה למספר חבילות קטנות יותר, או לברר מה גודל החבילה המקסימלי שיכול להעביר בניתוב הספציפי באמצעות אלגוריתם Path MTU Discovery , או לחלק את המידע לחבילות של 1280 bytes (ה־MTU המינימלי הנדרש לקישור פיזי ברשת IPv6). מעבר לכך, השדות שמשמשים לניהול של פרגמנטים ב-IPv4 הפכו ממנדטורים לאופציונליים. כך, למרות הרחבת גודלו של שדה הכתובת (32 בתים לשתי הכתובות במקום 8 בתים ב-IPv4) ותוספת שדה חדש (flow label) גדל החלק הקבוע (fixed portion)של כותרת חבילת ה־IP רק במעט (40 בתים ב-IPv6 למול 20 בתים ב-IPv4).
שינוי נוסף שנועד לפשט את פעולת הנתבים הוא ויתור על בדיקת checksum. מכיוון שכיום כל הפרוטוקולים בשכבת הקשר כוללים בדיקת יתירות מחזורית או checksum, ניתן היה לוותר על שדה זה. למעשה, היתרון היחידי של הבדיקה הזו כיום הוא בזיהוי חבילות שהתוכן שלהן במהלך עיבודן בנתב שובש עקב תקלות בזיכרון. וגם יתרון זה הוכח כזניח לאור האמינות הגבוהה של רכיבים אלו בימינו.

טווחי כתובות

הבדל נוסף בין IPv6 ל-IPv4 הוא השימוש בכתובות מקומיות ( (Link-local address או APIPA כמו שהם נקראים ביישום של מיקרוסופט לפרוטוקול TCP/IP) במקביל לכתובות גלובליות. בעוד שכתובות מקומיות ב-IPv4 מוקצות באופן עצמאי כאשר לא הוקצו כתובות IP באופן ידני או באופן אוטומטי על ידי שרת DHCP, כתובות אלה הן מנדטוריות ב-IPv6, ויש להן תפקיד בהעברת מידע בין מחשבים באותו מתחם שידור. המנגנון של השמה אוטומטית של כתובות מקומיות נקרא stateless address autoconfiguration והוא משתמש בשילוב של הקידומת של תת-הרשת FE80::/10 עם כתובת ה־MAC של ממשק הרשת כדי ליצור כתובת ייחודית (uniqe address). למרות שכתובת ה־MAC אמורה להבטיח את הייחודיות של הכתובת, הפרוטוקול משתמש ב־Neighbor Discovery Protocol  לוודא שאין מחשב נוסף עם אותה הכתובת.
אגב,  יש להבדיל בין Link-local address ל־Site-local addresses. האחרונות מקבילות לכתובות פרטיות ב־NAT, ולמרות שהן קיבלו את הטווח FEC0::/10 ב־IPv6 הן נאסרו לשימוש ב־RFC 3879. עם זאת, יש מימושים של הפרוטוקול שעדיין כוללים את טווח הכתובות הנ"ל.
כמו כן, פרוטוקול IPv6 מגדיר טווחי כתובות לכל־נתיב (anycast) ולרב־נתיב (multicast) שאותן ניתן להקצות בנוסף לכתובת המקומית ולכתובת הגלובלית. מנגנונים אלה קיימים גם ב-IPv4 אך הם אופציונליים (עם זאת הם קיימים בהרבה יישומים של הפרוטוקול). בנוסף לכך,  ב-IPv6 לא קיים שידור broadcast. ב-IPv4 הכתובת 255.255.255.255 משמשת ככתובת broadcast. כשחבילה נשלחת עם כתובת היעד הנ"ל היא מועברת לשכבת הקישוריות עם כתובת ה־MAC FF:FF:FF:FF:FF:FF, שהיא כתובת ה-broadcast של כל המחשבים במתחם השידור של המחשב השולח. שידור כזה מגדיל את העומס על כל המחשבים ברשת המקומית, ויוצר עומסים גם במקטעי גשרים (bridges או switches) בהם אין צורך אמיתי במידע. יחד עם זאת, כל מחשב ברשת IPv6 מקבל באופן אוטומטי את כתובת ה־multicast ff02::1  כך שחבילה שנשלחת לכתובת זו תגיע לכל המחשבים ברשת המקומית.

אבטחה

כחלק מפיתוח פרוטוקול IPv6 הוגדרו מספר מנגנונים שנועדו לתת מענה לאיומי אבטחה שלא היו קיימים בעת הגדרת פרוטוקול IPv4 (כלומר, לפני שרשת האינטרנט נפתחה לציבור הרחב). פרוטוקול IPSec היה מנדטורי עד ל־RFC 4294, אך הוא הפך לאופציונלי בעקבות פיתוח של פרוטוקולים מתחרים כמו Secure Shell ו־SSL. התמיכה ב-IPSec מובנית אל תוך מנגנון ה-Extension Header, ולכן היא מותאמת היטב לפרוטוקול. יש לציין כי IPSec הוגדר כפרוטוקול אופציונלי גם עבור IPv4, אך השימוש בו לא רב ביחס לפרוטוקולים המתחרים. פרוטוקול אבטחה נוסף שפותח עבור IPv6 הוא Secure Neighbor Discovery Protocol . גם הפרוטוקול הזה הוא אופציונלי ונועד לענות על איומי אבטחה בפרוטוקול Neighbor Discovery Protocol , אשר דומים לאלה שקיימים בפרוטוקול ARP ב-IPv4.

פעילות בישראל

פורום IPv6 הישראלי פועל כסניף הישראלי של פורום IPv6 העולמי. מטרת הסניף היא לקדם את השימוש ב-IPv6 בישראל, בכל המגזרים, וכן להפיץ מידע ולסייע לגופים המעוניינים להשתמש ב-IPv6. חברי הסניף הם מתנדבים המגיעים מהתעשייה, האקדמיה, מערכת הביטחון ועוד. הסניף מקיים מדי שנה יום עיון, במסגרת הכנס השנתי של איגוד האינטרנט הישראלי. הנואמים בכנס הם בדרך כלל חברי הסניף עצמם, וכן נציגים של הפורום העולמי.
בשנת 2013, ספק אינטרנט ישראלי אחד, 018, סיפק ללקוחותיו IPv6.
נכון לשנת 2019 אחוז התפוצה של IPv6 בישראל עמד על כ-4.23% על פי נתוני גוגל.