وقتی سرنوشت‌ها به هم گره می‌خورند: کوتاه درباره‌ی اصطلاح Fate sharing

یه فلسفه‌ای هست تو دنیا که میگه اتفاقایی که برای ما میوفته بخشیش دست ما نیست و در گروی اثر عملی هست که سایر عناصر عالم بر زندگی ما دارن که بهش میگن تقدیر یا سرنوشت. حالا همین موضوع در دنیای شبکه هم صدق می‌کنه. اولین‌بار این اصطلاح رو در دنیای شبکه، آقای کلارک (David D. Clark) در سندی تحت عنوان “فلسفه‌ی طراحی پروتکل‌های اینترنتی DARPA” در سال ۱۹۸۸ معرفی کرد. به زبون ساده، fate sharing میگه:

“اگر ما مجموعه‌ای از عناصر متصل به هم رو داشته باشیم که عملکرد هر کدومشون در گرو عملکرد صحیح سایر عناصر باشه، در این صورت اگر یک عنصر بنا به هر دلیلی fail بشه، سایر عناصر هم به صورت خودکار fail خواهند شد.”

یه مثال تو دنیای واقعی برای درک بهتر این موضوع: سوار پرایدتون (مثلاً) هستین و دارین برمیگردین خونه که یهو متوجه میشین ماشین داره به سختی حرکت میکنه. سریع میزنین کنار و پیاده میشین و می‌بنین که بله یکی از چرخای عقبتون پنچر شده. موتور ماشین سالمه، سه تا چرخ دیگش سالمه امّا چون یه چرخش دچار مشکل شده عملکرد ماشینتون هم دچار مشکل شده و ماشین نمیتونه به حرکت خودش ادامه بده.

امّا ببینیم تو دنیای شبکه کجاها ممکنه fate sharing رخ بده. یکی از مصداقای اصلی بروز fate sharing در هنگام مجازی‌سازی (virtualization) هست. یعنی زمانی که ما یک یا چندتا توپولوژی مجازی رو بر روی یک بستر فیزیکی پیاده‌سازی می‌کنیم. در این صورت هر مشکلی برای اون بستر فیزیکی رخ بده، قطعاً توپولوژی‌های مجازی که بر روی اون پیاده‌سازی شدن هم دچار مشکل میشن. ادامه خواندن “وقتی سرنوشت‌ها به هم گره می‌خورند: کوتاه درباره‌ی اصطلاح Fate sharing”

امنیت BGP : بررسی جزئیات تغییر مسیر ترافیک مقاصد محبوب به ISP روسی

BGP hijack
منبع: bgpmon.net

در ۱۲ دسامبر ۲۰۱۷، سرویس مانیتورینگ دنیای اینترنت، BGPMon، اتفاقی عجیب را گزارش کرد که بر طبق آن ترافیک شبکه هایی همانند گوگل، مایکروسافت، فیسبوک، اپل و … برای مدت زمان مشخصی از طریق یک ISP ناشناخته ی روسی مسیریابی شدند.

این اتفاق سبب شد تا بار دیگر این سوال مطرح شود که آیا ارتباطات در دنیای اینترنت امن و قابل اعتماد هستند؟ به بیان بهتر، آیا پروتکل BGP که وظیفه ی برقراری ارتباطات بین backbone ها، ISP ها و شبکه های بزرگ را در دنیا بر عهده دارد، دارای مکانیسم های امنیتی کافی هست؟

با گذشت سال ها و با وقوع اتفاقات مختلفی که از آنها با عنوان hijack یا ربوده شدن مسیرها یاد می شود، همانند اتفاق ۱۲ دسامبر که تنها ۸ ماه بعد از مسیریابی ترافیک مقاصدی همانند Master Card، Visa و … از طریق یک ISP تحت نظارت دولت روسیه، به وقوع پیوست، تقریبا این امر محرز گشته که امنیت BGP جز در حد حرف نیست.

با وجود همه ی این تفاسیر، چند نکته در رابطه با اتفاقی که در ۱۲ دسامبر رخ داد، وجود دارند که کمی مشکوک بوده و جای تامل داشتند: ادامه خواندن “امنیت BGP : بررسی جزئیات تغییر مسیر ترافیک مقاصد محبوب به ISP روسی”

تغییر رفتار پیش‌فرض eBGP با RFC8212

پیرو Route Leakage‌های مختلفی که در دنیای اینترنت رخ داده‌است، و همینطور نیاز مبرم Service Providerها، از اواسط سال ۲۰۱۵، در IETF گروه GROW بحثی شروع شد مبنی بر طراحی یک رفتار پیش‌فرض BGP در رابطه با تبادل روت‌ها با همسایگان خارجی (eBGP).
همانطور که می‌دانید در RFCهای مرتبط با BGP، علی‌الخصوص RFC4271، تابحال توضیحی در رابطه با رفتار پیش‌فرض همسایه‌های eBGP در تبادل روت‌ها زمانی که Policy خاصی اعمال نشده، ارائه نشده است، و این امر باعث شده که هر وِندوری رفتار سلیقه‌ای داشته باشد.

فارغ از جزئیات، بعنوان نمونه می‌توان به مدل‌های پیاده‌سازی زیر اشاره کرد:

  • بطور پیش‌فرض دو همسایه eBGP، زمانی که Policy خاصی روی ارتباطات eBGP تنظیم نشده باشد، روت‌های انتخاب‌شده در BGP Table خود را به یکدیگر ارسال می‌کنند و از یکدیگر قبول می‌کنند.
  • هیچ روتی ارسال نمی‌شود و هیچ روتی قبول نمی‌شود (discard) مگر اینکه Policy متناسبی تنظیم شده باشد.
  • برخی پیاده‌سازی‌ها هیچ روتی قبول نمی‌کنند و فقط روت‌های مربوط به AS خود را advertise می‌کنند.

مثلاً در حالت مثال اول، یکی از مخاطرات ممکن زمانی است که یک AS ناخواسته ترانزیت ارتباط بین ASهای دیگر می‌شود (در RFC7908 توضیح خوبی درباره‌ی Lateral ISP-ISP-ISP Leak همراه با دو بررسی دقیق در قسمت منابع، ارائه شده) ادامه خواندن “تغییر رفتار پیش‌فرض eBGP با RFC8212”

زوایای پنهان عملکرد IPv6؛ مزایا و تصورات اشتباه

در نوشته ها و گفته های متعدد در رابطه با IPv6 با این عبارت روبه رو می شویم که:

‏IPv6‎‏ عملکرد بهتری نسبت به ‏IPv4‎‏ دارد.

و گاهی ‏در پی این عبارت دلایلی نیز آورده می شود. اما چه میزان این مطلب و دلایلی که در پی آن به عنوان مواردی برای ‏بهبود عملکرد ‏IPv6‎‏ مطرح می شوند، صحت دارند؟ ‏بیان بسیاری از این دلایل شاید تنها در وجهه‌ی عمومی و همراه ساختن عموم جامعه در حرکت به سمت استفاده از IPv6 قانع‌کننده و مقبول باشند اما از لحاظ فنی این انتظار وجود دارد که یک کارشناس حوزه‌ی اینترنت، توانایی استدلال در رد یا قبول هر یک از دلایلی که در پی این عبارت مطرح می شوند را داشته باشد. در این مقاله قصد داریم تا نگاهی فنی تر به این دلایل داشته باشیم.

***

در IPv6 انجام تغییراتی در ساختار و قالب این پروتکل سبب ایجاد بهبود کارایی آن در برخی موارد گشته که عبارتند از:

۱-‏ فضای آدرس دهی بسیار بزرگتر
اولین مزیتی که برای ‏IPv6‎‏ ‏ بیان می شود آن است که ‏IPv6‎‏ فضای آدرس دهی بزرگتری نسبت به ‏IPv4‎‏ ‏داشته و به همین دلیل می تواند تعداد آدرس های بیشتری را فراهم آورد. بله این عبارت درست است! ‏IPv6‎‏ ‏به دلیل ۱۲۸ بیتی بودن قادر است تقریبا ‏‎۳٫۴*۱۰^۳۸‎‏ آدرس ممکن را فراهم کند که با گسترش شبکه ها ‏و افزایش دستگاه هایی که توانایی اتصال به اینترنت را دارند، این مقدار آدرس ‏IP‏ تا مدت های زیادی ‏جوابگوی نیازها خواهد بود. اما این موضوع چه ارتباطی با بهبود عملکرد ‏IPv6‎‏ ‏دارد؟

تصور کنید آنقدر آدرس ‏IP‏ وجود دارد که هر دستگاه می تواند Public IP (آدرس عمومی اینترنی) متعلق به خود را داشته ‏باشد. دقت کنید که گفته شد آدرس Public IP‏. بله دقیقا منظور آدرس های ‏IP‏ ای هستند که در دنیای اینترنت ‏قابل مسیریابی می باشند. به نظر شما زمانی که هر دستگاه بتواند یک آدرس ‏Public IP مخصوص به خود ‏داشته باشد و خود به صورت مستقیم به اینترنت متصل گردد، چه مزیتی وجود خواهد داشت؟

برای رسیدن به جواب این سوال، به چندین سال قبل، زمانی که برای اولین بار احساس شد که آدرس های عمومیِ ‏IPv4‏ رو به اتمام هستند، باز می گردیم. در آن زمان اولین راهکاری که برای نجات ‏IPv4‎‏ ‏از این ‏اوضاع مطرح شد، راهکاری به اسم ‏Network Address Translation‏ یا همان ‏NAT‏ بود.

عملی که این ‏راهکار انجام می داد آن بود که دستگاه‌هایی که در داخل یک ساختار (مثلا دستگاه های داخل یک سازمان یا ‏دستگاه های داخل خانه و یا …) قرار داشتند، برای آن که بتوانند با هم ارتباط برقرار نمایند، از آدرس هایی ‏استفاده می کردند معروف به Private IPv4 (‏RFC1918‎‏) که این آدرس ها در اینترنت قابل مسیریابی نبودند و اگر قرار بود این دستگاه ها به اینترنت متصل ‏شوند و با سایر دستگاه ها در دنیای اینترنت ارتباط داشته باشند، Private IP‏ آن ها توسط ‏gateway‏ آن ساختار (مثلا مودم یا روتر) به یک Public IP‏ ترجمه می شد. به این ترتیب دیگر ‏نیازی نبود که همه‌ی دستگاه های درون یک ساختار یک IP آدرس ‏Public‏ مجزا و مخصوص به خود داشته ‏باشند، بلکه کافی بود به کل ساختاری که دستگاه ها در آن قرار داشتند تنها یک آدرس ‏عمومی IPv4 تعلق ‏گیرد و هر دستگاهی که قصد برقراری ارتباط با اینترنت را داشت، آدرس ‏Private‏ آن به آدرس ‏Public‏ ‏اختصاص یافته به ساختار ترجمه می گشت. ‏ ادامه خواندن “زوایای پنهان عملکرد IPv6؛ مزایا و تصورات اشتباه”

DOTS، روشی جدید در مواجهه با حملات DDoS؟

این روزها حملات DDoS به بخش لاینفکی از دنیای اینترنت مبدل شده‌اند و روز به روز نیز در حال پیچیده‌تر و قوی‌تر شدن می باشند.
طبعاً شرکت‌های مختلفی وجود دارند که سرویس‌های DDoS Protection/Mitigation ارائه کرده و هر یک از آن‌ها نیز راهکارها و روش های خاص خود را دارند (گاهی نیز شبیه به هم).

جدای از بحث استفاده از تجهیزات مقابله با DDoS در شبکه‌ها، زمانی که از یک سرویس‌دهنده‌ی بیرونی استفاده می‌شود، بطور خیلی کلی، معمولا دو حالت پیاده‌سازی (با استفاده از BGP و Tunnel) وجود دارد (معروف به Diversion/Reinjection یا Offramping/Onramping):

  • کل ترافیک دائماً از طریق آن سرویس‌دهنده عبور داده شود و اگر حمله‌ای وجود داشته باشد، همانجا مانده و تنها (به اصطلاح) ترافیک پاک به شبکه برسد (Scrubbing).
  • فقط زمانی که شبکه تحت حمله قرار می‌گیرد، طی یکسری عملیات و تغییر routing، ترافیک ورودی به شبکه بجای آن که مستقیم از اینترنت به شبکه وارد شود، مانند مدل قبل به سمت یک سرویس‌دهنده هدایت شده و توسط آن بررسی شده و تنها ترافیک پاک به شبکه می‌رسد. این روش، به نوعی On-demand محسوب می شود و کل عملیات و تغییر روتینگ می تواند به صورت خودکار و یا بصورت دستی توسط یک اپراتور رخ دهد.

شبکه ها - DOTS - DDoS Protection Mitigation

ادامه خواندن “DOTS، روشی جدید در مواجهه با حملات DDoS؟”