" SPDX-License-Identifier: GPL-2.0-or-later .TH PPPOE 8 "5 October 2015" "" "راهنمای PPPoE" .UC 4 .SH "نام (NAME)" pppoe \- کلاینت PPPoE در فضای کاربری .SH "خلاصه دستور (SYNOPSIS)" \fBpppd pty 'pppoe \fR[\fIpppoe_options\fR]\fB' \fR[\fIpppd_options\fR] .P \fBpppoe -A \fR[\fIpppoe_options\fR] .SH "توضیحات (DESCRIPTION)" برنامه \fBpppoe\fR یک کلاینت فضای کاربری (user-space) برای پروتکل PPPoE (پروتکل نقطه-به-نقطه روی اترنت) برای لینوکس و سایر سیستم‌های یونیکس است. \fBpppoe\fR همراه با دیمن PPP یعنی \fBpppd\fR همکاری می‌کند تا یک اتصال PPP را روی بستر اترنت فراهم سازد، همان‌گونه که توسط بسیاری از ارائه‌دهندگان خدمات اینترنت DSL استفاده می‌شود. .SH "گزینه‌ها (OPTIONS)" .TP \fB\-I \fIinterface\fR گزینه \fB\-I\fR رابط اترنت مورد استفاده را تعیین می‌کند. در لینوکس معمولاً \fIeth0\fR یا \fIeth1\fR است. رابط شبکه باید پیش از اجرای \fBpppoe\fR در وضعیت فعال (up) باشد، اما \fIنباید\fR دارای نشانی IP پیکربندی‌شده باشد. .TP \fB\-T \fItimeout\fR گزینه \fB\-T\fR باعث می‌شود در صورت عدم شناسایی ترافیک نشست برای مدت‌زمان \fItimeout\fR ثانیه، \fBpppoe\fR خارج شود. توصیه می‌شود از این گزینه به عنوان یک اقدام ایمنی تکمیلی استفاده کنید، اما در این صورت باید مطمئن شوید که PPP ترافیک کافی تولید می‌کند تا این مهلت در شرایط عادی فعال نشود. بهترین روش برای این کار استفاده از گزینه \fIlcp-echo-interval\fR در \fBpppd\fR است. باید مهلت زمانی PPPoE را حدود چهار برابر بازه اکو LCP تنظیم کنید. .TP \fB\-D \fIfile_name\fR گزینه \fB\-D\fR باعث می‌شود تمامی بسته‌ها در پرونده \fIfile_name\fR ذخیره و تخلیه (dump) شوند. این گزینه صرفاً برای اشکال‌زدایی است؛ حجم زیادی از خروجی تولید می‌کند و کارایی را به شدت کاهش می‌دهد. .TP \fB\-V\fR گزینه \fB\-V\fR باعث چاپ شماره نسخه \fBpppoe\fR و خروج از برنامه می‌شود. .TP \fB\-A\fR گزینه \fB\-A\fR باعث می‌شود \fBpppoe\fR یک بسته PADI ارسال کرده و سپس نام متمرکزکننده‌های دسترسی موجود در هر بسته PADO دریافتی را چاپ کند. از این گزینه همراه با \fBpppd\fR استفاده نکنید؛ گزینه \fB\-A\fR برای استفاده تعاملی جهت دریافت اطلاعات مفید درباره متمرکزکننده دسترسی در نظر گرفته شده است. .TP \fB\-S \fIservice_name\fR نام سرویس مورد نظر را مشخص می‌کند. برنامه \fBpppoe\fR تنها با متمرکزکننده‌های دسترسی که بتوانند سرویس مشخص‌شده را ارائه دهند نشست برقرار خواهد کرد. در بیشتر موارد \fIنباید\fR این گزینه را تعیین کنید. تنها در صورتی از آن بهره ببرید که می‌دانید چندین متمرکزکننده دسترسی وجود دارند یا به سرویس خاصی نیاز است. .TP \fB\-C \fIac_name\fR نام متمرکزکننده دسترسی مورد نظر را مشخص می‌کند. برنامه \fBpppoe\fR تنها با متمرکزکننده دسترسی تعیین‌شده نشست آغاز خواهد کرد. در بیشتر موارد \fIنباید\fR این گزینه را مشخص نمایید. اگر هر دو گزینه \fB\-S\fR و \fB\-C\fR مشخص شوند، برای برقراری نشست باید \fIهر دو\fR تطابق داشته باشند. .TP \fB\-U\fR باعث می‌شود \fBpppoe\fR از برچسب Host-Uniq در بسته‌های اکتشافی خود استفاده کند. این ویژگی به شما امکان می‌دهد چندین دیمن \fBpppoe\fR را بدون تداخل بسته‌های اکتشافی آن‌ها اجرا کنید. در صورتی که قصد دارید چندین دیمن را به‌طور همزمان اجرا کنید، باید این گزینه را به \fIتمام\fR دیمن‌های \fBpppoe\fR بدهید. مقدار مشخص Host-Uniq مورد استفاده، نمایش هگزادسیمال PID فرآیند \fBpppoe\fR است. .TP \fB\-W \fIvalue\fR باعث می‌شود \fBpppoe\fR از برچسب Host-Uniq در بسته‌های اکتشافی استفاده کند و علاوه بر آن، مقدار Host-Uniq را روی \fIvalue\fR تنظیم نماید. با احتیاط استفاده شود. توجه داشته باشید که \fB\-W\fR و \fB\-U\fR با یکدیگر ناسازگارند. .TP \fB\-s\fR باعث می‌شود \fBpppoe\fR از کپسوله‌سازی همگام (synchronous) در PPP استفاده کند. اگر از این گزینه استفاده می‌کنید، \fIباید\fR گزینه \fBsync\fR را با \fBpppd\fR به کار ببرید. توصیه می‌شود در صورت کارکرد مناسب از این گزینه استفاده کنید، زیرا بار پردازشی CPU را در \fBpppoe\fR به میزان چشمگیری کاهش می‌دهد. با این حال ممکن است روی سیستم‌های کند ناپایدار باشد؛ چرا که یک شرایط رقابتی (race condition) میان نوشتن داده توسط pppd و خواندن آن توسط pppoe وجود دارد. به همین دلیل تنظیم پیش‌فرض ناهمگام است. .TP \fB\-m \fIMSS\fR باعث می‌شود \fBpppoe\fR بیشینه اندازه قطعه TCP (یا MSS) را روی مقدار تعیین‌شده مهار (clamp) کند. به دلیل سربار PPPoE، حداکثر اندازه قطعه برای PPPoE کمتر از کپسوله‌سازی معمولی اترنت است. این موضوع می‌تواند برای رایانه‌های موجود در شبکه محلی پشت یک گیت‌وی PPPoE مشکل‌ساز شود. اگر شبکه‌ای پشت گیت‌وی دارید و گیت‌وی از طریق PPPoE به اینترنت متصل می‌شود، اکیداً توصیه می‌شود از گزینه \fB\-m 1412\fR استفاده فرمایید تا از تنظیم دستی MTU روی تک‌تک میزبان‌های شبکه محلی بی‌نیاز شوید. .TP \fB\-p \fIfile\fR باعث می‌شود \fBpppoe\fR شناسه فرآیند (PID) خود را در فایل مشخص‌شده بنویسد. این کار برای یافتن و پایان دادن به فرآیندهای \fBpppoe\fR کاربرد دارد. .TP \fB\-e \fIsess:mac\fR باعث می‌شود \fBpppoe\fR مرحله اکتشاف را نادیده گرفته و مستقیماً وارد مرحله نشست شود. نشست با \fIsess\fR و نشانی MAC همتا با \fImac\fR مشخص می‌گردد. این حالت برای استفاده عادی در نظر گرفته نشده و صرفاً برای \fBpppoe-server\fP(8) طراحی شده است. .TP \fB\-n\fR باعث می‌شود \fBpppoe\fR سوکت اکتشاف را باز نکند. این حالت صرفاً برای \fBpppoe-server\fP(8) طراحی شده است. .TP \fB\-k\fR باعث می‌شود \fBpppoe\fR با ارسال یک فریم PADT به نشست موجود خاتمه دهد و سپس خارج شود. باید گزینه \fB\-e\fR را همراه با این گزینه استفاده کنید تا نشستی که باید خاتمه یابد مشخص گردد. .TP \fB\-d\fR باعث می‌شود \fBpppoe\fR عملیات اکتشاف را انجام داده و پس از چاپ اطلاعات نشست در خروجی استاندارد خارج شود. اطلاعات نشست دقیقاً در قالبی چاپ می‌شود که مورد انتظار گزینه \fB\-e\fR است. مراقب باشید؛ استفاده از این گزینه در یک حلقه می‌تواند نشست‌های فراوانی ایجاد کند. .TP \fB\-f \fIdisc:sess\fR گزینه \fB\-f\fR انواع فریم‌های اترنت را برای فریم‌های اکتشاف و نشست PPPoE تعیین می‌کند. انواع فریم‌ها به عنوان اعداد هگزادسیمال جداشده با دونقطه مشخص می‌شوند. PPPoE استاندارد از انواع 8863:8864 استفاده می‌کند. تنها در صورتی از این گزینه استفاده کنید که کاملاً مطمئنید طرف مقابل از فریم‌های غیراستاندارد استفاده می‌کند. .TP \fB\-h\fR گزینه \fB\-h\fR باعث چاپ اطلاعات نحوه استفاده و خروج می‌شود. .SH "پیش‌زمینه PPPoE (PPPOE BACKGROUND)" پروتکل PPPoE (پروتکل نقطه-به-نقطه روی اترنت) در RFC 2516 شرح داده شده است و امکان حفظ انتزاع نشست را روی شبکه‌های اترنت پل‌شده (bridged) فراهم می‌سازد. پروتکل PPPoE با کپسوله‌سازی فریم‌های PPP درون فریم‌های اترنت کار می‌کند. این پروتکل دارای دو مرحله متمایز است: مرحله \fIاکتشاف (discovery)\fR و مرحله \fIنشست (session)\fR. در مرحله اکتشاف، میزبان یک فریم ویژه PADI (آغازگر اکتشاف فعال PPPoE) را برای یافتن \fIمتمرکزکننده‌های دسترسی (access concentrators)\fR ارسال می‌کند. متمرکزکننده‌های دسترسی با بسته‌های PADO (پیشنهاد اکتشاف فعال PPPoE) پاسخ می‌دهند و حضور و خدمات خود را اعلام می‌کنند. میزبان یکی از آن‌ها را انتخاب کرده و یک بسته PADR (درخواست نشست) می‌فرستد. متمرکزکننده دسترسی با یک بسته PADS (تایید نشست) پاسخ می‌دهد و سپس پروتکل وارد مرحله نشست می‌شود. در مرحله نشست، میزبان و متمرکزکننده دسترسی فریم‌های PPP تعبیه‌شده در فریم‌های اترنت را مبادله می‌کنند. مقدار MTU معمولی اترنت 1500 بایت است، اما سربار PPPoE به علاوه دو بایت برای فریم PPP بدین معناست که MTU رابط PPP حداکثر 1492 بایت خواهد بود. اگر از لینوکس به عنوان فایروال استفاده می‌کنید، این موضوع می‌تواند مشکلاتی ایجاد کند. برای ایمنی توصیه می‌شود MTU دستگاه‌های پشت فایروال روی 1412 تنظیم شود. به‌طور معمول PPP از پروتکل کنترل پیوند (LCP) برای بستن پیوند استفاده می‌کند، اما مشخصات PPPoE اجازه می‌دهد پیوند با بسته ویژه PADT بسته شود. این کلاینت چنین بسته‌ای را شناسایی کرده و به‌درستی خارج می‌شود. .SH "اهداف طراحی (DESIGN GOALS)" اهداف طراحی برای این کلاینت PPPoE به ترتیب اولویت عبارت بودند از: .TP .B o باید کار کند. .TP .B o باید برنامه‌ای در فضای کاربری باشد و نه یک وصله (patch) برای هسته. .TP .B o کد باید به آسانی خوانده و نگهداری شود. .TP .B o باید کاملاً با استاندارد پیشنهادی RFC 2516 سازگار باشد. .TP .B o هرگز نباید به مدت نامحدود معلق بماند \-- اگر اتصال قطع شد باید آن را تشخیص داده و خارج شود تا اسکریپت راه‌انداز بتواند اتصال را دوباره برقرار کند. .TP .B o باید از کارایی مناسبی برخوردار باشد. .P برای اطلاعات بیشتر و تماس به صفحه وب من در https://dianne.skoll.ca/projects/rp-pppoe مراجعه فرمایید. .SH "نکات (NOTES)" برای دستیابی به بهترین نتیجه، باید به \fBpppd\fR مقدار mtu برابر با 1492 بدهید. همچنین اگر \fBpppoe\fR روی یک سیستم فایروال اجرا می‌شود، تمام رایانه‌های پشت فایروال باید دارای MTU برابر با 1412 باشند. اگر با مشکلی مواجه شدید، لاگ‌های سیستمی را بررسی کنید. \fBpppoe\fR رویدادهای مهم را در syslog ثبت می‌کند. ممکن است برای عیب‌یابی دقیق لازم باشد ثبت پیام‌های سطح \fIdebug\fR را فعال نمایید. .SH "نویسندگان (AUTHORS)" برنامه \fBpppoe\fR توسط Dianne Skoll با الهام فراوان از نسخه اولیه Luke Stras نوشته شده است. صفحه خانگی \fBpppoe\fR در https://dianne.skoll.ca/projects/rp-pppoe قرار دارد. .SH "همچنین ببینید (SEE ALSO)" pppd(8), pppoe-sniff(8), pppoe-server(8), pppoe-relay(8)