connman.conf(5) File Formats Manual connman.conf(5)

main.conf - فایل پیکربندی ConnMan

/etc/connman/main.conf

main.conf یک فایل پیکربندی برای ConnMan است. این فایل پیکربندی اختیاری است اما می‌تواند برای تنظیم جنبه‌های مختلف رفتار ConnMan استفاده شود. مکان این فایل را می‌توان با استفاده از آرگومان --config= برای connman(8) تغییر داد.

فایل پیکربندی از بخش‌ها (گروه‌ها)یی متشکل از جفت‌های کلید-مقدار تشکیل شده است. خطوطی که با '#' شروع می‌شوند و خطوط خالی به عنوان یادداشت (کامنت) در نظر گرفته می‌شوند. بخش‌ها با یک خط عنوان که شامل نام بخش درون '[' و ']' است آغاز می‌شوند و به صورت ضمنی با شروع بخش بعدی یا پایان فایل خاتمه می‌یابند. هر جفت کلید-مقدار باید درون یک بخش قرار گیرد.

توضیحات بخش‌ها و کلیدهای موجود در ادامه آمده است:

این بخش تنها بخش اجباری در فایل پیکربندی است.

تنظیم مهلت زمانی (timeout) درخواست ورودی. مقدار پیش‌فرض ۱۲۰ ثانیه است. درخواست برای ورودی‌هایی مانند عبارت عبور (passphrase) پس از گذشت مدت زمان مشخصی منقضی می‌شود. در صورت تفاوت در طراحی رابط‌های کاربری، از این تنظیم برای افزایش مقدار استفاده کنید.
تنظیم مهلت زمانی اجرای مرورگر. مقدار پیش‌فرض ۳۰۰ ثانیه است. درخواست برای باز کردن مرورگر جهت صفحات پورتال (portal pages) پس از مدت زمان مشخصی منقضی خواهد شد. در صورت تفاوت در طراحی رابط‌های کاربری، از این تنظیم برای افزایش مقدار استفاده کنید.
فعال‌سازی اسکن در پس‌زمینه. مقدار پیش‌فرض true است. اگر وای‌فای قطع باشد، اسکن پس‌زمینه از یک سازوکار پس‌نشینی (backoff) ساده از ۳ ثانیه تا ۵ دقیقه پیروی می‌کند. سپس روی ۵ دقیقه باقی می‌ماند مگر اینکه کاربر مشخصاً از طریق یک فراخوانی D-Bus درخواست اسکن کند. در این صورت، سازوکار مجدداً از ۳ ثانیه شروع می‌شود. این قابلیت همچنین اسکن پس‌زمینه را در هنگام اتصال فعال می‌کند که برای رومینگ در وای‌فای مورد نیاز است. هنگامی که BackgroundScanning روی false باشد، ConnMan صرف نظر از اینکه وای‌فای متصل باشد یا خیر هیچ اسکنی انجام نخواهد داد، مگر اینکه توسط کاربر از طریق یک فراخوانی D-Bus درخواست شود.
فرض بر این باشد که دروازه‌های سرویس (gateways) به عنوان سرور زمان (timeservers) نیز عمل می‌کنند. مقدار پیش‌فرض false است.
فهرستی از سرورهای زمان رزرو که با "," جدا شده‌اند. این سرورهای زمان برای همگام‌سازی NTP در زمانی که هیچ سرور زمانی توسط کاربر یا سرویس تنظیم نشده باشد، و هنگامی که UseGatewaysAsTimeservers = false باشد استفاده می‌شوند. این موارد می‌توانند ترکیبی از نام‌های دامنه کاملاً واجد شرایط (FQDN)، آدرس‌های IPv4 و IPv6 باشند.
فهرستی از سرورهای نام (nameservers) رزرو که با "," جدا شده‌اند و به فهرست سرورهای نام ارائه‌شده توسط سرویس اضافه می‌شوند. ورودی‌های سرور نام باید در قالب عددی باشند؛ نام‌های میزبان نادیده گرفته می‌شوند.
فهرستی از فناوری‌هایی که به طور پیش‌فرض قابلیت اتصال خودکار دارند و با کاما "," جدا شده‌اند. مقدار پیش‌فرض برای این ورودی در صورت خالی بودن ethernet,wifi,cellular است. سرویس‌هایی که به طور خودکار متصل می‌شوند باید قبلاً تنظیم و در فضای ذخیره‌سازی ذخیره شده باشند.
فهرستی از فناوری‌هایی که به طور پیش‌فرض فعال یا روشن هستند و با کاما "," جدا شده‌اند. مقدار پیش‌فرض برای این ورودی در صورت خالی بودن ethernet است.
فهرستی از فناوری‌هایی که به طور پیش‌فرض به عنوان برگزیده علامت‌گذاری شده‌اند و با کاما "," جدا شده‌اند. مقدار پیش‌فرض برای این ورودی در صورت خالی بودن ethernet است. اتصال به سرویس‌های این فناوری حتی در صورت عدم تنظیم و ذخیره نشدن در فضای ذخیره‌سازی برقرار می‌شود.
فهرستی از فناوری‌هایی که صرف نظر از تنظیم PreferredTechnologies همیشه متصل هستند (AutoConnect = true). مقدار پیش‌فرض خالی است و این قابلیت غیرفعال است مگر اینکه صریحاً در فایل پیکربندی فعال شود.
فهرستی از فناوری‌های ترجیح‌داده‌شده از بیشترین اولویت به کمترین اولویت که با کاما "," جدا شده‌اند. سرویس‌های نوع فناوری فهرست‌شده به ترتیبی که مشخص شده یکی‌یکی بررسی می‌شوند تا زمانی که یکی از آن‌ها متصل شود یا تمام آن‌ها امتحان شوند. سرویسی از نوع فناوری ترجیحی در وضعیت 'ready' در مقایسه با نوع ترجیحی دیگری که در انتهای فهرست با وضعیت 'ready' قرار دارد یا یک نوع غیرترجیحی، مسیر پیش‌فرض (default route) را دریافت خواهد کرد؛ سرویسی از نوع فناوری ترجیحی در وضعیت 'online' در مقایسه با یک نوع غیرترجیحی یا نوع ترجیحی پایین‌تر در فهرست، مسیر پیش‌فرض را دریافت خواهد کرد.
فهرستی از رابط‌های شبکه در لیست سیاه که با "," جدا شده‌اند. رابط‌های یافت‌شده با این فهرست مقایسه می‌شوند و اگر نویسه‌های ابتدایی آن‌ها با هر یک از ورودی‌های فهرست مطابقت داشته باشد، توسط connman مدیریت نخواهند شد. مقدار پیش‌فرض vmnet,vboxnet,virbr,ifb,ve-,vb-,ham,veth است.
اجازه دادن به connman برای تغییر نام میزبان (hostname) سیستم. این اتفاق برای مثال در صورتی رخ می‌دهد که گزینه DHCP hostname دریافت شود. مقدار پیش‌فرض true است.
اجازه دادن به connman برای تغییر نام دامنه (domainname) سیستم. این اتفاق برای مثال در صورتی رخ می‌دهد که گزینه DHCP domainname دریافت شود. مقدار پیش‌فرض true است.
تنها یک فناوری متصل را در هر زمان نگه می‌دارد. هنگامی که یک سرویس جدید توسط کاربر متصل می‌شود یا سرویس بهتری بر اساس PreferredTechnologies یافت می‌شود، سرویس جدید متصل نگه داشته شده و تمام سرویس‌های متصل قبلی قطع می‌شوند. با این تنظیم فرقی نمی‌کند که سرویس‌های متصل قبلی در وضعیت 'online' باشند یا 'ready'؛ سرویس تازه متصل‌شده تنها سرویسی است که متصل خواهد ماند. سرویسی که توسط کاربر متصل شده است تا زمانی که از پوشش شبکه خارج نشود استفاده خواهد شد. با فعال بودن این تنظیم، برنامه‌ها متوجه قطعی‌های شبکه بیشتری نسبت به حالت عادی خواهند شد. توجه داشته باشید که این گزینه با VPNها قابل استفاده نیست. مقدار پیش‌فرض false است.
فهرستی از فناوری‌هایی که مجاز به فعال‌سازی اشتراک‌گذاری اینترنت (tethering) هستند، جدا شده با ",". مقدار پیش‌فرض wifi,bluetooth,gadget است. تنها فناوری‌های فهرست‌شده در اینجا برای تترینگ استفاده می‌شوند. اگر می‌خواهید اترنت را تتر کنید، باید "ethernet" را به فهرست اضافه کنید. توجه داشته باشید که اگر تترینگ اترنت فعال باشد، یک سرور DHCP روی تمام رابط‌های اترنت راه‌اندازی می‌شود. اترنت تترشده هرگز نباید به شبکه شرکتی یا خانگی متصل شود زیرا عملکرد عادی این شبکه‌ها را مختل خواهد کرد. به همین دلیل اترنت به طور پیش‌فرض تتر نمی‌شود. تترینگ اترنت را فعال نکنید مگر اینکه واقعاً بدانید چه کاری انجام می‌دهید.
بازیابی وضعیت قبلی تترینگ هنگام بازگشت از حالت آفلاین، فعال‌سازی مجدد یک فناوری، و پس از راه‌اندازی‌های مجدد و ریبوت‌ها. مقدار پیش‌فرض false است.
فعال‌سازی خودکار Anycast 6to4 در صورت امکان. این کار توصیه نمی‌شود، زیرا استفاده از 6to4 عموماً منجر به افت شدید کیفیت اتصال می‌شود. RFC6343 را ببینید. مقدار پیش‌فرض false است (همان‌طور که در بخش ۴.۱ از RFC6343 توصیه شده است).
تنظیم گزینه ۶۰ DHCP (شناسه رده فروشنده یا Vendor Class ID) روی رشته مشخص‌شده. این گزینه می‌تواند توسط سرورهای DHCP برای شناسایی کلاینت‌های خاص بدون نیاز به تکیه بر محدوده‌های آدرس MAC و غیره استفاده شود.
فعال یا غیرفعال کردن استفاده از HTTP GET به عنوان بررسی وضعیت آنلاین بودن. هنگامی که یک سرویس در وضعیت READY است و به عنوان پیش‌فرض انتخاب می‌شود، ConnMan یک درخواست HTTP GET ارسال می‌کند تا بررسی کند اتصال سرتاسری (end-to-end) موفقیت‌آمیز است یا خیر. تنها در این صورت است که سرویس به وضعیت ONLINE منتقل می‌شود. اگر این تنظیم false باشد، سرویس پیش‌فرض در وضعیت READY باقی می‌ماند. مقدار پیش‌فرض true است.

