רעיון קטן לכתובות IP

לקראת יום ה-IPV6 שחל מחרתיים החלטתי לכתוב את הפוסט הזה. אודה לכם אם תוכלו להפיץ אותו הלאה, אני חושב שיש בו רעיון שאנשים המומחים בתחום אולי יקחו אותו קדימה..

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

המצב בחו”ל לא כל כך שונה מהארץ. אפשר להשיג יותר כתובות, אבל גם שם צריך לעבור את אותה בירוקרטיה כדי לקבל כתובות. חברות הענק לא צריכות כמובן לעבור את אותו תהליך, הם ממזמן קיבלו גושי כתובות ענקיים ואין להם בעיה לבזבז כתובות על ימין ועל שמאל. מה יעשו להם, יקחו מהם את הכתובות?

כידוע, ל-IPV4 יש לא מעט חסרונות ובעיות. מדובר במשהו שתוכנן בשנות ה-70 ושמעולם לא תוכנן שיהיה בו שימוש מאסיבי ב-2012. אחרי הכל, איש לא חזה שהאינטרנט יתפוס תאוצה כזו גדולה ואם היו חוזים משהו, היו בוודאי מוציאים דברים שמתרחבים יותר בקלות.

כיום (או ליתר דיוק החל ממחרתיים) התשובה במקום IPV4 היא IPV6. ל-IPV6 יש יתרונות רבים על IPV4, נפתרו בו בעיות רבות… אך עדיין, שום ספק אינטרנט רציני בעולם לא התחיל לדחוף ללקוחות שלו מודמים עם תמיכת IPV6 עם כתובות IPV6. הדבר יקח שנים…

היום, בזמן ששוחחתי עם לקוח פוטנציאלי שרצה “רק” 512 כתובות שונות בשביל קידום האתרים שלו (אין כמובן מצב שנמכור דבר כזה ללקוחות. מי שמעוניין בחבילות בשביל לנסות לרמות את גוגל –שיקפוץ לרכוש מהמתחרים!) ניסיתי לחשוב על משהו ואת אותו משהו אני מעוניין להציג פה כרעיון. אני לא מומחה ב-IPV4 ואשמח לשמוע הערות על הרעיון ומי יודע, אולי יהיה איזה גיק או 2, יקחו את הרעיון, ישנו אותו וימצאו פתרון זמני אחר עד ש-IPV6 יתפוס…

אז מה הרעיון שלי? הרעיון הוא די פשוט:

בוא נישאר עם IPV4. כן, יש לו חסרונות מכאן ועד הודעה חדשה והרעיון שלי לא בא להציע פתרונות לכיסוח הבעיות הקשורות לאבטחה, ביצועים וכו’ – אלא אך ורק לכתובות.

מה יש לנו כיום? IPV4 מכיל בעצם 4 קבוצות של 8 ביט. כתובת IP נראית כך:

small-address

כפי שאתם רואים באילוסטרציה, אני קורא לכתובת IP רגילה “כתובת קטנה”

הרעיון שלי: הבה נרחיב את הכתובת. לא נחליף את ה-8 ביט, אלא “נצמיד” עוד 2 קבוצות 8 ביט, כך שכתובת IP תיראה כך:

large-address

מה שאני מציע בעצם היא “חלוקה מחדש” של הכתובות, כך שניתן יהיה תיאורטית לחלק את הכתובות עוד 65,535 פעם מחדש.

איך דבר כזה יעבוד? בערך כמו הרעיון של NAT רק שזה יהיה ברמת ספק האינטרנט וברמת שרתים, כלומר אם אני עם כתובות 100.101.102.103, אני אצא לעולם דרך ספק האינטרנט שלי והנתב הראשי של ספק האינטרנט שלי יראה אותי לעולם בתור 20.50.100.101.102.103 וגם חברי ג’ון אם יהיה לו כתובות קטנה זהה אליי, שהספק שלו מוציא את התקשורת שלו, הכתובת הגדולה שלו תהיה לדוגמא 20.62.100.101.102.103

יש לשיטה זו לדעתי מספר יתרונות:

  • אין צורך במימוש חדש מאפס. את IPV4 מימשו מכאן ועד להודעה חדשה בכל מערכת הפעלה, ומה שמדובר כאן אינו מצריך שינוי ברמת ה-Client.
  • היכן שיש צורך בשינויים (נתבים של ספקי אינטרנט), השינוי הוא יחסית קטן כי אין צורך בכתיבה של הכל מחדש. הכללים נשארים אותם כללים פחות או יותר, רק שהם קצת מתרחבים.
  • בכל תחום ה-Hosting לא יהיה צורך בשינוי ברמת השרתים, כי ההצמדה והורדה של 2 קבוצות ה-8 ביט נעשית ברמת ספק האינטרנט או בנתבים של ספק ה-Hosting.
  • העלות לשינויים היא יחסית קטנה כי לא צריך להמציא את הגלגל מחדש.

מה דעתכם על הרעיון? האם הוא נוסה או פורסם בעבר למיטב זכרונכם?

Comments

comments

6 תגובות בנושא “רעיון קטן לכתובות IP

  1. אם אני צריך לשלוח הודעה בין כתובת אחת לשנייה, אני צריך לדעת לאן אני שולח. לכן אני צריך לכלול בחבילה את הכתובת המלאה. אם אתה רוצה להוסיף לכל חבילה עוד 16 ביטים לכתובת היעד, אתה שובר לא מעט ממשקים.

    פלסתר כבר יש. קוראים לו NAT. אבל כמו שאתה שם לב, עם NAT אנחנו מאבדים את היכולת הבסיסית של כל מחשב לדבר עם כל מחשב ברשת. צריך מאוד להיזהר שלא נישאר עם הפלסתר הזה לתמיד.

  2. חץ, האם הסתכלת על מבנה חבילת IP (גרסה 4) לפני שהצעת את הרעיון?

    החבילה בגודל 20 בתים, מהם מוקצבים 4 בתים רצופים לכתובת המקור, ו-4 בתים רצופים לכתובת היעד. אין בחבילה מקום לתוספות בלי לשבור את המבנה שלה ( לדוגמה – אם תוסיף בתים לכתובת המקור, תצטרך להזיז את מיקום כתובת היעד, מה שייצור חוסר תאימות ובעצם ישאיר אותך עם אותה הבעיה שיש במימוש IPV6 – שבירה של התאימות למבנה הקיים).

    יתכן שניתן להוסיף שדות (בכפולות של 32 ביט) עבור כתובות מורחבות, לצורך שמירה על תאימות, אבל ההטמעה לא תהיה מהירה (תראה כמה שנים כבר תמיכה בIPV6 היא תנאי לקבלת תו תקן לציוד רשת במרבית מדינות העולם, ועדיין התמיכה לא הוטמעה במלואה).

    עם ניצול האפשרות של "הרחבה", בגלל אופן הניתוב ומבנה הכותרת, לא תוכל להוסיף ספרות "משמאל" לכתובת, אלא רק מימין (כדוגמה – כל הכתובות ממשפחה 192.168 (קבוצה של class C שמתוכננת לשמוש ביתי) מנותבות באופן מסויים, ואילו 192.169 (קבוצה אחרת של class C) ינותבו למקום ראשוני אחר, ובעצם יפורקו לclasses C מהם הורכבה המשפחה הזו. כתובות מהמשפחה 10 (קלאס A שייך לIBM שמאפשר שמוש לרשתות ביתיות) …

  3. רעיון בר שימוש אבל יש כאן בעיה של טונות על גבי טונות של ציוד חומרה שצריך החלפה , כמובן סיסקו יחגגו ועוד כמה ספקים אחרים אבל זה די בעיתי.
    הפיתרון הוא IPV6 ולאט לאט זה נכנס לשימוש. NAT אפשרי אבל יש ספקים שמבצעים NAT בכמה רמות וזה ברשת שלהם.
    אין מנוס (אז אורי גרוס) לעבור לשלב הבא שהוא IPV6.

  4. אני חשבתי על משהו יותר כמו קידומת.
    כל הכתובות הרגילות ייחשבו כ 001.255.255.255.255 באופן אוטומטי.
    כתובות חדשות יקבלו קידומת 002 וכו' אבל רק במקומות עם ציוד תואם.

    אבל אחרי שראיתי את התגובות כאן הבנתי שזו אותה בעיה…

סגור לתגובות.