با گسترش استفاده از پروتکل IPv6، یکی از چالشهای مهم مدیران شبکه، برقراری ارتباط بین شبکههای IPv6 از طریق زیرساختهایی است که هنوز فقط از IPv4 پشتیبانی میکنند. برای مثال، ممکن است دو شعبه سازمان به اینترنت IPv4 دسترسی داشته باشند، اما بخواهیم ترافیک IPv6 را بین آنها منتقل کنیم.
یکی از روشهای انجام این کار، استفاده از تونل 6to4 در MikroTik RouterOS است. این فناوری بستههای IPv6 را داخل بستههای IPv4 قرار میدهد و امکان عبور آنها را از شبکههای مبتنی بر IPv4 فراهم میکند.
در این راهنمای تخصصی گروه بیستون، ابتدا عملکرد تونل 6to4 و محدودیتهای آن را بررسی میکنیم. سپس در یک پروژه عملی، دو روتر MikroTik را طوری پیکربندی میکنیم که بتوانند ترافیک IPv6 دو شبکه مجزا را روی اینترنت IPv4 به یکدیگر منتقل کنند.
/interface 6to4 برای ایجاد تونل دستی بین دو IPv4 Endpoint یا برای آدرسدهی خودکار مبتنی بر پیشوند 2002::/16 استفاده کرد. این روش بهصورت پیشفرض ترافیک را رمزنگاری نمیکند.تونل 6to4 در میکروتیک چیست؟
6to4 یکی از فناوریهای IPv6 Transition است که برای انتقال بستههای IPv6 از طریق شبکههای IPv4 طراحی شده است.
در این روش، یک بسته IPv6 در داخل یک بسته IPv4 قرار میگیرد و در انتهای مسیر، هدر IPv4 حذف میشود تا بسته IPv6 اصلی مجدداً پردازش شود.
میکروتیک این قابلیت را از طریق رابط مجازی 6to4 در RouterOS ارائه میکند.
کاربردهای اصلی 6to4
- اتصال دو شبکه IPv6 روی زیرساخت IPv4
- ساخت تونل دستی بین دو روتر MikroTik
- آزمایش و یادگیری مفاهیم IPv6 Tunneling
- استفاده از بعضی سرویسهای IPv6 Tunnel Broker
- انتقال IPv6 در شبکههای فاقد پشتیبانی Native IPv6
6to4 یک روش انتقال در لایه سوم شبکه است. این فناوری بهتنهایی دو LAN را در یک Broadcast Domain مشترک قرار نمیدهد.
به عبارت دیگر، اتصال دو شعبه با 6to4 یک ارتباط Routed است، نه Bridge لایه دوم.
تونل 6to4 چگونه کار میکند؟
برای درک عملکرد آن، فرض کنید روتر R1 میخواهد یک بسته IPv6 برای شبکه پشت R2 ارسال کند.
- روتر R1 بر اساس جدول IPv6 Routing تشخیص میدهد بسته باید از رابط 6to4 خارج شود.
- بسته IPv6 داخل یک بسته IPv4 جدید قرار میگیرد.
- هدر IPv4 خارجی، آدرس R1 را بهعنوان مبدأ و آدرس R2 را بهعنوان مقصد در بر میگیرد.
- شبکه IPv4 بسته را تا روتر R2 منتقل میکند.
- روتر R2 هدر IPv4 را حذف و بسته IPv6 را به مقصد نهایی Forward میکند.
نقش IP Protocol 41 در تونل 6to4
6to4 از شماره پروتکل 41 در هدر IPv4 استفاده میکند.
این شماره مشخص میکند که Payload بسته IPv4 حاوی یک بسته IPv6 است.
ساختار بسته در تونل 6to4
هدر معمول IPv4 خارجی 20 بایت به اندازه بسته اصلی اضافه میکند. به همین دلیل، باید MTU مسیر هنگام راهاندازی تونل بررسی شود.
انواع تونل 6to4 در RouterOS
مستندات رسمی MikroTik دو شیوه عملکرد را برای رابط 6to4 معرفی میکنند.
۱. Automatic 6to4
در این روش، مقدار remote-address مشخص نمیشود و روتر از اطلاعات آدرس IPv6 با پیشوند 2002::/16 برای تعیین مقصد IPv4 استفاده میکند.
فرمت آدرسهای 6to4 خودکار معمولاً به شکل زیر است:
2002:XXXX:YYYY::/48بخشهای XXXX و YYYY از تبدیل آدرس IPv4 به نمایش Hexadecimal به دست میآیند.
مثلاً آدرس IPv4 زیر را در نظر بگیرید:
198.51.100.10نمایش Hexadecimal این آدرس برابر است با:
C633:640Aدر نتیجه پیشوند 6to4 متناظر میشود:
2002:C633:640A::/48۲. Manual Point-to-Point 6to4
در روش دستی، IPv4 Address هر دو انتهای تونل بهطور صریح تنظیم میشود.
برای مثال:
/interface 6to4
add name=6to4-to-branch \
local-address=198.51.100.10 \
remote-address=203.0.113.20در این حالت، بسته IPv6 مستقیماً داخل IPv4 به مقصد تعیینشده ارسال خواهد شد.
در پروژه عملی این مقاله از همین روش استفاده میکنیم.
نکته درباره استانداردهای جدید
روش خودکار 6to4 و استفاده از Relayهای Anycast در اینترنت عمومی با مشکلات عملیاتی و پایداری مواجه شدهاند.
استاندارد RFC 7526 بهطور مشخص استفاده از 6to4 Anycast Relay و آدرس 192.88.99.1 را منسوخ اعلام کرده است. این موضوع با تونل دستی بین دو Endpoint مشخص یکسان نیست.
تفاوت 6to4 با WireGuard، GRE و IPv6 Native
انتخاب فناوری مناسب باید بر اساس هدف ارتباطی انجام شود.
| ویژگی | 6to4 | WireGuard | IPv6 Native |
|---|---|---|---|
| انتقال IPv6 | روی IPv4 | داخل تونل رمزنگاریشده | مستقیم |
| رمزنگاری داخلی | خیر | بله | خیر، بهخودیخود |
| پروتکل زیرین | IPv4 Protocol 41 | UDP | IPv6 |
| مناسب ارتباط امن شعب | فقط با حفاظت مکمل | بله | نیازمند سیاست امنیتی مناسب |
| وابستگی به IPv4 | بله | بسته به Endpoint | خیر |
از نظر عملیاتی، 6to4 برای یادگیری IPv6 Tunneling یا سناریوهای مشخص انتقال IPv6 مفید است.
اما اگر هدف اتصال امن دفتر مرکزی به شعبه روی اینترنت عمومی باشد، معمولاً WireGuard یا یک راهکار VPN مبتنی بر رمزنگاری انتخاب مناسبتری است.
برای مطالعه بیشتر: اتصال امن شعب و کاربران دورکار با WireGuard
پیشنیازهای راهاندازی تونل 6to4 در میکروتیک
قبل از شروع پروژه، شرایط زیر باید فراهم شده باشد.
- دو روتر MikroTik با RouterOS v7
- ارتباط IPv4 فعال بین دو Endpoint
- آدرس IPv4 قابل دسترسی در هر دو سمت
- امکان عبور IP Protocol 41
- دسترسی مدیریتی به RouterOS
- دو شبکه IPv6 مجزا برای LANها
- مجوز لازم در Firewall هر دو روتر
- امکان بررسی MTU و مسیر ارتباطی
آیا Public IP ضروری است؟
اگر تونل از اینترنت عمومی عبور میکند، داشتن IPv4 عمومی و قابلدسترسی در دو انتها سادهترین حالت است.
در زیرساختهای خصوصی که دو روتر از قبل از طریق IPv4 به یکدیگر دسترسی دارند، میتوان از آدرسهای خصوصی نیز استفاده کرد.
اما در سناریوهای دارای CGNAT، NAT چندلایه یا Firewall سرویسدهنده، عبور Protocol 41 ممکن است امکانپذیر نباشد.
بررسی اولیه روترها
روی هر دو MikroTik دستورات زیر را اجرا کنید:
/system resource print
/system package print
/ip address print
/ip route print
/ipv6 settings printاگر IPv6 بهصورت سیستمی غیرفعال باشد، باید قبل از شروع پروژه فعال شود.
/ipv6 settings set disable-ipv6=no forward=yesاین دستور فقط در صورت نیاز و پس از بررسی تنظیمات موجود اجرا شود. تغییر برخی تنظیمات IPv6 ممکن است به راهاندازی مجدد نیاز داشته باشد.
پروژه عملی: اتصال دو شعبه MikroTik با تونل 6to4
در این پروژه فرض میکنیم دو دفتر مجزا داریم که از طریق اینترنت IPv4 به هم متصل هستند.
هدف ما این است که کاربران و سرورهای دارای IPv6 در شعبه A بتوانند با شبکه IPv6 شعبه B ارتباط برقرار کنند.
جدول آدرسدهی پروژه
| پارامتر | روتر R1 | روتر R2 |
|---|---|---|
| موقعیت | دفتر مرکزی | شعبه دوم |
| WAN IPv4 | 198.51.100.10 | 203.0.113.20 |
| LAN IPv6 | 2001:db8:10::/64 | 2001:db8:20::/64 |
| IPv6 آدرس روتر در LAN | 2001:db8:10::1 | 2001:db8:20::1 |
| Tunnel IPv6 | 2001:db8:100::1/64 | 2001:db8:100::2/64 |
| Interface LAN | bridge-LAN | bridge-LAN |
| Tunnel MTU | 1480 | 1480 |
198.51.100.0/24 و 203.0.113.0/24 و بازه IPv6 2001:db8::/32 مخصوص مستندسازی هستند. این مقادیر در اینترنت عمومی قابل استفاده بهعنوان آدرس واقعی پروژه نیستند. پیش از اجرای عملی باید جایگزین شوند.فرض میکنیم Interface با نام bridge-LAN از قبل در هر دو روتر وجود دارد و ارتباط IPv4 و Default Route هر دو شعبه نیز صحیح تنظیم شده است.
تنظیمات پروژه در ادامه بهصورت مستقل برای R1 و R2 ارائه میشوند.
مرحله اول: پیکربندی تونل 6to4 روی روتر R1
۱. بررسی دسترسی IPv4 به شعبه دوم
ابتدا از روتر R1، آدرس WAN شعبه دوم را بررسی کنید:
/ping 203.0.113.20 count=5اگر پاسخ دریافت نشد، قبل از ایجاد تونل، مسیر IPv4، Gateway و Firewall را بررسی کنید.
توجه داشته باشید که پاسخ ندادن Ping ممکن است ناشی از مسدود بودن ICMP باشد.
۲. ایجاد Interface تونل
در Terminal روتر R1 دستور زیر را وارد کنید:
/interface 6to4
add name=6to4-to-B \
local-address=198.51.100.10 \
remote-address=203.0.113.20 \
mtu=1480 \
disabled=no \
comment="Bistoon IPv6 Tunnel R1-to-R2"در این دستور:
local-addressآدرس IPv4 روتر R1 است.remote-addressآدرس IPv4 روتر R2 است.mtu=1480بر اساس مسیر IPv4 با MTU برابر 1500 انتخاب شده است.
۳. اختصاص IPv6 به Interface تونل
/ipv6 address
add address=2001:db8:100::1/64 \
interface=6to4-to-B \
advertise=no \
comment="R1 Tunnel IPv6"در این مرحله آدرس IPv6 مربوط به سمت اول لینک تونلی ایجاد میشود.
گزینه advertise=no برای جلوگیری از ارسال Router Advertisement روی رابط تونل استفاده شده است.
۴. اختصاص IPv6 به شبکه LAN شعبه اول
/ipv6 address
add address=2001:db8:10::1/64 \
interface=bridge-LAN \
advertise=yes \
comment="Bistoon LAN-A IPv6"این آدرس بهعنوان Gateway IPv6 شبکه شعبه اول استفاده خواهد شد.
برای تخصیص خودکار آدرس به کاربران از طریق SLAAC، تنظیمات IPv6 Neighbor Discovery و Router Advertisement روی Interface LAN نیز باید فعال و صحیح باشد.
۵. ایجاد Static Route به شبکه شعبه دوم
روتر R1 باید بداند ترافیک مربوط به شبکه شعبه B از چه مسیری ارسال شود.
/ipv6 route
add dst-address=2001:db8:20::/64 \
gateway=2001:db8:100::2 \
comment="Route to LAN-B via 6to4"این Route مشخص میکند تمام بستههای مقصد شبکه IPv6 شعبه B به آدرس تونلی R2 ارسال شوند.
بعد از ایجاد Route، فعال بودن و امکان Resolve شدن Gateway را در خروجی Routing بررسی کنید.
/ipv6 route print detailدر این مرحله پیکربندی اصلی R1 تکمیل شده است. بخش Firewall را نیز باید طبق مراحل بعدی اعمال کنیم.
مرحله دوم: پیکربندی تونل 6to4 روی روتر R2
اکنون تنظیمات متناظر را در شعبه دوم انجام میدهیم.
۱. بررسی دسترسی IPv4 به شعبه اول
/ping 198.51.100.10 count=5۲. ایجاد Interface تونل در R2
/interface 6to4
add name=6to4-to-A \
local-address=203.0.113.20 \
remote-address=198.51.100.10 \
mtu=1480 \
disabled=no \
comment="Bistoon IPv6 Tunnel R2-to-R1"دقت کنید که مقادیر Local و Remote در سمت دوم برعکس شدهاند.
۳. اختصاص IPv6 به تونل R2
/ipv6 address
add address=2001:db8:100::2/64 \
interface=6to4-to-A \
advertise=no \
comment="R2 Tunnel IPv6"۴. اختصاص IPv6 به LAN شعبه دوم
/ipv6 address
add address=2001:db8:20::1/64 \
interface=bridge-LAN \
advertise=yes \
comment="Bistoon LAN-B IPv6"۵. ایجاد Static Route به شبکه شعبه اول
/ipv6 route
add dst-address=2001:db8:10::/64 \
gateway=2001:db8:100::1 \
comment="Route to LAN-A via 6to4"اکنون هر دو روتر دارای مسیر IPv6 متناظر هستند.
مرحله سوم: تنظیم Firewall برای تونل 6to4
یکی از رایجترین دلایل کار نکردن تونل 6to4، مسدود شدن IP Protocol 41 توسط Firewall است.
در این مرحله باید دو بخش امنیتی را بهصورت مستقل بررسی کنیم:
- IPv4 Firewall برای بستههای خارجی تونل
- IPv6 Firewall برای بستههای داخلی تونل
۱. مجاز کردن Protocol 41 روی R1
/ip firewall filter
add chain=input \
action=accept \
protocol=41 \
src-address=203.0.113.20 \
dst-address=198.51.100.10 \
place-before=0 \
comment="BISTOON Allow 6to4 from R2"۲. مجاز کردن Protocol 41 روی R2
/ip firewall filter
add chain=input \
action=accept \
protocol=41 \
src-address=198.51.100.10 \
dst-address=203.0.113.20 \
place-before=0 \
comment="BISTOON Allow 6to4 from R1"در این نمونه، بهجای مجاز کردن Protocol 41 از تمام اینترنت، فقط IP مشخص سمت مقابل اجازه ارسال دارد.
گزینه place-before=0 Rule را در ابتدای لیست قرار میدهد. در شبکه واقعی باید موقعیت Rule را مطابق سیاست Firewall و پیش از Rule مسدودکننده تنظیم کنید.
۳. اجازه ICMPv6 به آدرس تونلی روتر R1
برای تست Ping بین دو Endpoint تونل، لازم است ICMPv6 در Input Firewall مجاز باشد.
روی R1:
/ipv6 firewall filter
add chain=input \
action=accept \
protocol=icmpv6 \
in-interface=6to4-to-B \
src-address=2001:db8:100::2 \
place-before=0 \
comment="BISTOON ICMPv6 from R2"روی R2:
/ipv6 firewall filter
add chain=input \
action=accept \
protocol=icmpv6 \
in-interface=6to4-to-A \
src-address=2001:db8:100::1 \
place-before=0 \
comment="BISTOON ICMPv6 from R1"در بسیاری از پیکربندیهای پیشفرض، ICMPv6 از قبل مجاز است. در چنین شرایطی نباید Rule تکراری و غیرضروری ایجاد شود.
۴. مجاز کردن ترافیک IPv6 بین دو LAN
برای انتقال ترافیک بین شبکههای داخلی، باید Forward Firewall نیز بررسی شود.
روی R1، برای ترافیک ورودی از شعبه دوم:
/ipv6 firewall filter
add chain=forward \
action=accept \
in-interface=6to4-to-B \
src-address=2001:db8:20::/64 \
dst-address=2001:db8:10::/64 \
place-before=0 \
comment="BISTOON Forward B to A"روی R2، برای ترافیک ورودی از شعبه اول:
/ipv6 firewall filter
add chain=forward \
action=accept \
in-interface=6to4-to-A \
src-address=2001:db8:10::/64 \
dst-address=2001:db8:20::/64 \
place-before=0 \
comment="BISTOON Forward A to B"اگر سیاست Firewall محلی اجازه خروج ترافیک LAN به تونل را نمیدهد، برای جهت خروجی نیز Rule محدود به Prefix و Interface مربوطه تعریف کنید.
هدف، ایجاد دسترسی فقط میان دو شبکه موردنیاز است؛ نه باز کردن کلی ترافیک IPv6 از تمام Interfaceها.
مرحله چهارم: تست و بررسی عملکرد تونل 6to4
پس از اتمام تنظیمات، باید ارتباط را در چند مرحله مستقل آزمایش کنیم.
تست اول: وضعیت Interface تونل
روی R1:
/interface 6to4 print detail
/interface print where name="6to4-to-B"روی R2:
/interface 6to4 print detail
/interface print where name="6to4-to-A"پرچم R در لیست Interfaceها نشاندهنده وضعیت Running است، اما بهتنهایی تضمین نمیکند ترافیک IPv6 دوطرفه عبور میکند.
تست دوم: Ping بین IPv6های دو سر تونل
از R1:
/ping 2001:db8:100::2 count=5از R2:
/ping 2001:db8:100::1 count=5در صورت موفقیت، زیرساخت تونل و دسترسی IPv6 میان دو روتر تا این مرحله بهدرستی کار میکند.
تست سوم: بررسی Routing
/ipv6 route print detailروی R1 باید مسیر 2001:db8:20::/64 و روی R2 مسیر 2001:db8:10::/64 فعال و قابل Resolve باشد.
تست چهارم: Ping بین Gatewayهای LAN
از R1:
/ping 2001:db8:20::1 \
src-address=2001:db8:10::1 \
count=5از R2:
/ping 2001:db8:10::1 \
src-address=2001:db8:20::1 \
count=5اگر Ping تونلی موفق است اما Ping آدرسهای LAN ناموفق است، باید Forwarding، Firewall و مسیرهای برگشت را بررسی کرد.
تست پنجم: ارتباط کاربران دو شعبه
فرض کنید دو سیستم آزمایشگاهی با آدرسهای زیر داریم:
- Client-A: 2001:db8:10::100
- Client-B: 2001:db8:20::100
هر سیستم باید Prefix /64 و Gateway IPv6 مناسب شعبه خودش را داشته باشد.
پس از اطمینان از پیکربندی صحیح Clientها، از شعبه اول:
ping -6 2001:db8:20::100این دستور نمونهای برای Windows است. روی Linux نیز دستور معادل Ping IPv6 قابل استفاده است.
آموزش راهاندازی 6to4 از طریق WinBox
اگر ترجیح میدهید از محیط گرافیکی استفاده کنید، تنظیمات اصلی تونل در WinBox نیز در دسترس است.
مرحله اول: ایجاد تونل
- وارد WinBox شوید.
- بخش Interfaces را باز کنید.
- از قسمت افزودن Interface، نوع 6to4 Tunnel را انتخاب کنید.
- نامی مانند 6to4-to-B وارد کنید.
- Local Address را برابر آدرس WAN روتر اول قرار دهید.
- Remote Address را برابر IPv4 روتر دوم تنظیم کنید.
- مقدار MTU را متناسب با مسیر انتخاب کنید.
- تنظیمات را Apply و OK کنید.
مرحله دوم: اختصاص IPv6 Address
از منوی IPv6 → Addresses یک آدرس IPv6 برای Interface تونل تعریف کنید.
در R1:
Address: 2001:db8:100::1/64
Interface: 6to4-to-B
Advertise: noمرحله سوم: تنظیم IPv6 Route
از منوی IPv6 → Routes یک مسیر جدید ایجاد کنید.
Dst. Address: 2001:db8:20::/64
Gateway: 2001:db8:100::2مرحله چهارم: تنظیم Firewall
در بخش IP → Firewall → Filter Rules قانون مجاز کردن Protocol 41 از آدرس IPv4 شعبه مقابل را ایجاد کنید.
سپس در قسمت IPv6 Firewall، دسترسیهای ضروری ICMPv6 و Forward را مطابق سیاست شبکه بررسی کنید.
مرحله پنجم: بررسی ارتباط
از Terminal داخلی WinBox دستور Ping به IPv6 طرف مقابل را اجرا کنید.
در ادامه، آمار ترافیک Interface و وضعیت Routeها را نیز بررسی کنید.
MTU مناسب برای تونل 6to4 چقدر است؟
یکی از مسائل مهم در پیکربندی تونلهای IPv6 over IPv4، محاسبه MTU است.
در حالت معمول، 6to4 یک هدر IPv4 به اندازه 20 بایت به بسته IPv6 اضافه میکند.
اگر MTU مسیر IPv4 برابر 1500 باشد، حداکثر MTU نظری بسته IPv6 داخل تونل برابر خواهد بود با:
1500 - 20 = 1480 bytesبه همین دلیل، در پروژه حاضر از مقدار 1480 استفاده کردهایم.
MTU در مسیر PPPoE
اگر ارتباط IPv4 زیرین از PPPoE با MTU برابر 1492 استفاده کند، مقدار نظری تغییر خواهد کرد:
1492 - 20 = 1472 bytesبنابراین انتخاب MTU برابر 1480 برای تمام شبکهها مناسب نیست.
آیا میتوان MTU را کمتر تنظیم کرد؟
بله. مقدار مناسب باید بر اساس Path MTU و نیازهای شبکه انتخاب شود.
برای مثال، در یک مسیر با سربار اضافی ممکن است MTU برابر 1400 انتخاب شود.
اما برای IPv6 نباید بدون بررسی قواعد پروتکل، از مقادیر کمتر از حداقل MTU استاندارد 1280 بایت استفاده کرد.
تنظیم MTU روی Interface
/interface 6to4
set [find name="6to4-to-B"] mtu=1480در روتر دوم نیز نام Interface مربوط به همان سمت را وارد کنید.
TCP MSS Clamping در 6to4
رابط 6to4 دارای گزینهای به نام clamp-tcp-mss است.
این قابلیت میتواند MSS بستههای TCP SYN را متناسب با MTU تونل محدود کند.
برای بررسی:
/interface 6to4 print detailو برای فعال کردن در صورت نیاز:
/interface 6to4
set [find name="6to4-to-B"] \
clamp-tcp-mss=yesاین گزینه مشکل تمام پروتکلها را حل نمیکند. بهویژه برای UDP باید MTU مسیر و Fragmentation جداگانه بررسی شود.
برای آموزش تکمیلی: آشنایی کامل با MTU و L2MTU در RouterOS میکروتیک
آیا میتوان با 6to4 اینترنت IPv6 دریافت کرد؟
بله. یکی از کاربردهای رابط 6to4 در RouterOS، اتصال به سرویسهای IPv6 Tunnel Broker است.
برای مثال، سرویس Hurricane Electric Tunnel Broker میتواند تونل IPv6 روی اتصال IPv4 ارائه دهد.
در این حالت، میکروتیک بهجای اتصال مستقیم به یک روتر شعبه، به IPv4 Endpoint ارائهشده توسط Tunnel Broker متصل میشود.
اطلاعات موردنیاز از Tunnel Broker
- Server IPv4 Address
- Client IPv4 Address
- Server IPv6 Address
- Client IPv6 Address
- Routed IPv6 Prefix
مراحل کلی راهاندازی
- ایجاد حساب و درخواست تونل در سرویسدهنده
- ثبت آدرس IPv4 عمومی سمت MikroTik
- ایجاد رابط 6to4 با Local و Remote IPv4 مشخص
- اختصاص Client IPv6 به رابط تونل
- تعریف مسیر IPv6 از طریق Gateway ارائهشده
- اختصاص Routed Prefix به LAN
- بررسی Firewall، Router Advertisement و DNS
- تست ارتباط با مقاصد IPv6 عمومی
در مستندات رسمی MikroTik نیز نمونه پیکربندی Tunnel Broker ارائه شده است.
برای مشاهده دستورهای مخصوص سرویس خود، به بخش Example Configurations در پنل Tunnel Broker مراجعه کنید.
برای دسترسی واقعی کاربران به اینترنت IPv6، باید از Prefix معتبر تخصیصیافته توسط ISP یا Tunnel Broker استفاده کنید.
همچنین سرویسدهنده باید Protocol 41 را عبور دهد. وجود CGNAT ممکن است مانع اتصال مستقیم به بعضی Tunnel Brokerها شود.
آیا تونل 6to4 میکروتیک امن است؟
تونل 6to4 بهتنهایی یک VPN رمزنگاریشده نیست.
این فناوری فقط بستههای IPv6 را درون IPv4 منتقل میکند و از مکانیزم رمزنگاری داخلی برای حفاظت از محتوای داده استفاده نمیکند.
مهمترین محدودیتهای امنیتی
- عدم رمزنگاری پیشفرض ترافیک
- عدم احراز هویت رمزنگاریشده Endpointها در حالت ساده
- امکان دریافت بستههای جعلی در صورت پیکربندی نامناسب
- وابستگی به سیاست Firewall و مسیر IPv4
- احتمال سوءاستفاده از دسترسیهای گسترده IPv6 Forward
آیا 6to4 از IPsec پشتیبانی میکند؟
RouterOS برای رابط 6to4 پارامتری به نام ipsec-secret در اختیار قرار میدهد.
این گزینه میتواند برای ایجاد پیکربندی IPsec مرتبط با Endpoint مشخص استفاده شود.
اما فعالسازی آن نیازمند تنظیم صحیح و هماهنگی IPsec در هر دو سمت است.
پیشنهاد برای شبکههای سازمانی
اگر هدف اصلی، اتصال امن دو شعبه روی اینترنت عمومی است، استفاده از WireGuard یا IPsec با پیکربندی استاندارد معمولاً انتخاب مناسبتری خواهد بود.
در مقابل، 6to4 برای انتقال IPv6 در یک زیرساخت کنترلشده یا محیط آزمایشگاهی میتواند مفید باشد.
عیبیابی مشکلات تونل 6to4 در MikroTik
اگر ارتباط پس از انجام تنظیمات برقرار نشد، مراحل زیر را بهترتیب بررسی کنید.
۱. تونل ساخته شده ولی Ping پاسخ نمیدهد
احتمالاً یکی از شرایط زیر برقرار نیست:
- IPv4 Endpoint سمت مقابل قابل دسترس نیست.
- Protocol 41 توسط ISP یا Firewall مسدود شده است.
- Local یا Remote IPv4 اشتباه وارد شده است.
- IPv6 Address روی Tunnel صحیح نیست.
- Firewall ورودی ICMPv6 را محدود کرده است.
برای بررسی:
/interface 6to4 print detail
/ip firewall filter print stats
/ipv6 address print detail۲. Protocol 41 عبور نمیکند
با استفاده از Torch یا Packet Sniffer، ترافیک IPv4 ورودی و خروجی را بررسی کنید.
در یک Packet Capture باید بستههای IPv4 با Protocol Number 41 قابل مشاهده باشند.
اگر بستهها از روتر مبدأ خارج میشوند اما به روتر مقصد نمیرسند، ممکن است محدودیت در شبکه ISP یا تجهیزات میانی باشد.
۳. Tunnel Ping موفق است اما LANها ارتباط ندارند
در این شرایط، معمولاً خود تونل برقرار است و باید Routing و IPv6 Firewall بررسی شوند.
/ipv6 route print detail
/ipv6 firewall filter print statsاطمینان حاصل کنید هر دو سمت مسیر برگشت به Prefix مقابل را دارند.
۴. کاربران IPv6 دریافت نمیکنند
در این حالت، تنظیمات SLAAC، Router Advertisement و Neighbor Discovery روی LAN را بررسی کنید:
/ipv6 address print detail
/ipv6 nd print detailروی LAN موردنظر باید Prefix معتبر و تنظیمات مناسب Advertise وجود داشته باشد.
۵. بعضی ارتباطات کار میکنند اما انتقال فایل مشکل دارد
یکی از علتهای احتمالی، MTU نامناسب است.
اگر Tunnel روی PPPoE قرار دارد، مقدار MTU زیرین را در نظر بگیرید.
همچنین دریافت پیام ICMPv6 Packet Too Big برای Path MTU Discovery اهمیت دارد.
۶. روتر پشت CGNAT قرار دارد
در CGNAT، آدرس عمومی IPv4 مستقیماً روی روتر مشتری قرار ندارد.
از آنجا که 6to4 از Protocol 41 استفاده میکند، بسیاری از پیادهسازیهای NAT معمولی نمیتوانند این ترافیک را مانند TCP و UDP مدیریت کنند.
راهکار مناسب ممکن است استفاده از Public IPv4 واقعی، زیرساخت خصوصی قابل مسیریابی یا یک تونل UDP-based مانند WireGuard باشد.
جدول تشخیص سریع مشکلات 6to4
| نشانه | علت احتمالی | اقدام پیشنهادی |
|---|---|---|
| تونل ارتباط ندارد | IPv4 Endpoint یا Protocol 41 | بررسی Routing و Firewall |
| Ping تونل موفق است، LAN ناموفق | IPv6 Route یا Forward Firewall | بررسی مسیر رفت و برگشت |
| فقط بعضی بستهها عبور میکنند | MTU یا PMTUD | بررسی MTU و ICMPv6 |
| رابط Running است اما ترافیک عبور نمیکند | Running بهتنهایی نشاندهنده سلامت End-to-End نیست | Ping و Packet Capture |
| بعد از تغییر WAN ارتباط قطع میشود | تغییر Public IP یا Source Routing | بهروزرسانی Endpointها و مسیر |
| تونل خودکار کار نمیکند | محدودیت پیادهسازی یا مشکلات 6to4 خودکار | استفاده از تونل دستی یا راهکار جایگزین |
| کاربران اینترنت IPv6 ندارند | نبود Prefix عمومی یا Default Route معتبر | بررسی تخصیص ISP یا Tunnel Broker |
بهترین روشهای راهاندازی تونل 6to4
- ابتدا IPv4 را بررسی کنید. تا زمانی که Endpointهای IPv4 به یکدیگر دسترسی ندارند، عیبیابی IPv6 فایده چندانی ندارد.
- از Tunnel دستی برای پروژه مشخص استفاده کنید. در سناریوی دو روتر با آدرس ثابت، Remote Address را صریحاً تعیین کنید.
- Protocol 41 را فقط از IP معتبر بپذیرید. Firewall را به آدرس مشخص Endpoint مقابل محدود کنید.
- مسیر برگشت را فراموش نکنید. Static Route باید در هر دو سمت بهصورت صحیح تعریف شود.
- MTU را متناسب با زیرساخت انتخاب کنید. مقدار 1480 فقط برای مسیر IPv4 با MTU برابر 1500 و بدون سربار اضافی مناسب است.
- 6to4 را معادل VPN امن ندانید. برای اطلاعات حساس، از تونل رمزنگاریشده استفاده کنید.
- تنظیمات را مستندسازی کنید. آدرسهای WAN، Prefixهای IPv6، نام Interfaceها و Routeها را ثبت کنید.
- تست End-to-End انجام دهید. فقط Running بودن Interface برای تأیید سلامت ارتباط کافی نیست.
سؤالات متداول درباره تونل 6to4 میکروتیک
تونل 6to4 در میکروتیک چیست؟
6to4 روشی برای انتقال بستههای IPv6 درون IPv4 است که در RouterOS از طریق Interface مخصوص 6to4 پیکربندی میشود.
آیا تونل 6to4 به Public IP نیاز دارد؟
برای ارتباط مستقیم روی اینترنت عمومی، داشتن IPv4 عمومی و قابلدسترسی در دو انتها مناسبترین حالت است. در شبکههای خصوصی با IPv4 Routing صحیح، Public IP الزامی نیست.
6to4 از چه پورتی استفاده میکند؟
6to4 از TCP یا UDP Port مشخص استفاده نمیکند. این فناوری مبتنی بر IP Protocol 41 است.
آیا 6to4 ترافیک را رمزنگاری میکند؟
خیر. در حالت عادی فقط Encapsulation انجام میشود. برای رمزنگاری باید راهکار امنیتی مکمل مانند IPsec یا VPN مناسب استفاده شود.
آیا میتوان دو شعبه را با 6to4 متصل کرد؟
بله. با داشتن IPv4 Endpointهای قابلدسترس و تنظیم صحیح IPv6 Routing و Firewall، میتوان ترافیک IPv6 دو شعبه را منتقل کرد.
MTU مناسب 6to4 چقدر است؟
روی IPv4 Path با MTU برابر 1500، مقدار نظری 1480 رایج است. اگر MTU زیرین کمتر باشد، مقدار تونل نیز باید متناسب انتخاب شود.
تفاوت 6to4 با WireGuard چیست؟
6to4 یک فناوری انتقال IPv6 روی IPv4 بدون رمزنگاری پیشفرض است. WireGuard یک VPN رمزنگاریشده است که میتواند ترافیک IPv4 و IPv6 را منتقل کند.
آیا 6to4 پشت CGNAT کار میکند؟
در بسیاری از شبکههای CGNAT، عبور Protocol 41 امکانپذیر نیست یا به پشتیبانی اختصاصی نیاز دارد. برای چنین محیطهایی، راهکارهای UDP-based معمولاً عملیتر هستند.
آیا 6to4 باعث دریافت اینترنت IPv6 میشود؟
خود تونل بهتنهایی اینترنت IPv6 ایجاد نمیکند. برای دسترسی عمومی باید مسیر IPv6 معتبر، Prefix مناسب و سرویسدهندهای مانند ISP یا Tunnel Broker وجود داشته باشد.
چرا مثال خودکار 6to4 در مستندات MikroTik کار نمیکند؟
در مستندات فعلی RouterOS، مثال خودکار با عنوان Not working مشخص شده است. این وضعیت را باید بهعنوان محدودیت مستندشده در نظر گرفت و برای پروژههای جدید از روش مناسب دیگری استفاده کرد.
آیا 6to4 برای شبکههای حساس سازمانی پیشنهاد میشود؟
اگر هدف صرفاً انتقال IPv6 روی یک بستر قابلاعتماد باشد، ممکن است مناسب باشد؛ اما برای ارتباطات حساس روی اینترنت عمومی، تونلهای رمزنگاریشده معمولاً گزینه بهتری هستند.
جمعبندی: چه زمانی از تونل 6to4 استفاده کنیم؟
تونل 6to4 یکی از روشهای انتقال IPv6 بر بستر IPv4 است که در RouterOS از طریق رابط مخصوص آن پیکربندی میشود.
در این مقاله ابتدا با عملکرد 6to4، انواع پیکربندی و نقش Protocol 41 آشنا شدیم.
سپس یک پروژه عملی برای اتصال دو شبکه IPv6 در دو شعبه مجزا طراحی کردیم.
در این پروژه، تنظیمات Tunnel، IPv6 Address، Static Route، Firewall و روشهای تست ارتباط را بررسی کردیم.
بااینحال، برای انتخاب فناوری مناسب باید به امنیت، وضعیت IPv4، پشتیبانی ISP و محدودیتهای NAT توجه شود.
6to4 برای انتقال IPv6 در سناریوهای مشخص کاربرد دارد، اما برای اتصال امن شعب سازمانی، استفاده از WireGuard یا راهکارهای VPN رمزنگاریشده معمولاً انتخاب مناسبتری است.
انتخاب تجهیزات مناسب MikroTik با گروه بیستون
طراحی شبکههای IPv6، تونلهای Site-to-Site و ارتباطات بین شعب نیازمند شناخت قابلیتهای RouterOS، محدودیتهای سختافزاری و انتخاب تجهیزات مناسب است.
هنگام انتخاب روتر MikroTik، بهتر است علاوه بر تعداد پورتها و توان پردازشی، قابلیتهای Routing، VPN و پشتیبانی از IPv6 نیز بررسی شود.
برای دریافت اطلاعات محصولات، مشاوره انتخاب تجهیزات و استعلام موجودی، میتوانید از طریق وبسایت گروه بیستون اقدام کنید.
منابع و مستندات تخصصی
- مستندات رسمی MikroTik: 6to4
- مرجع دستورات 6to4 در RouterOS
- مستندات IPv6 Addressing در RouterOS
- مستندات Firewall Filter
- RFC 3056: Connection of IPv6 Domains via IPv4 Clouds
- RFC 7526: Deprecating 6to4 Anycast
- مستندات رسمی MikroTik WireGuard
این آموزش با تمرکز بر RouterOS v7 تهیه شده است. مثالهای آدرسدهی صرفاً برای مستندسازی هستند. قبل از اجرای دستورات در شبکه عملیاتی، آدرسها، ساختار Interfaceها، Firewall و Routeهای موجود را بررسی کنید.
دیدگاه خود را بنویسید