TGViewer
شبکه و امنیت،تکنولوژی،هوش مصنوعی شبکه و امنیت،تکنولوژی،هوش مصنوعی @netwo0rk · 53.2K subscribers
Post #14281 704
🌐 BGP چطور اینترنت رو به هم وصل می‌کنه؟

اینترنت در واقع یه شبکه بزرگ و یکپارچه نیست؛ از هزاران شبکه مختلف تشکیل شده که هر کدوم متعلق به یه ISP، اپراتور، دیتاسنتر، شرکت بزرگ یا سازمانه. به هر کدوم از این شبکه‌های مستقل می‌گیم AS یا Autonomous System. مثلاً یه ISP یه AS داره، یه اپراتور موبایل یه AS دیگه و یه شرکت بزرگ هم ممکنه AS خودش رو داشته باشه.

حالا مشکل اینجاست که این شبکه‌ها باید بدونن برای رسیدن به شبکه‌های دیگه از چه مسیری برن. مثلاً فرض کن یه ISP توی ایران می‌خواد به یه سرور توی دیتاسنتر آلمان وصل بشه. ISP باید بدونه Prefix مربوط به اون سرور از کدوم شبکه قابل دسترسیه و برای رسیدن به اون باید بسته رو به کدوم شبکه بعدی تحویل بده. اینجاست که BGP وارد میشه.


در اصل زبان ارتباطی بین شبکه‌های مستقله. شبکه‌ها با BGP به هم اعلام می‌کنن که «من به این Prefixها دسترسی دارم». مثلاً یه شبکه اعلام می‌کنه که Prefix زیر متعلق به منه و می‌تونم ترافیک مربوط بهش رو دریافت کنم:
203.0.113.0/24
شبکه‌های اطراف این Route رو یاد می‌گیرن و ممکنه اون رو به شبکه‌های دیگه هم اعلام کنن. این اطلاعات کم‌کم بین ASهای مختلف پخش میشه و شبکه‌ها متوجه میشن برای رسیدن به Prefixهای مختلف چه مسیرهایی وجود داره.
مثلاً فرض کن سه شبکه داریم:
AS100 → AS200 → AS300

AS300
صاحب یه Prefix خاصه. AS300 اون Prefix رو به AS200 اعلام می‌کنه، AS200 هم متوجه میشه برای رسیدن به اون Prefix باید از AS300 استفاده کنه. بعد همین Route ممکنه به AS100 هم برسه. در نتیجه AS100 می‌فهمه برای رسیدن به اون Prefix می‌تونه از مسیر AS100 → AS200 → AS300 استفاده کنه.
حالا ممکنه فقط یه مسیر وجود نداشته باشه. مثلاً AS100 برای رسیدن به AS300 دو مسیر مختلف داشته باشه:
AS100 → AS200 → AS300
یا:
AS100 → AS400 → AS500 → AS300

اینجا BGP قرار نیست صرفاً بگه «هر کدوم کوتاه‌تره همونو انتخاب کن». BGP بر اساس یه سری Attribute و Policy تصمیم می‌گیره کدوم Route ترجیح داده بشه. چیزهایی مثل LOCAL_PREF، AS_PATH، MED و نوع Route می‌تونن روی انتخاب مسیر تأثیر بذارن.

یکی از قسمت‌های مهم BGP هم AS_PATH هست. هر Route وقتی از یک AS عبور می‌کنه، شماره اون AS به مسیر اضافه میشه. مثلاً:
AS100 → AS200 → AS300

حالا اگر AS100 یه Route رو دوباره دریافت کنه و داخل AS_PATH ببینه که خودش یعنی AS100 قبلاً توی مسیر وجود داشته، می‌فهمه این مسیر می‌تونه باعث Loop بشه و اون Route رو قبول نمی‌کنه. این یکی از مکانیزم‌های مهم BGP برای جلوگیری از Loop بین ASهاست.

یه نکته خیلی مهم هم اینه که BGP فقط برای پیدا کردن مسیر نیست؛ Policy توی BGP خیلی مهمه. یعنی صاحب شبکه می‌تونه تعیین کنه چه Routeهایی رو به چه شبکه‌ای Advertise کنه و برای انتخاب مسیرهای مختلف چه ترجیحی داشته باشه.

مثلاً یه ISP ممکنه دو تا Provider اینترنت داشته باشه. می‌تونه با Policyهای BGP کاری کنه که ترافیک بعضی Prefixها از Provider اول عبور کنه و ترافیک بعضی مقصدهای دیگه از Provider دوم. پس BGP فقط یه نقشه ساده از اینترنت نیست؛ در واقع شبکه‌ها باهاش روی نحوه تبادل و انتخاب مسیر هم سیاست‌گذاری می‌کنن.

حالا وقتی تو از خونه می‌خوای به یه سایت خارجی وصل بشی، بسته‌ات ممکنه از چندین شبکه مختلف عبور کنه. هر شبکه در مسیر، بر اساس Routing Table خودش تصمیم می‌گیره بسته رو به کدوم Next-Hop بفرسته. BGP هم کمک کرده این شبکه‌ها اطلاعات لازم درباره Prefixهای شبکه‌های دیگه رو داشته باشن.
پس خیلی خلاصه اگر بخوایم قضیه رو جمع کنیم، DNS معمولاً اسم دامنه رو به IP تبدیل می‌کنه، BGP به شبکه‌های مستقل کمک می‌کنه بفهمن Prefixهای مختلف از چه مسیرهایی قابل دسترسی هستن، و IP Routing داخل هر شبکه تصمیم می‌گیره بسته رو به کدوم Next-Hop بفرسته.
مثلاً وقتی می‌زنی:
example.com
اول باید IP مقصد مشخص بشه. بعد بسته از شبکه خودت وارد مسیر اینترنت میشه و روترها بر اساس Routeهایی که دارن تصمیم می‌گیرن بسته رو به کجا بفرستن. این Routeها در مقیاس بین شبکه‌های مستقل، بخش مهمی از اطلاعاتشون رو از BGP می‌گیرن.
به خاطر همین هم BGP یکی از پایه‌های اصلی اینترنت محسوب میشه. چون اینترنت از هزاران شبکه مستقل تشکیل شده و این شبکه‌ها باید somehow بتونن مسیرهای خودشون رو به هم اعلام کنن و درباره Reachability شبکه‌های مختلف اطلاعات داشته باشن.
یه مثال خیلی ساده بخوایم بزنیم: اینترنت رو مثل یه سیستم بزرگ از شهرها و جاده‌ها در نظر بگیر. هر AS مثل یه شهر یا مجموعه جاده‌ای مستقله، Prefixها مثل محدوده‌های مقصد هستن و BGP مثل سیستمیه که به شبکه‌ها میگه برای رسیدن به مقصدهای مختلف چه مسیرهایی وجود داره و کدوم مسیر طبق Policyهای شبکه ترجیح داده میشه.

@Netwo0rk
  • 🔥 2
  • ❤ 1
More from @netwo0rk
  1. Oct 17, 2026اگر فردا ابزارها، چک‌لیست‌ها، Write-upها و جواب‌های آماده رو ازت بگیرن، چی از مهارتت باقی…
  2. Oct 17, 2026Post #14279
  3. Oct 17, 2026تسنیم: باید از کشورها و شرکت‌های دنیا برای عبور کابل های اینترنت از تنگه هرمز عوارض بگیریم…
  4. Oct 16, 2026دستورات تعمیر ویندوز ..! @Netwo0rk
  5. Oct 15, 2026نقشه راه یادگیری لینوکس؛ از صفر تا مدیریت سرور اگه می‌خوای لینوکس رو اصولی یاد بگیری، حفظ…
  6. Oct 15, 2026یک روش تجربی برای بررسی مشکل در ارتباطات فیبر نکات : این روش برای ارتباطات مالتی مود بهتر…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →