TAP بدون پل: یک قطعه مجازی با پیوند بالاسری مسیریابیشده
دستگاه TAP یک قطعه اترنت است، نه یک پل. به آن نشانی بدهید، میان آن و پیشوند دفتر مسیریابی کنید، و دامنه پخش را آگاهانه نگه دارید.
TAP قابهای اترنت را به سیستمعامل تحویل میدهد، که توانایی بیشتری از آنچه بیشتر طرحهای دسترسی از راه دور نیاز دارند و کمتر از یک پل است. هسته میتواند به آن نشانی بدهد، از میانش مسیریابی کند و آن را با دیوار آتش محافظت کند، بیآنکه به هیچ قطعه فیزیکی متصلش کند. ارزش دارد این چیدمان را نخست بفهمیم: یک قطعه اترنت مجازی جدا، که سرور آن بهعنوان مسیریاب بهسوی یک شبکه محلی واقعی عمل میکند. درون تونل رفتار لایه دوم و بیرون آن ارسال عادی IP را میدهد، که دو وعده متفاوتاند. بقیه ماجرا ساخت، مسیر، راه بازگشت و بازگردانی است.
قطعه جدا را بسازید
در لینوکس رابط سه فرمان میگیرد: بسازیدش، بالا بیاوریدش، و درون قطعهای که در نظر دارید به آن نشانی بدهید. پیشوندی برگزینید که با شبکه محلی دفتر تصادم نکند و آن را بنویسید، چون تصادم تا زمانی که میزبانی که نباید وجود داشته باشد پاسخ ندهد نامرئی است.
ip tuntap add dev tap0 mode tap
ip link set tap0 up
ip addr add 10.77.0.1/24 dev tap0
هیچ چیز اینجا به پل نیاز ندارد، و هیچ چیز افزودن یکی را در آینده مانع نمیشود. مستندات هسته درباره TUN/TAP خود رابط را توصیف میکند؛ عضویت در پل و سیاست ارسال تصمیمهای جداگانهای هستند که بعداً میگیرید.
از مرز مسیریابی کنید
ارسال را فعال کنید، دو پیشوند را در زنجیره ارسال مجاز کنید، و مسیری بهسوی پیشوند دفتر با مسیریاب شبکه محلی بهعنوان گام بعدی بیفزایید. سپس سمت VPN ترافیک رو به دفتر را بهعنوان دروازه خود به سرور میفرستد، و سرور آن بستهها را بهعنوان خودش ارسال میکند، نه بهعنوان پل. رابط TAP با ارسال غیرفعال قطعهای است که بهصورت محلی پاسخ میدهد و به چیزی فراتر از آن نمیرسد، که همان حالت نیمهتمام معمول است. بعداً شمارندههای رابط را در دو طرف بررسی کنید، چون شمارنده دریافت صعودی با شمارنده ارسال ثابت در سمت شبکه محلی یعنی افت در زنجیره ارسال، نه مسیر بد.
مسیر و قاعده دیوار آتش را بهعنوان یک تغییر بنویسید، چون هرکدام بهتنهایی حالتی میسازد که از سمت مشتری مانند شکست مسیریابی به نظر میرسد.
راه بازگشت را تعیین کنید
یا مسیریاب شبکه محلی مسیری بازگشتی به پیشوند VPN یاد میگیرد، یا سرور نشانیهای مبدأ را در راه خروج ترجمه میکند. ترجمه راه بازگشت را بیاهمیت میکند و هویت مبدأ را نابود میسازد، پس گزارشهای مقصد نشانی سرور را برای هر مشتری پشت آن نشان خواهند داد. پیشوند مسیریابیشده هویت را حفظ میکند و تغییری در تجهیزاتی میطلبد که شاید آن را مدیریت نکنید.
آگاهانه انتخاب کنید، نه بر پایه اینکه کدام سریعتر تایپ میشود. یک پیشوند مسیریابیشده معمولاً پاکتر از ترجمه است، و ترجمه معمولاً بهتر از آموختن پیشوندی تازه به یک مسیریاب مدیریتنشده برای یک آزمایشگاه است.
دامنه پخش را آگاهانه نگه دارید
درون قطعه مجازی، DHCP، کشف و اعلام همسایه مانند یک سوئیچ رفتار میکنند، چون یک پیوند است. آن سوی مرز مسیریابیشده چنین نمیکنند، پس DHCP دفتر و کشف سرویس به طراحی صریح نیاز دارند، نه به این گمان که TAP آنها را در بر میگیرد. نوع رابط برای سرویسهایی که جای دیگری زندگی میکنند بازپخشکننده نیست.
این دلیل صادقانه انتخاب TAP است: چیزی در قطعه مجازی به رفتار محلی نسبت به پیوند نیاز دارد. اگر هیچ چیز نیاز نداشته باشد، دستگاه TUN با پیشوند مسیریابیشده کوچکتر است، و هنگام خرابی چیز کمتری برای توضیح دادن هست.
بررسی کنید، سپس بازگردانی را بنویسید
از یک مشتری VPN، به مسیریاب شبکه محلی پینگ کنید، به یک میزبان پینگ کنید، و یک سرویس مهم را روی TCP باز کنید. سپس شمارندهها و زنجیره ارسال را بررسی کنید، چون افت سیاستی از دور دقیقاً مانند مسیر گمشده به نظر میرسد. بازگردانی وارونه ساخت است و پیش از آغاز باید در سابقه تغییر باشد: مسیر را بردارید، نشانی را بردارید، رابط را حذف کنید.
اگر نیاز واقعاً یک قطعه اترنت است که دو سایت را در بر میگیرد، پل پاسخ صادقانه است و طرحی متفاوت با شعاع تأثیر متفاوت. اگر نیاز دسترسیپذیری است، قطعه جداشده با پیوند بالاسری مسیریابیشده کار را با توضیح کمتر در آینده انجام میدهد.