نکته: گزینه EnableOnlineCheck منسوخ شده است؛ لطفاً از OnlineCheckMode با یکی از حالت‌های one-shot یا none استفاده کنید.

این گزینه حالت بررسی دسترسی‌پذیری اینترنت مبتنی بر HTTP ("آنلاین") را مشخص می‌کند و جایگزین و منسوخ‌کننده EnableOnlineCheck است. مقادیر ممکن برای mode عبارتند از none، one-shot و continuous. مقدار پیش‌فرض mode برابر با one-shot است.

در حالت none، هیچ بررسی دسترسی به اینترنت مبتنی بر HTTP انجام نمی‌شود. هر سرویس متصل و وضعیت مدیر (manager) در وضعیت "ready" متوقف شده و به "online" پیشرفت نخواهد کرد.

در حالت one-shot، یک بررسی تک‌باره (one-shot) دسترسی اینترنت مبتنی بر HTTP برای سرویس پیش‌فرض انجام می‌شود. هنگامی که بررسی موفقیت‌آمیز باشد، سرویس مربوطه و وضعیت مدیر در وضعیت "online" قرار می‌گیرند. در صورت شکست بررسی، بررسی‌های بعدی طبق OnlineCheckIntervalStyle، OnlineCheckInitialInterval و OnlineCheckMaxInterval زمان‌بندی مجدد شده و تا زمانی که یکی از آن‌ها موفق شود یا سرویس قطع گردد به طور نامحدود ادامه خواهند یافت.

در حالت continuous، بررسی‌های مداوم دسترسی اینترنت مبتنی بر HTTP برای سرویس پیش‌فرض انجام می‌گیرد. همانند حالت "one-shot"، با موفقیت اولین بررسی، سرویس مربوطه و وضعیت مدیر در وضعیت "online" قرار می‌گیرند. پس از آن، بررسی‌های بعدی طبق OnlineCheckIntervalStyle و OnlineCheckMaxInterval زمان‌بندی می‌شوند. در صورت شکست بررسی، بررسی‌های بعدی بر اساس OnlineCheckIntervalStyle، OnlineCheckInitialInterval و OnlineCheckMaxInterval زمان‌بندی مجدد خواهند شد. هنگامی که آستانه OnlineCheckFailuresThreshold برآورده شود، وضعیت سرویس و مدیر به "ready" تنزل می‌یابد و ویژگی "Error" سرویس روی "online-check-failed" تنظیم می‌شود، در حالی که بررسی‌های بعدی ادامه می‌یابند. در این فاصله، در صورت در دسترس بودن، سرویس دیگری ممکن است به سرویس پیش‌فرض ارتقا یابد و بررسی‌های آنلاین برای آن آغاز شود. هنگامی که برای سرویس تنزل‌یافته، آستانه OnlineCheckSuccessesThreshold برآورده شود، ویژگی "Error" سرویس پاک شده و وضعیت سرویس به "online" ارتقا می‌یابد، که ممکن است باعث شود دوباره به سرویس پیش‌فرض تبدیل گردد.

آدرس‌های اینترنتی (به ترتیب IPv4 و IPv6) که در طول بررسی وضعیت آنلاین استفاده می‌شوند. لطفاً برای اطلاعات دقیق‌تر به فایل README مراجعه کنید. مقادیر پیش‌فرض به ترتیب http://ipv4.connman.net/online/status.html و http://ipv6.connman.net/online/status.html هستند.
مدت زمان به ثانیه اعشاری (به عنوان مثال 12.3) برای انتظار جهت برقراری موفقیت‌آمیز اتصال TCP به میزبان مرتبط با OnlineCheckIPv4URL یا OnlineCheckIPv6URL (بالا را ببینید). اتصالاتی که بیشتر از OnlineCheckConnectTimeout طول بکشند لغو خواهند شد. مقدار پیش‌فرض صفر ('0') است که نشان می‌دهد هیچ مهلت زمانی اتصال صریحی استفاده نخواهد شد و تعیین مهلت زمانی به سیستم‌عامل زیرین و پشته شبکه واگذار می‌شود.
محدوده فواصل زمانی بین دو درخواست بررسی آنلاین بودن. لطفاً برای اطلاعات بیشتر به README مراجعه کنید. مقادیر پیش‌فرض به ترتیب ۱ و ۱۲ هستند.
سبک یا تابع سری ریاضی مورد استفاده برای محاسبه زمان واقعی بر حسب ثانیه، بین دو بررسی دسترسی اینترنت مبتنی بر HTTP از وضعیت "ready" به "online". مقدار آن می‌تواند "geometric" یا "fibonacci" باشد که مقدار پیش‌فرض آن "geometric" است.

سبک یا تابع "geometric" به سادگی توان دوم فاصله بررسی آنلاین را محاسبه می‌کند (OnlineCheckInitialInterval و OnlineCheckMaxInterval در بالا را ببینید). به عنوان مثال، در فاصله بررسی ۶، زمان بر حسب ثانیه ۳۶ (۶ به توان ۲) ثانیه است.

سبک یا تابع "fibonacci" مقدار دنباله فیبوناچی را در فاصله بررسی آنلاین در نظر می‌گیرد. به عنوان مثال، در فاصله بررسی ۶، زمان بر حسب ثانیه ۸ ثانیه است.

سری و سبک "fibonacci" در نرخ بررسی تا ۱۲ مرحله نسبت به "geometric" تهاجمی‌تر است (نقطه برابری آن با "geometric" در ۱۴۴ ثانیه است)، اما پس از آن نقطه بسیار تهاجمی‌تر عقب‌نشینی می‌کند و در فاصله ۱۹ به یک ساعت می‌رسد، در حالی که "geometric" تا فاصله ۶۰ به آن نمی‌رسد.

علاوه بر تنظیم EnableOnlineCheck، فعال یا غیرفعال کردن استفاده از HTTP GET برای تشخیص قطع اتصال سرتاسری. اگر این تنظیم false باشد، هنگامی که سرویس پیش‌فرض به وضعیت ONLINE تغییر حالت می‌دهد، درخواست HTTP GET دیگر فراخوانی نمی‌شود تا چرخه بعدی که با انتقال سرویس پیش‌فرض به وضعیت DISCONNECT آغاز می‌شود. اگر این تنظیم true باشد، درخواست HTTP GET مدام فراخوانی می‌شود تا تضمین شود که اتصال سرتاسری همچنان برقرار است. در غیر این صورت، سرویس پیش‌فرض به وضعیت READY منتقل می‌شود و این امکان را فراهم می‌کند که سرویس دیگری به عنوان جایگزین، به سرویس پیش‌فرض تبدیل شود. مقدار پیش‌فرض false است.

نکته: گزینه EnableOnlineToReadyTransition منسوخ شده است؛ لطفاً از OnlineCheckMode با یکی از حالت‌های continuous یا none استفاده کنید.

هنگامی که OnlineCheckMode روی "continuous" تنظیم شده باشد، این تعداد دفعات متوالی شکست در بررسی‌های دسترسی به اینترنت مبتنی بر HTTP از "ready" به "online" است که پیش از علامت‌گذاری یک سرویس به عنوان "شکست‌خورده" (failed) از نظر دسترسی‌پذیری مجاز خواهد بود، و اولویت آن را نسبت به سایر سرویس‌هایی که این علامت را ندارند کاهش می‌دهد.

مقادیر کمتر ممکن است منجر به تغییر دوره‌ای مکررتر سرویس‌های شبکه شود، در حالی که مقادیر بالاتر ممکن است باعث ایجاد بازه زمانی طولانی‌تری قبل از جابجایی از یک سرویس بدون دسترسی به اینترنت به سرویسی که ممکن است دسترسی داشته باشد شود.

برای سایر مقادیری که بر زمان انتقال شکست/بازیابی سرویس شبکه تأثیر می‌گذارند، OnlineCheckIntervalStyle، OnlineCheckInitialInterval و OnlineCheckMaxInterval را ببینید. مقدار پیش‌فرض ۶ است.

هنگامی که OnlineCheckMode روی "continuous" تنظیم شده باشد، این تعداد دفعات متوالی موفقیت در بررسی‌های دسترسی به اینترنت مبتنی بر HTTP از "ready" به "online" است که باید پیش از پاک کردن علامت "شکست‌خورده" از یک سرویس و اجازه دادن به آن برای تغییر وضعیت مجدد به "online" برآورده شود، تا بتواند اولویت بالاتری نسبت به سایر سرویس‌های شبکه به دست آورد.

مقادیر کمتر ممکن است منجر به تغییر دوره‌ای مکررتر سرویس شبکه شود، در حالی که مقادیر بالاتر ممکن است منجر به زمان طولانی‌تری قبل از بازگشت به یک سرویس شبکه ترجیح‌داده‌شده با دسترسی اینترنت شود.

برای سایر مقادیری که بر زمان انتقال شکست/بازیابی سرویس شبکه تأثیر می‌گذارند، OnlineCheckIntervalStyle، OnlineCheckInitialInterval و OnlineCheckMaxInterval را ببینید.

مقدار پیش‌فرض ۶ است.

اتصال خودکار سرویس‌های رومینگ. این کار توصیه نمی‌شود مگر اینکه بدانید مشکلی در صورت‌حساب و هزینه‌ها نخواهید داشت. مقدار پیش‌فرض false است.
فعال یا غیرفعال کردن پیاده‌سازی تشخیص تداخل آدرس IPv4 طبق RFC5227. نرم‌افزار ConnMan قبل از تخصیص آدرس به یک رابط، بسته‌های پروب ARP ارسال می‌کند تا ببیند آیا آدرس IPv4 قبلاً استفاده شده است یا خیر. اگر تداخل آدرس برای یک آدرس با پیکربندی ایستا (static) رخ دهد، به جای آن یک آدرس IPv4LL انتخاب خواهد شد (طبق RFC3927). اگر تداخل آدرس برای آدرسی که از طریق DHCP ارائه شده رخ دهد، ConnMan یک بار پیغام DHCP DECLINE ارسال می‌کند و برای تداخل دوم به یافتن یک آدرس IPv4LL متوسل می‌شود. مقدار پیش‌فرض false است.
مسیر فایل localtime. پیش‌فرض /etc/localtime است.
فعال‌سازی تغییر دامنه مقرراتی رادیویی (regdomain) همگام با تغییرات منطقه زمانی. با تنظیم این گزینه روی true، هر بار که منطقه زمانی تغییر می‌کند، اولین کد کشور ISO3166 موجود از مسیر /usr/share/zoneinfo/zone1970.tab خوانده شده و به عنوان مقدار regdom تنظیم می‌شود. مقدار پیش‌فرض false است.
مسیر فایل resolv.conf. اگر فایل وجود نداشته باشد اما دایرکتوری‌های میانی وجود داشته باشند، ایجاد خواهد شد. اگر این گزینه تنظیم نشود، تلاش می‌کند در /run/connman/resolv.conf بنویسد و در صورت شکست (اگر /run/connman وجود نداشته باشد یا قابل نوشتن نباشد) به /etc/resolv.conf بازمی‌گردد. اگر نمی‌خواهید resolv.conf به‌روزرسانی شود، می‌توانید آن را روی /dev/null تنظیم کنید.

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

[General]
AllowHostnameUpdates = false
AllowDomainnameUpdates = false
TetheringTechnologies = ethernet,wifi,bluetooth,gadget

connman(8)

2015-10-15