این روش بهترین روش Tunneling در زمان مهاجرت از IPV4 به IPV6 است. به این دلیل که هم Point-to-Multipoint است بدین معنی که با ایجاد صرفا یک Tunnel در هر سایت ارتباط بین همه سایت ها به صورت Full-Mesh امکان پذیر می شود و هم اینکه این روش ابزاری برای ایجاد ارتباط سازمان با اینترنت IPV6 را روی بستر IPV4 فراهم می کند.

بدین معنی که اگر سازمانی تصمیم بگیرد که به اینترنت IPV6 متصل شود اما تنها روش اتصال اینترنتی آن IPV4 باشد، روش 6to4 امکان ایجاد ارتباط با اینترنت IPV6 را فراهم می کند که در ادامه به آن خواهیم پرداخت.

در این بخش یاد خواهیم گرفت که چگونه 6to4 امکان ایجاد ارتباط Multipoint را بین سایت ها فراهم می کند. در بخش بعدی چگونه بکارگیری ابزار 6to4 را برای اتصال به اینترنت IPV6 مورد بررسی قرار خواهیم داد.

بحث را با یک سوال آغاز می کنیم. ایده روش های Tunneling برای ایجاد ارتباط Multipoint چیست؟ و یا به عبارت دیگر چگونه یک Tunnel می تواند همزمان ارتباط با چندین سایت را برقرار نماید؟ در روش های Tunneling که از نوع Multipoint هستند برخلاف روش های tunneling که از نوع Point-to-Point هستند، آدرس مقصد Tunnel نامعلوم است. در دو روش manually configured tunnel و gre tunnel که از نوع point-to-point هستند و در بخش های قبلی مورد بررسی قرار گرفته اند، آدرس مبدا و مقصد Tunnel توسط مدیر شبکه تعیین می شود. اما در روش های 6to4 و ISATAP که از نوع Multipoint هستند، مقصد Tunnel نامعلوم است و روتر در زمان ارسال ترافیک آدرس مقصد Tunnel را تشخیص داده و به صورت اتوماتیک با مقصد Tunnel ایجاد می کند. چگونه روتر مرزی سایت مبدا با توجه به آدرس مقصد IPV6 ترافیک، آدرس بیرونی روتر مرزی سایت مقصد را که از نوع IP4 است، استخراج کرده و به صورت اتوماتیک Tunnel می زند؟

در روش های IPV6 Tunneling ایده بدین صورت است که محدوده آدرس IPV6 هر سایت با توجه به آدرس بیرونی روتر مرزی آن سایت  که از نوع IPV4 است، انتخاب می شود. به عبارت دیگر آدرس بیرونی روتر مرزی که از نوع IPV4 است در داخل محدوده آدرس IPV6 هر سایت گنجانده می شود. بدین ترتیب وقتی از یک سایت IPV6 ارتباطی با سایت مقصد IPV6 ایجاد می کنیم، روتر مرزی سایت مبدا با توجه به آدرس مقصد IPV6، آدرس بیرونی IPV4 روتر مرزی سایت مقصد را بدست می آورد. سپس روتر مرزی سایت مبدا به صورت اتوماتیک تونلی با سایت مقصد روی بستر IPV4 ایجاد می کند و ترافیک روی آن تونل ارسال می کند.

برای درک بهتر به شکل زیر توجه کنید که در آن 3 سایت IPV6 قصد دارند روی بستر IPV4 با هم ارتباط داشته باشند. اگر توجه کنید آدرس بیرونی سه سایت به ترتیب IPV4-1، IPV4-2 و IPV4-3 در نظر گرفته شده است. همچنین آدرس های IPV6 هر سایت با توجه به آدرس بیرونی روتر مرزی همان سایت شکل گرفته است. در شکل ما محدوده آدرس IPV6 در سه سایت به ترتیب IPV6-IPV4-1، IPV6-IPV4-2 و IPV6-IPV4-3 در نظر گرفته شده است. به عبارت دیگر آدرس IPV4 روتر مرزی هر سایت در داخل محدوده آدرس IPV6 آن سایت گنجانده شده است. حال وقتی ترافیکی از سایت اول به سایت سوم ارسال می گردد، آدرس مبدا و مقصد ترافیک به ترتیب IPV6-IPV4-1 و IPV6-IPV4-3 است. روتر مرزی سایت مبدا با توجه به آدرس مقصد ترافیک که IPV6-IPV4-3 است آدرس IPV4 روتر مرزی سایت مقصد را که IPV4-3 است استخراج نموده و به صورت اتوماتیک Tunnel ایجاد می نماید.

IPV6 IPV4 3

تعیین محدوده آدرس IPV6 در هر سایت با توجه به آدرس IPV4 در روتر مرزی آن سایت

سوال بعدی که مطرح می شود اینکه چه رابطه ای بین آدرس IPV4 روتر مرزی و آدرس IPV6 سایت وجود دارد؟ پاسخ به این سوال به نوع Tunnel بستگی دارد و در 6to4 با ISATAP متفاوت است. در این بخش روش مورد بحث ما 6to4 Tunnel است. این رابطه در 6to4 به صورت زیر تعیین می شود.

formula1 

 

همانطور که در فرمول بالا پیداست در روش های 6to4 Tunneling آدرس هر سایت با 2002::/16 شروع می شود. 32 بیت بعدی آن از روی آدرس IPV4 که روی اینترفیس بیرونی روتر مرزی آدرس دهی شده است استخراج می شود. 16 بیت انتهایی prefix به دلخواه انتخاب می گردد. بدین ترتیب 64 بیت prefix در هر سایت تعیین می گردد.

در شکل زیر مثالی از چگونگی این تبدیل آمده است.

6to4

به عنوان مثال دوم فرض کنید سازمانی سه شعبه دارد که آدرس IPV4 روتر مرزی هر شعبه به ترتیب 12.1.1.2، 12.1.2.2 و 12.1.3.2 است. در هر شعبه نیز دو subnet مختلف وجود دارد. چگونه هر یک از subnet ها را با IPV6 آدرس دهی می کنیم؟

formula2

حتما این شبهه در ذهن شما ایجاد شده است که در این روش مجبور به استفاده از محدوده خاصی از آدرس IPV6 در هرسایت هستیم که با 2002::/16 شروع می شود و نمی توانیم با آدرس های واقعی و اینترنتی IPV6 که در سایت ها آدرس دهی شده اند بین سایت ها ارتباط ایجاد نماییم. خوشبختانه برای این موضوع نگرانی وجود ندارد. در ادامه ابتدا چگونگی پیاده سازی ارتباط سایت های IPV6 با محدوده آدرس 2002::/16 را روی بستر IPV4 نشان می دهیم سپس با اضافه کردن حقه ای ساده ارتباط بین سایت های IPV6 را با هر محدوده آدرسی با روش 6to4 برقرار می نماییم.

در شکل زیر سه سایت روی بستر اینترنت IPV4 با آدرس های 12.1.1.2، 12.1.2.2 و 12.1.3.2 به یکدیگر متصل هستند. شبکه داخلی در هر سه سایت با IPV6 آدرس دهی شده اند و دو نوع آدرس IPV6 به هر سایت اختصاص داده شده است. یکی از نوع 6to4 که با 2002::/16 شروع می شود و دیگری آدرس های غیر از 6to4 هستند. در مرحله ابتدایی سه سایت با آدرس های 2002::/16 را به یکدیگر متصل می کنیم سپس با تغییری ساده همین سه سایت با آدرس های غیر از 6to4 را نیز به یکدیگر متصل خواهیم نمود.

همانطور که در شکل مشاهده می کنید آدرس های 6to4 در هر سایت از روی آدرس IPV4 روتر مرزی همان سایت گرفته شده است که البته شیوه تبدیل آن در بحث های قبلی تشریح شده است.

6to4Tunnel

پیاده سازی 6to4 Tunnel

برای پیاده سازی 6to4 Tunneling در هر سایت یک Tunnel با همین mode ایجاد می کنیم. آدرس مبدا Tunnelرا نیز تعیین می کنیم. آدرس مقصد Tunnel نا مشخص است و توسط روتر مرزی و در زمان ارسال ترافیک تعیین خواهد شد. بدین صورت که با توجه به آدرس مقصد ترافیک که از محدوده 2002::/16 و از نوع 6to4 است، آدرس IPV4 روتر مرزی سایت مقصد استخراج شده و به صورت اتوماتیک با مقصد Tunnel ایجاد می گردد. علاوه بر دو دستور فوق، آدرس IPV6 از نوع 6to4 روی خود Tunnel نیز تخصیص داده می شود. آخرین اقدامی که در ایجاد بستر 6to4 ضروری است، ارسال ترافیک های به مقصد 2002::/16 روی Tunnel است که با دستور ipv6 route و ایجاد مسیر Static اجرا می گردد. بدین ترتیب ترافیک های با مقصد 2002::/16 باعث فعال شدن Tunnel های 6to4 خواهد شد.

با توجه به توضیحات فوق شیوه پیاده سازی 6to4 روی روترهای مرزی هر سه سایت نشان داده شده است. در پایان نیز نشان داده شده است که سایت اول قادر به ارتباط با دو سایت دیگر است. البته در این مرحله نوع ارتباط فقط به آدرس های 2002::/16 محدود می شود.

!!! SITE1

interface Tunnel0

 ipv6 address 2002:C01:102::1/64

 tunnel source 12.1.1.2

 tunnel mode ipv6ip 6to4

!

ipv6 route 2002::/16 Tunnel0

!

!!! SITE2

interface Tunnel0

 ipv6 address 2002:C01:202::1/64

 tunnel source 12.1.2.2

 tunnel mode ipv6ip 6to4

!

ipv6 route 2002::/16 Tunnel0

!

!!! SITE3

interface Tunnel0

 ipv6 address 2002:C01:302::1/64

 tunnel source 12.1.3.2

 tunnel mode ipv6ip 6to4

!

ipv6 route 2002::/16 Tunnel0

!

SITE1#ping 2002:0C01:0202:1::1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2002:C01:202:1::1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 0/4/16 ms

SITE1#ping 2002:0C01:0302:1::1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2002:C01:302:1::1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 4/6/12 ms

پیاده سازی 6to4 Tunnel برای اتصال آدرس های با محدوده 2002::/16

برای ایجاد ارتباط بین سایت ها با آدرس های غیر از 2002::/16 کافی است تا یک مسیر Static به ازاء هر سایت مقصد روی هر یک از روترهای مرزی ایجاد شود. بدین صورت که مثلا در سایت اول دو مسیر Static به مقصد آدرس های غیر از 6to4 سایت های دوم و سوم ایجاد می کنیم که روتر بعدی آن به آدرس 6to4 سایت مقصد اشاره می کند. بدین ترتیب وقتی ترافیکی به مقصد سایتی و به آدرس غیر از 6to4 آن ارسال می گردد ابتدا با مسیر Static ایجاد شده به آدرس 2002:: سایت مقصد هدایت می شود. از طرفی با توجه به مسیری که قبلا در هر سایت ایجاد شده است، ترافیک های به مقصد 2002::/16 روی تونل های 6to4 ارسال می شود. بدین ترتیب روتر با جستجوی دو مسیر در جدول مسیریابی به صورت بازگشتی مسیر نهایی ترافیک به مقصد را استخراج می کند.

formula3

 

 

!!! SITE1

ipv6 route 2001:1:1:2::/64 2002:0C01:0202::

ipv6 route 2001:1:1:3::/64 2002:0C01:0302::

!

!!!SITE2

ipv6 route 2001:1:1:1::/64 2002:0C01:0102::

ipv6 route 2001:1:1:3::/64 2002:0C01:0302::

!

!!!SITE3

ipv6 route 2001:1:1:1::/64 2002:0C01:0102::

ipv6 route 2001:1:1:2::/64 2002:0C01:0202::

!

SITE1#ping ipv6 2001:1:1:2::1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2001:1:1:2::1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/8 ms

SITE1#ping ipv6 2001:1:1:3::1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2001:1:1:3::1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 4/6/8 ms

پیاده سازی 6to4 Tunnel برای اتصال آدرس های غیر از 6to4

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید