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

چرا ماسک روی پیوند تونلی اشتباه به نظر می‌رسد

روی واسط Ethernet، یک نشانی و یک ماسک دو چیز را بیان می‌کنند: این میزبان مالک نشانی است و هر چیزی داخل پیشوند همسایه مستقیم است. هسته از این دو واقعیت یک مسیر روی پیوند استخراج می‌کند و سپس نشانی‌های پیوند را برای همسایه‌هایی که گمان می‌کند حاضرند حل می‌کند. واسط نقطه‌به‌نقطه مالکیت را نگه می‌دارد و همسایه‌ها را رها می‌کند، پس نشانی دوم در خط کارخواه انتهای دور است و نه میزبان دیگری روی یک بخش مشترک. هیچ نشانی‌گذاری سخت‌افزاری، هیچ ترافیک تفکیک و هیچ دامنه پخشی برای پیوستن وجود ندارد، و همین است که واسط مانند لوله‌ای با دقیقاً یک مقصد رفتار می‌کند.

همین نیز دلیل آن است که مسیر تک‌میزبانی کنار یک ماسک گسترده اینجا طبیعی است و نه نشانه بیماری. دسترسی‌پذیری روی این پیوند یعنی یک نشانی، و هسته دقیقاً همان را می‌نویسد. دو نشانی را با هم بخوانید پیش از آنکه بگویید پیکربندی اشتباه است، چون هر یک به‌تنهایی مانند یک خطا به نظر می‌رسد.

دو توپولوژی، دو شکل نشانی

توپولوژی نقطه‌به‌نقطه قدیمی‌تر به هر کارخواه یک بلوک کوچک می‌دهد و از دو نشانی میانی استفاده می‌کند، پس ماسک شبیه تکه‌ای از شبکه است و نه یک استخر. توپولوژی زیرشبکه یک نشانی از استخر با ماسک استخر می‌دهد و نشانی تونل کارساز را همتا می‌نامد. هر دو پیوند معتبری می‌سازند و تنها در این تفاوت دارند که کدام نشانی‌ها در نمایه می‌آیند و کدام ماسک را کاربر احتمالاً زیر سؤال می‌برد.

TopologyClient address shapePeerRoute to expect
Point-to-point block per clientTwo neighbouring addresses inside a small blockThe far address of that blockA single host route on the tunnel device
Shared poolOne address carrying the pool maskThe server's tunnel addressA single host route on the tunnel device

هر ردیفی که با کارخواه شما می‌خواند، نخست همتا را بخوانید، چون انتهای دور را نام می‌برد و بنابراین ماسک را توضیح می‌دهد. نمایه‌ای که میان کارسازهایی با توپولوژی‌های متفاوت کپی شود، شکل اشتباهی برای خانه جدیدش نشان می‌دهد، و آسان است که این ناسازگاری را خطای کارساز بپندارند.

وقتی استخر و شبکه دفتر همان بیت‌ها را ادعا می‌کنند

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

پیشوندهایی که فقط شبیه هم به نظر می‌رسند حالت دیگری‌اند، و مقایسه اکتت‌ها با چشم مقایسه پیشوند نیست. هر دو را بنویسید و بیت‌های ماسک‌شده را بشمارید: 192.168.4.0/24 در برابر 192.168.6.0/24 تا بیت 22 هم‌خوان‌اند و در بیت 23 واگرا می‌شوند، چون اکتت سوم چنین خوانده می‌شود: 00000100 در برابر 00000110، پس آن دو شبکه واقعاً جدا هستند. 10.8.0.0/24 را کنار یک 10.8.0.0/24 دیگر بگذارید و همه 24 بیت ماسک‌شده هم‌خوان می‌شوند، یعنی یک مسیر نمی‌تواند هر دو جا را بیان کند. طول ماسک تعیین می‌کند مقایسه کجا می‌ایستد، و شبکه‌ای که دوم نصب شده همان است که می‌بازد.

آنچه یک پیوند مسیریابی‌شده نمی‌تواند برساند

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

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

خواندن واسط پیش از ویرایش نمایه

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

ip -4 addr show dev tun0
ip route show dev tun0
ip route get 10.8.0.1

اگر آن سه هم‌خوان باشند، نمایه همان کاری را می‌کند که برایش پیکربندی شده و مشکل باقی‌مانده جای دیگری است. توپولوژی را تنها به دلیلی تغییر دهید که یک توانایی غایب را نام می‌برد، چون ماسک ناآشنا چنین دلیلی نیست.

مقالات مرتبط