شبکه و امنیت

پروتکل BGP چیست؟

پروتکل BGP (سرنام عبارت Border Gateway Protocol) سرویس پستی اینترنت است. وقتی شخصی نامه‌ای را در Mailbox ارسال می‌کند، خدمات پستی آن نامه را پردازش می‌کند و مسیری سریع و کارآمد را برای تحویل آن نامه به گیرنده انتخاب می‌کند.

به‌طور مشابه، هنگامی که شخصی داده‌ها را از طریق اینترنت ارسال می‌کند، BGP مسئول بررسی تمام مسیرهای موجود است که داده‌ها می‌توانند طی کنند و بهترین مسیر را انتخاب کند، که معمولا به معنای پرش بین سیستم‌های مستقل است.

BGP پروتکلی است که اینترنت را با فعال کردن مسیریابی داده‌ها به کار می‌گیرد. هنگامی که کاربری در سنگاپور یک وب‌سایت را با سرورهای اصلی در آرژانتین بارگیری می‌کند، BGP پروتکلی است که این ارتباط را به سرعت و کارآمدی امکان‌پذیر می‌کند.

سیستم خودمختار (autonomous) چیست؟

اینترنت شبکه‌ای از شبکه هاست و به صدها هزار شبکه کوچک‌تر که به عنوان سیستم‌های مستقل (AS) شناخته می‌شوند، تقسیم می‌شود. هر یک از این شبکه ها اساسا مجموعه بزرگی از روترها هستند که توسط یک سازمان اجرا می‌شوند.

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

نمودار بالا یک نسخه ساده شده از BGP را نشان می‌دهد. در این نسخه تنها شش AS در اینترنت وجود دارد. اگر AS1 نیاز به مسیریابی یک بسته به AS3 داشته باشد، دو گزینه متفاوت دارد:

پرش به AS2 و سپس به AS3

یا به AS6، سپس به AS5، AS4 و در نهایت به AS3 بروید.

در این مدل ساده شده، تصمیم‌گیری ساده به نظر می رسد. مسیر AS2 به پرش کمتری نسبت به مسیر AS6 نیاز دارد و بنابراین سریع‌ترین و کارآمدترین مسیر است. حال تصور کنید که صدها هزار AS وجود دارد و تعداد پرش تنها بخشی از یک الگوریتم انتخاب مسیر پیچیده است. این واقعیت مسیریابی BGP در اینترنت است.

ساختار اینترنت دائما در حال تغییر است و سیستم‌های جدید ظاهر می‌شوند و سیستم‌های موجود در دسترس نیستند. به همین دلیل، هر AS باید با اطلاعات مربوط به مسیرهای جدید و همچنین مسیرهای منسوخ به روز نگه داشته شود. این کار از طریق نشست‌های همتا انجام می‌شود که در آن هر AS به ASهای مجاور با اتصال TCP/IP به‌منظور اشتراک‌گذاری اطلاعات مسیریابی متصل می‌شود. با استفاده از این اطلاعات، هر AS مجهز است تا به درستی انتقال داده‌های خروجی را که از داخل می‌آیند، هدایت کند.

اینجا جایی است که بخشی از قیاس ما از هم می‌پاشد. برخلاف شعب اداره پست، سیستم‌های مستقل همه بخشی از یک سازمان نیستند. در واقع، آن‌ها اغلب به مشاغل رقیب تعلق دارند. به همین دلیل، مسیرهای BGP گاهی اوقات ملاحظات تجاری را در نظر می‌گیرند. ASها اغلب برای حمل ترافیک در سراسر شبکه‌هایشان از یکدیگر هزینه می‌گیرند و قیمت دسترسی را می‌توان در نظر گرفت که در نهایت کدام مسیر انتخاب می‌شود.

چه کسی سیستم‌های خودمختار BGP را اجرا می‌کند؟

AS ها معمولا متعلق به ارائه‌دهندگان خدمات اینترنتی (ISP) یا سایر سازمان‌های بزرگ مانند شرکت‌های فناوری، دانشگاه‌ها، سازمان‌های دولتی و موسسات علمی هستند. هر AS که مایل به تبادل اطلاعات مسیریابی است باید یک شماره سیستم مستقل ثبت شده (ASN) داشته باشد. Internet Assigned Numbers Authority (IANA) ASN ها را به ثبت‌های اینترنت منطقه‌ای (RIR) اختصاص می‌دهد که سپس آن‌ها را به ISP ها و شبکه‌ها اختصاص می‌دهد. ASN ها اعداد ۱۶ بیتی بین یک و ۶۵۵۳۴ و اعداد ۳۲ بیتی بین ۱۳۱۰۷۲ و ۴۲۹۴۹۶۷۲۹۴ هستند. از سال ۲۰۱۸، تقریبا ۶۴۰۰۰ ASN در سراسر جهان استفاده می‌شود. این ASN ها فقط برای BGP خارجی مورد نیاز هستند.

تفاوت بین BGP خارجی و BGP داخلی در چیست؟

مسیرها رد و بدل می‌شوند و ترافیک با استفاده از BGP خارجی (eBGP) از طریق اینترنت منتقل می‌شود. سیستم‌های خودمختار همچنین می‌توانند از یک نسخه داخلی BGP برای مسیریابی از طریق شبکه‌های داخلی خود استفاده کنند که به BGP داخلی (iBGP) معروف است. لازم به ذکر است که استفاده از BGP داخلی الزامی برای استفاده از BGP خارجی نیست. سیستم‌های مستقل می‌توانند از بین تعدادی پروتکل داخلی برای اتصال روترها در شبکه داخلی خود انتخاب کنند.

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

معایب BGP و نحوه رفع آن‌ها

در سال ۲۰۰۴، یک ISP ترکیه به نام TTNet به طور تصادفی مسیرهای BGP نادرست را به همسایگان خود انتشار داد. این مسیرها ادعا می کردند که خود TTNet بهترین مقصد برای تمام ترافیک اینترنت است. از آنجایی که این مسیرها بیشتر به سیستم‌های خودمختارتر گسترش می‌یابند، یک اختلال عظیم رخ می‌دهد و یک بحران یک روزه ایجاد می‌کند که در آن بسیاری از مردم در سراسر جهان قادر به دسترسی به برخی یا تمام اینترنت نیستند.

به‌طور مشابه، در سال ۲۰۰۸، یک ISP پاکستانی تلاش کرد از مسیر BGP برای مسدود کردن کاربران پاکستانی از بازدید یوتیوب استفاده کند. سپس ISP به طور تصادفی این مسیرها را با ASهای همسایه خود انتشار داد و مسیر به سرعت در سراسر شبکه BGP اینترنت پخش شد. این مسیر، کاربرانی را که سعی می‌کردند به یوتیوب دسترسی داشته باشند، به بن‌بست می‌فرستاد که منجر به غیرقابل‌دسترس شدن یوتیوب برای چندین ساعت شد.

این‌ها نمونه‌هایی از عملی به نام ربودن BGP هستند که همیشه تصادفی اتفاق نمی‌افتد. در آوریل ۲۰۱۸، مهاجمان به عمد مسیرهای BGP بدی را برای هدایت ترافیکی که برای سرویس DNS آمازون در نظر گرفته شده بود ایجاد کردند. مهاجمان توانستند با هدایت ترافیک به سمت خود، بیش از ۱۰۰۰۰۰ دلار ارز دیجیتال را به سرقت ببرند.

حوادثی مانند این ممکن است رخ دهند زیرا عملکرد اشتراک مسیر BGP به اعتماد متکی است و سیستم‌های مستقل به طور ضمنی به مسیرهایی که با آن‌ها مشترک است اعتماد می‌کنند. وقتی همتایان اطلاعات مسیر نادرست را اعلام می‌کنند (عمدا یا غیرعمدی)، ترافیک به جایی می‌رود که قرار نیست و احتمالا نتایج مخربی به همراه دارد.

خوشبختانه، پیشرفت‌هایی در تامین امنیت BGP حاصل شده است. مهم‌تر از همه، یک چارچوب امنیتی برای مسیریابی به نام زیرساخت کلید عمومی منابع (RPKI) در سال ۲۰۰۸ معرفی شد. RPKI از سوابق رمزنگاری شده به نام مجوز مبدأ مسیر (ROA) استفاده می‌کند تا تایید کند کدام اپراتور شبکه مجاز است آدرس‌های IP سازمان را با استفاده از BGP اعلام کند. این تضمین می‌کند که فقط اشخاص مجاز پیش‌شماره‌های یک سازمان را اعلام کنند.

اما وجود RPKI به تنهایی کافی نیست. اگر شبکه‌های بزرگ از RPKI استفاده نکنند، می‌توانند حملات ربایش در مقیاس بزرگ را گسترش دهند. در حال حاضر، بیش از ۵۰ درصد از ارائه‌دهندگان برتر اینترنت تا حدی از RPKI پشتیبانی می کنند، اما اکثریت بیشتری برای ایمن کردن کامل BGP مورد نیاز است.

منبع: cloudflare.com

فرشید نوتاش حقیقت

همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرم‌افزارهای آزاد/ متن‌باز و سیستم‌عامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

همچنین ببینید
بستن
دکمه بازگشت به بالا