هر مولکول یک IP
چکیده
IPv6 از فضای آدرس دهی 128 بیتی استفاده می کند یعنی آدرس مختلف می توان با آن ایجاد کرد.IPv6 از 8 بخش 16 بیتی تشکیل شده است و هر بخش با استفاده از دو نقطه(:) از سایر بخش ها جدا میشود و هر بخش را در مبنای 16 نشان داده میشود.می توان از صفرهای بی ارزش صف نظر کرد.برای نشان دادن بخش شبکه ای آدرس از پیشوند ها استفاده میشود IPv6 از سه نوع ادرس دهی unicast,multicast,anycast پشتیبانی میکند.از آدرس های مخصوص IPv6 میتوان به آدرس نامعین صفر و آدرس loopback اشاره کرد.
کلید واژه ها : اینترنت ، آدرس ، IPv6 ، بیت ، شبکه
-
مقدمه
در جهان امروز با رشد روز افزون اینترنت و شبکه های کامپیوتری IPv4 رو به اتمام است و همچنین راه حل های پیشنهادی مانند CIDR و NAT نتوانستد برای کمبود تعداد IP ها یک راه حل قطعی و همیشگی باشند در سال 1991 سازمان IETF یک گروه کاری را برای تجزیه و تحلیل پیرامون گزینه های پیشنهادی دایر کرد . IETF به این نتیجه رسید که نسل جدیدی از پروتکل IP مورد نیاز است (IPng) .در سال 1994 از میان راه حل های مختلف (CATNIP, SIPP, TUBA) SIPP به IPv6 تکامل یافت در نتیجه اولین مجموعه از استانداردهای کامل (RFC 2460، 2461، و غیره.) در سال 1998 منتشر شد.در حقیقت مهمترین تفاوت بین IPv4 و IPv6 در نحوه آدرس دهی و پیکر بندی آنهاست IPv4 از فضای آدرس دهی 32 بیتی استفاده میکند در نتیجه آدرس مخنلف را میتواند تولید کند به عبارتی 4244967296 آدرس متفاوت .اما IPv6 با تخصیص فضای آدرس دهی 128بیتی آدرس یعنی 3.4* آدرس مختلف را تولید میکند برای روشن تر شدن موضوع می توان این مثال را عنوان کرد که با استفاده از IPv6 می توان به هر متر مربع از کره زمین تعداد 6.5* آدرس مختلف تخصیص داد در حقیقت تعداد بیت های زیاد این پروتکل لزوم تقسیم بندی سلسله مراتبی و ناحیه به ناحیه جغرافیایی را فراهم آورده است .
2-نحوه نشان دادن آدرس های IPv6
برای نمایش آدرس های IPv4 از 4 عدد مبنای 10 که با نقطه از هم جدا میشوند استفاده میشود که هر قسمت آن یک octed نامیده مشود و عددی بین 0تا 255 را به خود اختصاص می دهد و نمایانگر 8 بیت است .در IPv6 کل بیت ها به 8 قسمت 16 بیتی تقسیم میشود و هر بخش با استفاده از : از سایر بخش ها جدا میشود . هر بخش را نیز به صورت عددی در مبنای 16نشان میدهیم 0000 تا FFFF برای مثال می توان عدد زیر را در نظر گرفت
0010000111011010000000001101001100000000000000000010111100111011
0000001010101010000000001111111111111110001010001001110001011010
ابتدا باید این عدد را 16 بیت 16 بیت به 8 بخش جدا کرد
0010000111011010 0000000011010011 0000000000000000 0010111100111011
0000001010101010 0000000011111111 1111111000101000 1001110001011010
حال هر بخش را به فرمت XXXX در مبنای 16 مینویسیم و هر بخش را با استفاده از دو نقطه از بخش های دیگر جدا میکنیم
21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A
2-1-فشرده سازی صفر ها
به منظور نمایش ساده تر آدرس ها و خلاصه تر شدن ان می توان به جای بخش های صفر از( :: ) استفاده کرد به عنوان مثال می توان در مثال قبا به جای نمایش آدرس قبلی
21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A
از بخش صفر صرف نظر کرد و آدرس را به صورت زیر نشان داد
21DA:00D3::2F3B:02AA:00FF:FE28:9C5A
البته استفاده از فشرده سازی تنها یک بار مجاز است برای مثال آدرس FFFE:0:0:30:0:0:0:803 را نمیتوان به صورت FFFE::30::803 نمایش داد . زیرا در این حالت مشخص کردن اینکه کدام یک از صفر ها به بخش اول و کدام به بخش دوم تعلق دارد غیر ممکن خواهد بود . در صورتی که فقط یکبار فشرده سازی انجام بدهیم به FFFE::30:0:0:0:80 می رسیم به روش دیگر میتوان از اکتد 30 به بعد را صفر نمود .
2-2-پیشوند های IPv6
برای مشخص کردن بخش های شبکه و میزبان در IPv4 از مفهوم subnet Mask اسفاده میشود اما در IPv6 این مفهوم معنایی ندارد و تنها از پیشوند ها استفاده میشود . پیشوند ها تعداد بیت هایی را از آدرس مشخص میکنند که براس مصرف کننده غیر قابل تغییر بوده و نمیتوان در آن ها دخل و تصرفی داشت برای مثال آدرس 2001:4188::/32یعنی 32 بیت اول آن برای کاربر غیر قابل استفاده است .
3-انواع آدرس های IPv6
آدرس های IPv6 را می توان به 3 دسته تقسیم نمود . unicast ,multicast , anycast
3-1-آدرس های unicast
این گروه از آدرس ها به واسطه های شبکه ای اختصاص داده میشوند و درخواست هایی که به این آدرس ها مربوط میشوند بعد از مسیر یابی موفق تنها در آدرس مشخصی دریافت میشوند .انواع آدرس های unicast عبارت اند از :
1-آدرس های global unicast : این آدرس ها معادل همان آدرس های valid (معتبر) در IPv4 هستند و در شبکه اینترنت مسیر یابی میشوند .اختصاص آدرس های معتبر دارای ناحیه جغرافیایی خاصی نیستند و همین امر موجب پدید آمدن جدول مسیر یابی بزرگی شده است که یکی از معضلات IPv4 محسوب میشود از این رو دانشمندان تصمیم گرفتند که اختصاص IP ها به مناطق جغرافیایی مختلف از یک ساختار سلسله مراتبی پیروی کند.در شکل زیر می توانید نمایی از ساختار IPv6 را مشاهده کنید که شامل فیلد های مختلفی است.
FP: این فیلد تعیین کننده نوع آدرس می باشد که دارای 3 بیت می باشد برای مثال اگر آدرسی با 001 شروع شود می توان به این نکته پی برد که این آدرس unicast عمومی است.
TLA-ID: این قسمت توسط سازمان LANA به حوزه های ثبت آدرس های اینترنتی اختصاص داده میشود بنابر این از روی یک آدرس می توان مکان آن را در سطح قاره پیدا کرد .
Res : از این قسمت میتوان برای افزایش یا کاهش بیت قسمت های قبل و بعد استفاده کرد .
NLA-ID:از این قسمت برای مشخص کردن کشور ها و بخش های جغرافیایی کوچکتر استفاده میشود . در حال حاضر حوزه های ثبت آدرس اینترنتی بخشی از این قسمت راد مشخص کردن حوزه های ثبت محلی اختصاص می دهند . بخش دیگر را جهت تقسیم به نواحی کوچکتر در اختیار حوزه های ثبت محلی می گذارد .
SLA-ID : شناسه سطح سایت است . از این فیلد برای مشخص نمودن ادارات و سازمان های وابسته به یک حوزه محلی استفاده میشود
Interface-ID:از این شناسه برای مشخص نمودن هر واسط شبکه استفاده می شود . طول این فیلد ثابت و 64 بیت است
به طور خلاصه تر می توان IPv6 را در شکل زیر نشان داد.
این ساختار از 3 سطح کلی تشکیل شده است . که نشان میدهد بیت های سمت چپ از اهمیت بالاتری برخوردار هستند که 48 بیت اول توپولوژی عمومی اینترنت و 16 بیت بعدی شناسه مناطق ناحیه ای و 64 بیت آخر واسط شبکه ای را مشخص می کند .
2-آدرس های link-local: از این آدرس ها معمولا برای تعیین وضعیت شبکه که توسط پروتکل neighbor discover انجام میشود مورد استفاده قرار می گیرند همچنین می توان از این پروتکل برای ارتباطات محلی هنگامی که هیچ مسیریابی در شبکه نباشد استفاده نمود . معادل این آدرس ها در IPv4 آدرس های APIPA از کلاس B است . در شکل زیر میتوانید نمایی از ساختار یک آدرس Link-local را مشاهده کنید.
در Link-local همان طور که مشاهده میکنید 10 بیت این ساختار ثابت است و 54 بیت بعدی آن صفر است در نتیجه میتوان آن را به صورت FE80::/64 نشان داد
3-آدرس های site-local: این آدرس ها معادل آدرس های خصوصی در IPv4 هستند . در IPv4 آدرس هایی مانند:192.168.0.0/16و 172.16.0.0/12و 10.0.0.0/8 آدرس های خصوصی هستند معادل این ها در IPv6 آدرس های site-local هستند و برای استفاده داخلی درون سازمان ها و ادارات در نظر گرفته شده اند که فقط مسیریاب های داخلی می توانند بسته های آن را هدایت کنند.با توجه به شکل زیر 10 بیت این ساختار رزرو شده است و 54 بیت بعدی شناسه زیر شبکه را مشخص می کند که از این 54 بیت می توان برای ایجاد ساختار سلسله مراتبی بهره جست و 64 بعدی همانند قبل متعلق به واسط شبکه ای است در نتیجه می توان آدرس site-local را به صورت FEC0::/10 نشان داد.
4-آدرس های مخصوص: این آدرس ها برای استفاده های خاص هستند و نباید برای آدرس دهی استفاده شوند.از جمله این آدرس ها می توان به آدرس های نامعین اشاره کرد(آدرس 0:0:0:0:0:0:0:0 یا به عبارت ساده تر :: در IPv6 و 0.0.0.0 در IPv4 ) که به معنای عدم وجود آدرس و برای شروع کار TCP/IP استفاده می شود .از دیگر آدرس های مخصوص آدرس Loopback است که برای مشخص نمودن آدرس شبکه ای و تست کردن کارت شبکه مورد استفاده قرار می گیرد.معادل این آدرس در IPv4 آدرس 127.0.0.1 است که در IPv6 به صورت 0:0:0:0:0:0:0:1 یا به صورت ساده تر ::1نمایش داده میشود
3-2-آدرس های multicast
این گروه از آدرس ها نمایانگر چند واسط شبکه ای هستند بسته هایی که آدرس multicast دارند بعد از مسیر یابی توسط تمام واسط های شبکه ای که در آدرس multicast هستند دریافت میشوند . از اینگونه آدرس ها برای ارتباطات یک به چند استفاده میشود . هر نقطه از شبکه می تواند به طور همزمان به چندین آدرس multicast گوش فرا دهد. اینگونه آدرس ها در IPv6 دارای 8 بیت 1 در اول آدرس هستند همین کار تشخیص این آدرس ها را بسیار آسان تر کرده است .در نتجه این آدربا FF شروع میشوند . همچنین از آدرس های Multicast نمیتوان به عنوان آدرس مبدا و مقصد مسیر یابی ها استفاده نمود. شکل زیر ساختار آدرس های multicast را نشان می دهد.
بخش پرچم ها در این ساختار دارای 4 بیت می باشد که تا کنون فقط پرچم گذرا تعریف شده است. برای تنظیم این بخش از کم ارزش ترین بیت استفاده میشود که اگر بیت مربوطه صفر باشد نشان دهنده این است که آدرس multicast دایمی بوده و به وسیله IANA تخصیص داده شده است.و اگر بیت مذکور یک باشد به معنی این است که آدرس گذرا بوده و دایمی نمی باشد برای مشاهده آدرس های تخصیص داده شده تا کنون می توانید به لینک زیر مراجعه نمایید.
http://www.iana.org/assignments/ipv6-multicast-addresses
3-3-آدرس های anycast
آدرس های anycast همانند multicast به چند واسط شبکه ارسال میشوند اما نزدیکترین واسط شبکه ای که با توجه به الگوریتم های مسیر یابی تعیین میشود بسته را دریافت میکند . در اینجا باید متذکر شد که مفهوم broadcast در IPv4 در IPv6 وجود ندارد و برا ی اینکار میتوان از آدرس multicast استفاده کرد و به جای تعدادی از واسط های شبکه ای همه آن ها را تعریف کرد
5-نتیجه گیری
IPv6 از فضای آدرس دهی بسیاربزرگی نسبت به IPv4 برخوردار است که بهترین مزیت این پروتکل محسوب میشود .علاوه بر این تقسیم بندی نواحی جغرافیایی این پروتکل نیز بسیار به امنیت در شبکه ها کمک کرده است البته در چند مورد هم به ایجاد حفره های امنیتی پرداخته است در زمان پیدایش IPv4 هیچکس تصور نمی کرد که این آدرس ها که بیش از 4 میلیارد بود روزی با سرعت چشمگیری به پایان برسد در زمان حال نیز با وجود IPv6 کسی اعتقاد به تمام شدن این روش ندارد تقریبا می توان گفت با این روش می توان به هر مولکول یه آدرس را تخصیص داد.
آرش پروا : دانشگاه کردستان - رشته مهندسی فناوری اطلاعات
مراجع
[1]Feyrer, Hubert. "Introduction to IPv6." future 5 (2001): 24.
[2] Daviel, Andrew. "Introduction to IPv6." (2008).
[3]Sabiguero, Ariel. "Introduction to IPv6."
]4[-ویکی پدیا . IPv6
]5[-مجتبی یعقوبی.سیما اسد آبادی . IPv6 . پژوهشکده شبکه –گروه دیتا