NETWORKMANAGER.CONF(5) Configuration NETWORKMANAGER.CONF(5)

NetworkManager.conf - پرونده پیکربندی NetworkManager

/etc/NetworkManager/NetworkManager.conf, /etc/NetworkManager/conf.d/name.conf, /run/NetworkManager/conf.d/name.conf, /usr/lib/NetworkManager/conf.d/name.conf, /var/lib/NetworkManager/NetworkManager-intern.conf

پرونده NetworkManager.conf پرونده پیکربندی برای NetworkManager است. این پرونده برای تنظیم جنبه‌های مختلف رفتار NetworkManager استفاده می‌شود. مکان پرونده اصلی و دایرکتوری‌های پیکربندی را می‌توان به ترتیب با استفاده از آرگومان‌های --config، --config-dir، --system-config-dir و --intern-config برای NetworkManager تغییر داد.

اگر یک پرونده پیش‌فرض NetworkManager.conf توسط بسته‌های توزیع شما ارائه شده است، نباید آن را ویرایش کنید، زیرا ممکن است تغییرات شما با به‌روزرسانی بسته‌ها بازنویسی شوند. در عوض، می‌توانید پرونده‌های .conf بیشتری به دایرکتوری /etc/NetworkManager/conf.d اضافه کنید. این پرونده‌ها به ترتیب خوانده می‌شوند و پرونده‌های بعدی پرونده‌های قبلی را بازنویسی می‌کنند. بسته‌ها ممکن است قطعه‌های پیکربندی بیشتری را در /usr/lib/NetworkManager/conf.d نصب کنند. این دایرکتوری ابتدا تجزیه می‌شود، حتی قبل از NetworkManager.conf. اسکریپت‌ها همچنین می‌توانند پیکربندی مخصوص هر راه‌اندازی را در /run/NetworkManager/conf.d قرار دهند. این دایرکتوری در مرتبه دوم تجزیه می‌شود، باز هم قبل از NetworkManager.conf. از بارگذاری پرونده /run/NetworkManager/conf.d/name.conf می‌توان با افزودن پرونده /etc/NetworkManager/conf.d/name.conf جلوگیری کرد. به همین ترتیب، بر روی یک پرونده /usr/lib/NetworkManager/conf.d/name.conf می‌توان با قرار دادن پرونده‌ای با همان نام در /etc/NetworkManager/conf.d یا /run/NetworkManager/conf.d سایه انداخت.

برنامه NetworkManager می‌تواند برخی از گزینه‌های پیکربندی کاربر را از طریق D-Bus یا سایر عملیات داخلی بازنویسی کند. در این صورت، این تغییرات را در /var/lib/NetworkManager/NetworkManager-intern.conf می‌نویسد. این پرونده برای ویرایش توسط کاربر در نظر گرفته نشده است، اما در آخر خوانده می‌شود و می‌تواند روی پیکربندی کاربر در NetworkManager.conf سایه بیندازد.

برخی از تنظیمات پیکربندی را می‌توان در زمان اجرا با ارسال سیگنال SIGHUP یا از طریق فراخوانی Reload در D-Bus مجدداً بارگذاری کرد.

برنامه NetworkManager به هیچ پیکربندی در NetworkManager.conf نیاز ندارد. بسته به مورد استفاده خود، می‌توانید تمام پرونده‌ها را حذف کنید تا پیکربندی پیش‌فرض بازیابی شود (تنظیم مجدد به کارخانه). اما توجه داشته باشید که توزیع شما یا بسته‌های دیگر ممکن است قطعه‌های پیکربندی را برای NetworkManager قرار داده باشند، به طوری که بخشی از پیش‌فرض کارخانه محسوب شوند.

گزینه‌هایی که به عنوان بولی (boolean) مشخص شده‌اند را می‌توان روی یکی از این مقادیر تنظیم کرد: yes، true، on، 1، no، false، off، 0.

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

برای کلیدهایی که فهرستی از دستگاه‌ها را به عنوان مقدار می‌گیرند، می‌توانید دستگاه‌ها را با نشانی‌های MAC یا نام رابط‌های آن‌ها، یا "*" برای تعیین تمام دستگاه‌ها مشخص کنید. بخش “قالب فهرست دستگاه (Device List Format)” در ادامه را ببینید.

یک پرونده پیکربندی ساده شبیه به این است:

[main]
plugins=keyfile

به عنوان یک افزونه به قالب معمول keyfile، می‌توانید با انجام موارد زیر مقداری را به کلیدی که قبلاً مقداری فهرستی برای آن تنظیم شده الحاق یا از آن حذف کنید:

plugins+=another-plugin
plugins-=remove-me

plugins

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

مقدار پیش‌فرض و تعداد افزایه‌های موجود وابسته به توزیع است. بخش “پلاگین‌ها (PLUGINS)” در ادامه را برای افزایه‌های موجود ببینید. توجه داشته باشید که افزایه بومی keyfile در NetworkManager همیشه به انتهای این فهرست افزوده می‌شود (اگر قبلاً در فهرست نیامده باشد).

monitor-connection-files

این تنظیم منسوخ شده و هیچ تاثیری ندارد. پروفایل‌ها از روی دیسک هرگز به طور خودکار مجدداً بارگذاری نمی‌شوند. برای این منظور برای مثال از nmcli connection (re)load استفاده کنید.

auth-polkit

این که آیا سیستم از PolicyKit برای اعطای مجوز استفاده می‌کند یا خیر. اگر true باشد، درخواست‌های غیر از کاربر ارشد با استفاده از PolicyKit اعتبارسنجی می‌شوند. درخواست‌های کاربر ارشد (شناسه کاربری صفر) همیشه بدون سوال از PolicyKit تأیید می‌شوند. اگر false باشد، تمام درخواست‌ها مجاز خواهند بود و از PolicyKit استفاده نمی‌شود. اگر روی root-only تنظیم شود، از PolicyKit استفاده نمی‌شود و تمام درخواست‌ها به جز کاربر ارشد رد می‌شوند. مقدار پیش‌فرض true است.

dhcp

این کلید مشخص می‌کند که NetworkManager از چه کلاینت DHCP استفاده خواهد کرد. مقادیر مجاز به پیکربندی ساخت بستگی دارند؛ این نسخه از NetworkManager با پشتیبانی از کلاینت‌های زیر ساخته شده است: internal, dhcpcd.

کلاینت internal به صورت توکار است، در حالی که گزینه‌های دیگر ممکن است نیاز به نصب یک کلاینت خارجی DHCP داشته باشند.

اگر این کلید وجود نداشته باشد، internal همراه با بازگشت به سایر کلاینت‌های پشتیبانی‌شده استفاده می‌شود.

no-auto-default

دستگاه‌هایی را مشخص می‌کند که NetworkManager نباید برای آن‌ها اتصال سیمی پیش‌فرض (Auto eth0) ایجاد کند. به طور پیش‌فرض، NetworkManager یک اتصال سیمی موقت برای هر دستگاه اترنت که مدیریت می‌شود و اتصالی برای آن پیکربندی نشده است ایجاد می‌کند. نام دستگاهی را در این گزینه فهرست کنید تا از ایجاد اتصال پیش‌فرض برای آن دستگاه جلوگیری شود. می‌تواند مقدار ویژه * را برای اعمال بر روی تمام دستگاه‌ها داشته باشد.

هنگامی که اتصال سیمی پیش‌فرض حذف شود یا توسط یک افزایه در یک اتصال دائمی جدید ذخیره شود، دستگاه به فهرستی در پرونده /var/lib/NetworkManager/no-auto-default.state اضافه می‌شود تا از ایجاد مجدد اتصال پیش‌فرض برای آن دستگاه جلوگیری شود.

بخش “قالب فهرست دستگاه (Device List Format)” را برای نحو چگونگی تعیین یک دستگاه ببینید.

مثال:

no-auto-default=00:22:68:5c:5d:c4,00:1e:65:ff:aa:ee
no-auto-default=eth0,eth1
no-auto-default=*

ignore-carrier

این تنظیم به نفع تنظیم مخصوص هر دستگاه ignore-carrier منسوخ شده است که در صورت تعیین، این تنظیم را بازنویسی می‌کند (ببینید ignore-carrier). در غیر این صورت، این یک فهرست از تطبیق‌ها است تا مشخص کند برای کدام دستگاه باید حامل نادیده گرفته شود. بخش “قالب فهرست دستگاه (Device List Format)” را برای نحو چگونگی تعیین یک دستگاه ببینید. توجه داشته باشید که انواع کنترل‌کننده مانند bond، bridge و team حامل را به طور پیش‌فرض نادیده می‌گیرند. با این حال می‌توانید با استفاده از مشخص‌کننده "except:" آن پیش‌فرض را برگردانید (یا بهتر، به جای تنظیم منسوخ‌شده از تنظیم مخصوص هر دستگاه استفاده کنید).

assume-ipv6ll-only

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

بخش “قالب فهرست دستگاه (Device List Format)” را برای نحو چگونگی تعیین یک دستگاه ببینید.

configure-and-quit

این گزینه دیگر برای پیکربندی در پرونده NetworkManager.conf مفید نیست. با این حال می‌توان آن را در خط فرمان نیز با همان مقادیر پیکربندی کرد، جایی که کاربردهایی دارد.

هنگامی که روی 'initrd' تنظیم شود، NetworkManager به D-Bus متصل نمی‌شود و پس از پیکربندی شبکه خارج می‌شود. این یک جزئیات پیاده‌سازی از نحوه اجرای NetworkManager توسط ماژول NetworkManager در dracut است. یک جایگزین برای این کار، اجرای NetworkManager به عنوان یک سرویس systemd به همراه D-Bus در initrd است.

مقدار 'true' از نسخه 1.36 پشتیبانی نمی‌شود. قبلاً این حالتی بود که در آن NetworkManager پس از پیکربندی شبکه خارج می‌شد و فرآیندهای کمکی را برای DHCP و SLAAC اجرا می‌کرد.

در غیر این صورت، NetworkManager یک سرویس سیستمی را همراه با D-Bus اجرا می‌کند و در طول عملکرد عادی خارج نمی‌شود.

hostname-mode

حالت مدیریت نام میزبان را تنظیم می‌کند. این پارامتر فقط بر نام میزبان گذرا تأثیر می‌گذارد. اگر یک نام میزبان ایستا و معتبر تنظیم شده باشد، NetworkManager با وجود مقدار این گزینه از به‌روزرسانی نام میزبان صرف‌نظر می‌کند. یک نام میزبان خالی یا برابر با '(none)' نامعتبر در نظر گرفته می‌شود.

default: برنامه NetworkManager نام میزبان را با نام ارائه‌شده از طریق DHCP یا جستجوی معکوس DNS از نشانی IP روی اتصالی با مسیر پیش‌فرض یا روی هر اتصالی با ویژگی hostname.only-from-default تنظیم‌شده روی 'false' به‌روزرسانی می‌کند. اتصالات به ترتیب صعودی مقدار ویژگی hostname.priority در نظر گرفته می‌شوند. در صورتی که چندین اتصال دارای اولویت یکسان باشند، اتصالاتی که زودتر فعال شده‌اند ابتدا بررسی می‌شوند. اگر هیچ نام میزبانی به این روش تعیین نشود، نام میزبان به آخرین نام تنظیم‌شده در خارج از NetworkManager یا به 'localhost.localdomain' به‌روزرسانی می‌شود.

dhcp: این مشابه 'default' است، با این تفاوت که پس از تلاش برای دریافت نام میزبان از طریق DHCP، جستجوی معکوس DNS انجام نمی‌شود. توجه داشته باشید که انتخاب این گزینه معادل تنظیم ویژگی 'hostname.from-dns-lookup' روی 'false' به صورت سراسری برای تمام اتصالات در NetworkManager.conf است.

none: برنامه NetworkManager نام میزبان گذرا را مدیریت نخواهد کرد و هرگز آن را تنظیم نمی‌کند.

dns

حالت پردازش DNS را تنظیم می‌کند.

اگر کلید مشخص نشود، default استفاده می‌شود، مگر اینکه /etc/resolv.conf یک پیوند نمادین به /run/systemd/resolve/stub-resolv.conf، /run/systemd/resolve/resolv.conf، /lib/systemd/resolv.conf یا /usr/lib/systemd/resolv.conf باشد. در این صورت، systemd-resolved به طور خودکار انتخاب می‌شود.

default: برنامه NetworkManager پرونده /etc/resolv.conf را به‌روزرسانی می‌کند تا سرورهای نام ارائه‌شده توسط اتصالات فعال فعلی را منعکس کند. تنظیم rc-manager (در ادامه) نحوه انجام این کار را کنترل می‌کند.

dnsmasq: برنامه NetworkManager برنامه dnsmasq را به عنوان یک سرور نام محلی دارای حافظه پنهان اجرا می‌کند و در صورت اتصال به VPN از "Conditional Forwarding" استفاده می‌کند، و سپس resolv.conf را برای اشاره به سرور نام محلی به‌روزرسانی می‌کند. می‌توان با افزودن گزینه‌های سفارشی به پرونده‌های موجود در دایرکتوری "/etc/NetworkManager/dnsmasq.d/" آن‌ها را به نمونه dnsmasq ارسال کرد. توجه داشته باشید که وقتی چندین سرور بالادستی در دسترس باشند، dnsmasq در ابتدا به طور همزمان با آن‌ها تماس می‌گیرد و سپس از سریع‌ترین سرور برای پاسخ استفاده می‌کند و پس از مدتی سایر سرورها را دوباره بررسی می‌کند. این رفتار را می‌توان با ارسال گزینه‌های 'all-servers' یا 'strict-order' به dnsmasq تغییر داد (برای جزئیات بیشتر به صفحه راهنما مراجعه کنید).

systemd-resolved: برنامه NetworkManager پیکربندی DNS را به systemd-resolved ارسال می‌کند.

dnsconfd: برنامه NetworkManager پیکربندی DNS را به dnsconfd[1] ارسال می‌کند و به طور پیش‌فرض ipvX.routed-dns را روی yes تنظیم می‌کند، بنابراین ارتباط با سرورها از طریق رابط‌های مناسب برقرار می‌شود.

none: برنامه NetworkManager پرونده resolv.conf را ویرایش نمی‌کند. این به معنی rc-manager unmanaged است.

توجه داشته باشید که افزایه‌های dnsmasq,systemd-resolved و dnsconfd سرورهای نام محلی دارای حافظه پنهان هستند. از این رو، هنگامی که NetworkManager پرونده‌های /run/NetworkManager/resolv.conf و /etc/resolv.conf را می‌نویسد (با توجه به تنظیم rc-manager در ادامه)، سرور نام در آنجا فقط localhost خواهد بود. همچنین NetworkManager پرونده‌ای به نام /run/NetworkManager/no-stub-resolv.conf می‌نویسد که شامل سرورهای نام اصلی ارسال‌شده به افزایه DNS است.

هنگام استفاده از dnsmasq,systemd-resolved و dnsconfd سرورهای dns اضافه شده برای هر اتصال همیشه با استفاده از دستگاهی که اتصال روی آن فعال شده است پرس‌وجو می‌شوند.

rc-manager

حالت مدیریت resolv.conf را تنظیم می‌کند. این گزینه درباره این است که NetworkManager چگونه در /etc/resolv.conf می‌نویسد (در صورتی که اصلاً بنویسد). مقدار پیش‌فرض به گزینه‌های ساخت NetworkManager بستگی دارد و این نسخه از NetworkManager با مقدار پیش‌فرض "symlink" ساخته شده است. صرف نظر از این تنظیم، NetworkManager همیشه نسخه خود از resolv.conf را در دایرکتوری وضعیت زمان اجرای خود به صورت /run/NetworkManager/resolv.conf می‌نویسد.

اگر dns=none را پیکربندی کنید یا /etc/resolv.conf را با chattr +i تغییرناپذیر سازید، NetworkManager این تنظیم را نادیده می‌گیرد و همیشه unmanaged (در ادامه) را انتخاب می‌کند.

auto: اگر افزایه systemd-resolved از طریق تنظیم dns پیکربندی شده باشد یا اگر به عنوان افزایه اصلی DNS تشخیص داده شود، NetworkManager بدون دستکاری /etc/resolv.conf افزایه systemd-resolved را به‌روزرسانی می‌کند. متناوباً، اگر resolvconf یا netconfig در زمان کامپایل فعال شده باشند و باینری مربوطه یافت شود، NetworkManager به طور خودکار از آن استفاده خواهد کرد. توجه داشته باشید که اگر این باینری‌ها را نصب یا حذف کنید، باید تنظیم rc-manager را با SIGHUP یا systemctl reload NetworkManager مجدداً بارگذاری کنید. به عنوان آخرین گزینه بازگشتی از گزینه symlink استفاده می‌کند (مورد بعدی را ببینید).

symlink: اگر /etc/resolv.conf یک پرونده معمولی باشد یا وجود نداشته باشد، NetworkManager پرونده را مستقیماً می‌نویسد. اگر /etc/resolv.conf در عوض یک پیوند نمادین باشد، NetworkManager کاری به آن نخواهد داشت. مگر اینکه پیوند نمادین به پرونده داخلی /run/NetworkManager/resolv.conf اشاره کند، که در این صورت پیوند نمادین به‌روزرسانی می‌شود تا یک اعلان inotify صادر کند. این به کاربر اجازه می‌دهد تا به راحتی به NetworkManager دستور دهد که با جایگزین کردن آن با یک پیوند نمادین، /etc/resolv.conf را مدیریت نکند.

file: برنامه NetworkManager پرونده /etc/resolv.conf را به عنوان یک پرونده معمولی می‌نویسد. اگر پیوند نمادینی به یک مقصد موجود بیابد، پیوند نمادین را دنبال کرده و به جای آن مقصد را به‌روزرسانی می‌کند. در هیچ حالتی پیوند نمادین موجود با یک پرونده جایگزین نخواهد شد. توجه داشته باشید که نسخه‌های قدیمی‌تر NetworkManager رفتار متفاوتی داشتند و پیوندهای نمادین معلق را با یک پرونده ساده جایگزین می‌کردند.

resolvconf: برنامه NetworkManager برنامه resolvconf را برای به‌روزرسانی پیکربندی DNS اجرا می‌کند.

netconfig: برنامه NetworkManager برنامه netconfig را برای به‌روزرسانی پیکربندی DNS اجرا می‌کند.

unmanaged: به /etc/resolv.conf دست نزن.

none: نام مستعار منسوخ‌شده برای symlink.

systemd-resolved

علاوه بر این، پیکربندی DNS اتصال را به systemd-resolved ارسال کن. مقدار پیش‌فرض "true" است.

توجه داشته باشید که اگر افزایه اصلی dns قبلاً systemd-resolved باشد، این تنظیم هیچ تاثیری ندارد. این تنظیم مکمل تنظیم dns برای پیکربندی systemd-resolved در کنار افزایه اصلی است.

اگر systemd-resolved فعال باشد، چه از طریق این تنظیم و چه از طریق افزایه اصلی DNS، بررسی اتصال نام میزبان را به ازای هر دستگاه حل می‌کند.

debug

فهرستی از گزینه‌ها که با کاما از هم جدا شده‌اند برای کمک به اشکال‌زدایی. این مقدار با متغیر محیطی NM_DEBUG ترکیب خواهد شد. در حال حاضر مقادیر زیر پشتیبانی می‌شوند:

RLIMIT_CORE: تنظیم ulimit -c unlimited برای نوشتن core dumpها. مراقب باشید که یک core dump می‌تواند حاوی اطلاعات حساسی مانند گذرواژه‌ها یا تنظیمات پیکربندی باشد.

fatal-warnings: تنظیم g_log_set_always_fatal() برای ایجاد core dump روی پیام‌های هشدار از glib. این معادل گزینه خط فرمان --g-fatal-warnings است.

autoconnect-retries-default

تعداد دفعاتی که فعال‌سازی یک اتصال باید قبل از رفتن به اتصال دیگر به طور خودکار امتحان شود. این مقدار فقط برای اتصالاتی اعمال می‌شود که می‌توانند به طور خودکار متصل شوند و ویژگی connection.autoconnect-retries آن‌ها روی -1 تنظیم شده است. اگر مشخص نشود، اتصالات ۴ بار امتحان خواهند شد. تنظیم این مقدار روی 1 به معنای یک بار تلاش برای فعال‌سازی، بدون تکرار مجدد است.

firewall-backend

بک‌اند فایروال برای پیکربندی masquerading در حالت اشتراکی. روی یکی از گزینه‌های iptables، nftables یا none تنظیم کنید. iptables و nftables به ترتیب نیاز به برنامه‌های iptables و nft دارند. none به این معنی است که اگر کاربران تمایل دارند فایروال را خودشان مدیریت کنند، از پیکربندی فایروال صرف‌نظر شود. اگر مشخص نشود، به طور خودکار تشخیص داده می‌شود.

iwd-config-path

اگر مقدار "auto" باشد (پیش‌فرض)، هنگام ظاهر شدن IWD روی D-Bus، دایرکتوری وضعیت فعلی آن استعلام می‌شود -- دایرکتوری‌ای که IWD پرونده‌های پیکربندی شبکه خود را در آن نگه می‌دارد -- معمولاً /var/lib/iwd. سپس NetworkManager تلاش خواهد کرد تا کپی‌هایی از پروفایل‌های اتصال Wi-Fi جدید یا ویرایش‌شده را، که به قالب IWD تبدیل شده‌اند، در این دایرکتوری بنویسد و بدین ترتیب ویژگی‌های اتصال IWD را قابل ویرایش کند. NM پرونده‌های موجود را بدون حفظ محتویات آن‌ها بازنویسی خواهد کرد.

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

این سازوکار امکان ویرایش تنظیمات پروفایل اتصال مانند پیکربندی 802.1x را با استفاده از کلاینت‌های NetworkManager فراهم می‌کند. بدون آن چنین تغییراتی در IWD تاثیری ندارند.

migrate-ifcfg-rh

این که آیا NetworkManager سعی می‌کند هر پروفایل اتصال ذخیره‌شده در قالب ifcfg-rh را به طور خودکار به قالب keyfile تبدیل کند یا خیر. پشتیبانی از ifcfg-rh منسوخ شده است و در نهایت حذف خواهد شد. در صورت فعال بودن، انتقال در هر بار راه‌اندازی دیمن انجام می‌شود. مقدار پیش‌فرض false است.

این بخش شامل گزینه‌های مخصوص افزایه keyfile است و معمولاً تنها زمانی استفاده می‌شود که از هیچ افزایه مخصوص توزیع دیگری استفاده نمی‌کنید.

hostname

این کلید منسوخ شده و هیچ تاثیری ندارد، زیرا نام میزبان اکنون با توجه به گزینه‌های ساخت در /etc/hostname یا سایر پرونده‌های پیکربندی سیستم ذخیره می‌شود.

path

مکانی که در آن پرونده‌های کلید خوانده و ذخیره می‌شوند. این مقدار به صورت پیش‌فرض "/etc/NetworkManager/system-connections" است.

rename

برنامه NetworkManager هنگام ذخیره یک پروفایل جدید بر روی دیسک، به طور خودکار نام پرونده را انتخاب می‌کند. این نام به نام پروفایل (connection.id) بستگی دارد. هنگام به‌روزرسانی نام پروفایل، پرونده تغییر نام داده نمی‌شود تا اسکریپت‌هایی که برای پروفایل به نام پرونده متکی هستند دچار مشکل نشوند. با تنظیم این گزینه روی "true"، NetworkManager در هنگام به‌روزرسانی پروفایل، نام پرونده کلید را تغییر می‌دهد تا با نام پروفایل مطابقت داشته باشد. مقدار پیش‌فرض "false" است.

unmanaged-devices

دستگاه‌هایی را که باید توسط NetworkManager نادیده گرفته شوند تنظیم می‌کند.

دستگاهی که به دلیل این گزینه مدیریت‌نشده باشد، کاملاً مدیریت‌نشده است و نمی‌توان آن را با استفاده از API مانند nmcli device set $IFNAME managed yes مدیریت‌شده کرد. همچنین، دستگاهی که به دلایل دیگر مانند قاعده udev مدیریت‌نشده است، نمی‌توان با این گزینه مدیریت‌شده کرد (مثلاً با استفاده از مشخص‌کننده except: ). این دو نکته آن را از گزینه device*.managed متمایز می‌کند که به همین دلیل ممکن است گزینه بهتری باشد.

بخش “قالب فهرست دستگاه (Device List Format)” را برای نحو چگونگی تعیین یک دستگاه ببینید.

مثال:

unmanaged-devices=interface-name:em4
unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2

این بخش شامل گزینه‌های مخصوص ifupdown است و بنابراین فقط هنگام استفاده از افزایه ifupdown تاثیر دارد.

managed

اگر روی true تنظیم شود، رابط‌های فهرست‌شده در /etc/network/interfaces توسط NetworkManager مدیریت می‌شوند. اگر روی false تنظیم شود، هر رابط فهرست‌شده در /etc/network/interfaces توسط NetworkManager نادیده گرفته خواهد شد. به یاد داشته باشید که NetworkManager مسیر پیش‌فرض را کنترل می‌کند، بنابراین چون رابط نادیده گرفته می‌شود، ممکن است NetworkManager مسیر پیش‌فرض را به رابط دیگری اختصاص دهد.

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

این بخش گزارش‌گیری NetworkManager را کنترل می‌کند. گزارش‌گیری برای درک اینکه NetworkManager چه کاری انجام می‌دهد بسیار مهم است. هنگام گزارش یک باگ، پرونده گزارش را بی‌دلیل فیلتر یا محدود نکنید. فقط level=TRACE و domains=ALL را فعال کنید تا همه چیز جمع‌آوری شود.

روش توصیه‌شده برای فعال کردن گزارش‌گیری با یک پرونده /etc/NetworkManager/conf.d/95-logging.conf است که شامل موارد زیر باشد:

[logging]
level=TRACE
domains=ALL

و دیمن را با systemctl restart NetworkManager مجدداً راه‌اندازی کنید. سپس مشکل را بازتولید نمایید. می‌توانید گزارش‌ها را در syslog بیابید (به عنوان مثال journalctl، یا journalctl -u NetworkManager برای نمایش گزارش‌های مربوط به NetworkManager به تنهایی).

هر تنظیمی در اینجا توسط گزینه‌های خط فرمان --log-level و --log-domains بازنویسی می‌شود. گزارش‌گیری را می‌توان در زمان اجرا با دستور nmcli general logging level "$LEVEL" domains "$DOMAINS" نیز بازپیکربندی کرد. با این حال، اغلب جالب است که گزارشی کامل از ابتدا دریافت شود. به ویژه هنگام اشکال‌زدایی یک مشکل، گزارش‌گیری اشکال‌زدایی را در NetworkManager.conf فعال کنید و سرویس را مجدداً راه‌اندازی کنید تا گزارش‌گیری با جزئیات بالا از ابتدا فعال شود.

با تنظیم nm.debug در خط فرمان هسته (از طریق /run/NetworkManager/proc-cmdline یا /proc/cmdline)، گزارش‌گیری اشکال‌زدایی فعال می‌شود. این کار هم گزینه‌های خط فرمان و هم تنظیمات NetworkManager.conf را بازنویسی می‌کند.

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

برنامه NetworkManager بسته به پیکربندی از syslog یا systemd-journald استفاده می‌کند. در هر صورت، گزارش‌های اشکال‌زدایی پرحجم هستند و ممکن است توسط دیمن گزارش‌گیری با محدودیت نرخ یا فیلتر مواجه شوند. برای systemd-journald، بخش‌های RateLimitIntervalSec و RateLimitBurst را در راهنمای journald.conf برای نحوه غیرفعال کردن آن ببینید.

level

سطح پیش‌فرض پرگویی گزارش‌گیری. یکی از موارد OFF، ERR، WARN، INFO، DEBUG، TRACE، به ترتیب میزان پرگویی.

OFF تمام گزارش‌گیری را غیرفعال می‌کند. INFO میزان پرگویی پیش‌فرض برای عملکرد عادی است. TRACE برای اشکال‌زدایی است.

سطوح دیگر در اغلب موارد چندان کاربردی نیستند. برای مثال، DEBUG بین TRACE و INFO قرار دارد، اما برای عملکرد عادی بیش از حد پرحجم است و فاقد پیام‌های مفید احتمالی برای اشکال‌زدایی است. تقریباً همیشه هنگام اشکال‌زدایی یک مشکل یا گزارش یک باگ، گزارش‌های سطح کامل TRACE را برای دریافت تصویر کامل جمع‌آوری کنید.

domains

پیام‌ها را بر اساس موضوع آن‌ها فیلتر می‌کند. هنگام اشکال‌زدایی یک مشکل، بهتر است ابتدا تمام گزارش‌ها (دامنه ALL) را جمع‌آوری کنید. بخش‌های غیرضروری را همیشه می‌توان بعداً نادیده گرفت.

در موارد نامعمول برای حذف موضوعات خاص، دامنه‌های گزارش زیر در دسترس هستند: PLATFORM, RFKILL, ETHER, WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX, INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS, TEAM, CONCHECK, DCB, DISPATCH, AUDIT, SYSTEMD, VPN_PLUGIN, PROXY.

علاوه بر این، این دامنه‌های ویژه نیز قابل استفاده هستند: NONE, ALL, DEFAULT, DHCP, IP.

می‌توانید با افزودن دونقطه و سطح گزارش به هر دامنه، سطوح گزارش مخصوص هر دامنه را بازنویسی کنید. مانند: "WIFI:DEBUG,WIFI_SCAN:OFF". یک مثال دیگر ALL,VPN_PLUGIN:TRACE برای فعال کردن تمام گزارش‌گیری‌های ممکن است (توضیحات درباره VPN_PLUGIN را در ادامه ببینید).

توضیحات دامنه‌ها:

PLATFORM : عملیات سیستم‌عامل (پلتفرم)
RFKILL : عملیات زیرسیستم RFKill
ETHER : عملیات دستگاه اترنت
WIFI : عملیات دستگاه Wi-Fi
BT : عملیات بلوتوث
MB : عملیات پهن‌باند تلفن همراه
DHCP4 : پروتکل DHCP برای IPv4
DHCP6 : پروتکل DHCP برای IPv6
PPP : عملیات پروتکل نقطه به نقطه
WIFI_SCAN : عملیات پویش Wi-Fi
IP4 : عملیات مرتبط با IPv4
IP6 : عملیات مرتبط با IPv6
AUTOIP4 : عملیات AutoIP
DNS : عملیات مرتبط با سیستم نام دامنه
VPN : اتصالات و عملیات شبکه خصوصی مجازی
SHARING : اشتراک‌گذاری اتصال. همراه با پرس‌وجوهای گزارش سطح TRACE برای نمونه dnsmasq
SUPPLICANT : عملیات مرتبط با WPA supplicant
AGENTS : عملیات و ارتباطات کارگزاران محرمانه
SETTINGS : عملیات سرویس تنظیمات/پیکربندی
SUSPEND : تعلیق/ازسرگیری
CORE : عملیات دیمن اصلی و خط‌مشی‌ها
DEVICE : فعال‌سازی و عملیات عمومی رابط‌ها
OLPC : عملیات دستگاه مش OLPC
WIMAX : عملیات دستگاه WiMAX
INFINIBAND : عملیات دستگاه InfiniBand
FIREWALL : عملیات مرتبط با FirewallD
ADSL : عملیات دستگاه ADSL
BOND : عملیات تجمیع
VLAN : عملیات VLAN
BRIDGE : عملیات پل‌سازی
DBUS_PROPS : تغییرات ویژگی‌های D-Bus
TEAM : عملیات Teaming
CONCHECK : بررسی اتصال
DCB : عملیات پل‌سازی مرکز داده (DCB)
DISPATCH : اسکریپت‌های توزیع‌کننده
AUDIT : رکوردهای بازرسی
SYSTEMD : پیام‌های libsystemd داخلی
VPN_PLUGIN : پیام‌های گزارش از افزایه‌های VPN
PROXY : پیام‌های گزارش برای مدیریت پروکسی
NONE : زمانی که به تنهایی مشخص شود گزارش‌گیری غیرفعال می‌شود
ALL : تمام دامنه‌های گزارش
DEFAULT : دامنه‌های گزارش پیش‌فرض
DHCP : میان‌بری برای "DHCP4,DHCP6"
IP : میان‌بری برای "IP4,IP6"
HW : نام مستعار منسوخ‌شده برای "PLATFORM"

به طور کلی، پرونده گزارش نباید حاوی گذرواژه‌ها یا داده‌های خصوصی باشد. با این حال، همیشه توصیه می‌شود پرونده را قبل از ارسال آنلاین یا پیوست به گزارش باگ بررسی کنید. VPN_PLUGIN خاص است زیرا ممکن است اطلاعات خصوصی افزایه‌های VPN را در سطوح پرگویی بالا آشکار سازد. بنابراین این دامنه هنگام تنظیم ALL یا DEFAULT روی سطوح پرگوتر از INFO مستثنی خواهد شد.

backend

بک‌اند گزارش‌گیری. مقادیر پشتیبانی‌شده "syslog" و "journal" هستند. هنگامی که NetworkManager با "--debug" راه‌اندازی شود، علاوه بر این تمام پیام‌ها در خروجی استاندارد خطا چاپ خواهند شد. در صورت عدم تعیین، مقدار پیش‌فرض "journal" است.

audit

این که آیا رکوردهای بازرسی به auditd، دیمن بازرسی، تحویل داده شوند یا خیر. اگر false باشد، رکوردهای بازرسی فقط به سیستم گزارش‌گیری NetworkManager ارسال می‌شوند. اگر روی true تنظیم شود، به auditd نیز ارسال خواهند شد. مقدار پیش‌فرض true است.

مقادیر پیش‌فرض را برای اتصالات مشخص می‌کند.

چنین مقادیر پیش‌فرضی تنها در صورتی مورد مراجعه قرار می‌گیرند که ویژگی متناظر در سطح اتصال صریحاً این اجازه را بدهد. این بدان معناست که تمام این ویژگی‌ها با یک ویژگی از پروفایل اتصال (برای مثال connection.mud-url) متناظر هستند. تنها در صورتی که ویژگی در سطح هر پروفایل روی یک مقدار ویژه تنظیم شده باشد که نشان‌دهنده استفاده از پیش‌فرض است، مقدار پیش‌فرض از NetworkManager.conf مورد مراجعه قرار می‌گیرد. این که چه مقدار ویژه‌ای نشان‌دهنده بازگشت به مقدار پیش‌فرض است به خود ویژگی بستگی دارد، اما معمولاً مقادیری مانند مقادیر خالی، مقادیر تنظیم‌نشده یا مقادیر عددی ویژه مانند 0 یا -1 است. این بدان معناست که مقدار مؤثر مورد استفاده را می‌توان ابتدا همیشه برای هر پروفایل پیکربندی کرد و این مقادیر پیش‌فرض فقط زمانی اهمیت دارند که مقادیر هر پروفایل صریحاً نشان دهند که از پیش‌فرض NetworkManager.conf استفاده شود.

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

مثال:

[connection]
ipv6.ip6-privacy=0

تمام ویژگی‌ها قابل بازنویسی نیستند، تنها ویژگی‌های زیر برای پیکربندی مقادیر پیش‌فرض آن‌ها پشتیبانی می‌شوند (برای جزئیات به nm-settings-nmcli(5) مراجعه کنید):

802-1x.auth-timeout

cdma.mtu

connection.auth-retries

در صورت عدم تعیین، مقدار پیش‌فرض ۳ بار تلاش قبل از ناموفق اعلام کردن اتصال است.

connection.autoconnect-ports

connection.autoconnect-slaves

این ویژگی منسوخ شده است، لطفاً به جای آن از "connection.autoconnect-ports" استفاده کنید.

connection.down-on-poweroff

این که آیا اتصال قبل از خاموش شدن سیستم قطع شود یا خیر.

connection.ip-ping-addresses-require-all

این که آیا موفقیت در هر یک از بررسی‌های ping در میان فهرست نشانی‌های هدف کافی است، یا اینکه تمام بررسی‌های ping برای کل فهرست نشانی‌های هدف باید موفقیت‌آمیز باشند.

connection.mud-url

در صورت عدم تعیین، نشانی اینترنتی MUD به صورت پیش‌فرض "none" خواهد بود.

connection.lldp

connection.llmnr

در صورت عدم تعیین، مقادیر نهایی پیش‌فرض به افزایه DNS بستگی دارد. با systemd-resolved پیش‌فرض در حال حاضر "yes" (2) است و برای سایر افزایه‌ها "no" (0).

connection.mdns

در حال حاضر تنها افزایه DNS مربوط به systemd-resolve از این تنظیم پشتیبانی می‌کند. اگر این تنظیم هم در پروفایل و هم در پیش‌فرض سراسری در اینجا مشخص نشده باشد، پیش‌فرض توسط systemd-resolved تعیین می‌شود. بخش MulticastDNS= را در resolved.conf(5) ببینید.

connection.mptcp-flags

در صورت عدم تعیین، مقدار بازگشتی 0x122 ("enabled,subflow,laminar") است. توجه داشته باشید که اگر sysctl در /proc/sys/net/mptcp/enabled غیرفعال باشد، NetworkManager همچنان نقاط پایانی را پیکربندی نخواهد کرد.

connection.dns-over-tls

در صورت عدم تعیین، مقادیر نهایی پیش‌فرض به افزایه DNS بستگی دارد. با systemd-resolved پیش‌فرض در حال حاضر تنظیم سراسری آن است و برای تمام افزایه‌های دیگر "no" (0).

connection.dnssec

در صورت عدم تعیین، مقادیر نهایی پیش‌فرض به افزایه DNS بستگی دارد. با systemd-resolved پیش‌فرض در حال حاضر تنظیم سراسری آن است و برای تمام افزایه‌های دیگر "no" (0).

connection.stable-id

ethernet.cloned-mac-address

در صورت عدم تعیین، مقدار پیش‌فرض "preserve" است.

ethernet.generate-mac-address-mask

ethernet.mtu

اگر صریحاً روی 0 پیکربندی شود، MTU در حین فعال‌سازی دستگاه مجدداً پیکربندی نمی‌شود مگر اینکه به دلیل محدودیت‌های IPv6 لازم باشد. در صورت عدم تعیین، مقدار ارائه‌شده توسط DHCP/IPv6 SLAAC استفاده می‌شود یا MTU در حین فعال‌سازی مجدداً پیکربندی نمی‌شود.

ethernet.wake-on-lan

gsm.mtu

hostname.from-dhcp

hostname.from-dns-lookup

hostname.only-from-default

hostname.priority

infiniband.mtu

اگر صریحاً روی 0 پیکربندی شود، MTU در حین فعال‌سازی دستگاه مجدداً پیکربندی نمی‌شود مگر اینکه به دلیل محدودیت‌های IPv6 لازم باشد. در صورت عدم تعیین، مقدار ارائه‌شده توسط DHCP/IPv6 SLAAC استفاده می‌شود یا MTU در حین فعال‌سازی مشخص‌نشده باقی می‌ماند.

ip-tunnel.mtu

اگر صریحاً روی 0 پیکربندی شود، MTU در حین فعال‌سازی دستگاه مجدداً پیکربندی نمی‌شود مگر اینکه به دلیل محدودیت‌های IPv6 لازم باشد. در صورت عدم تعیین، مقدار ارائه‌شده توسط DHCP/IPv6 SLAAC استفاده می‌شود یا مقدار پیش‌فرض 1500.

ipv4.forwarding

این که آیا هدایت مخصوص رابط sysctl در IPv4 پیکربندی شود یا خیر. در صورت فعال بودن، رابط به عنوان یک مسیریاب برای هدایت بسته IPv4 از یک رابط به رابط دیگر عمل می‌کند. در صورت عدم تعیین، از "auto" استفاده می‌شود، بنابراین اگر هر اتصال مشترکی فعال باشد، NetworkManager هدایت IPv4 را تنظیم می‌کند، یا در غیر این صورت از مقدار پیش‌فرض هسته استفاده خواهد کرد. ویژگی "ipv4.forwarding" زمانی که "ipv4.method" روی "shared" تنظیم شده باشد نادیده گرفته می‌شود، زیرا در این حالت هدایت همیشه فعال است. مقادیر پذیرفته‌شده عبارتند از: 0: غیرفعال، 1: فعال، 2: خودکار (auto)، 3: نادیده گرفته‌شده (هدایت بدون تغییر باقی بماند).

ipv4.clat

در صورت عدم تعیین، مقدار پیش‌فرض "no" است.

ipv4.routed-dns

ipv4.dad-timeout

ipv4.dhcp-client-id

ipv4.dhcp-dscp

ipv4.dhcp-iaid

در صورت عدم تعیین، مقدار پیش‌فرض "ifname" است.

ipv4.dhcp-ipv6-only-preferred

در صورت عدم تعیین، مقدار پیش‌فرض "auto" است.

ipv4.dhcp-hostname-flags

در صورت عدم تعیین، از مقدار 3 (fqdn-encoded,fqdn-serv-update) استفاده می‌شود.

ipv4.dhcp-send-hostname

این که آیا هنگام دریافت اجاره، یک نام میزبان به سرور DHCP ارسال شود یا خیر. هنگامی که این ویژگی در اتصال مشخص نشده باشد، مقدار سراسری از پیکربندی NetworkManager استعلام می‌شود. اگر مقدار سراسری تنظیم نشده باشد، از مقدار ipv4.dhcp-send-hostname-deprecated که به طور پیش‌فرض true است برای سازگاری با گذشته استفاده می‌شود. در آینده این تغییر خواهد کرد و در صورت عدم وجود یک پیش‌فرض سراسری، همیشه به true بازمی‌گردد.

ipv4.dhcp-send-release

این که آیا کلاینت DHCP هنگام قطع کردن اتصال، پیام RELEASE را ارسال می‌کند یا خیر.

ipv4.dhcp-timeout

در صورت عدم تعیین، مقدار پیش‌فرض برای نوع رابط استفاده می‌شود.

ipv4.dhcp-vendor-class-identifier

در صورت عدم تعیین، پیش‌فرض این است که گزینه DHCP به سرور ارسال نشود.

ipv4.dns-priority

در صورت عدم تعیین یا صفر بودن، از ۵۰ برای پروفایل‌های VPN و از ۱۰۰ برای سایر پروفایل‌ها استفاده می‌شود.

ipv4.required-timeout

ipv4.link-local

در صورت عدم تعیین، به "auto" بازمی‌گردد که آن را به تنظیم "ipv4.method" وابسته می‌کند.

ipv4.route-metric

ipv4.route-table

در صورت عدم تعیین، مسیرها فقط به جدول اصلی اضافه می‌شوند. توجه داشته باشید که این به دلیل نحوه حذف مسیرهای اضافی از جدول‌ها توسط NetworkManager، با انتخاب صریح جدول اصلی ۲۵۴ متفاوت است.

ipv6.routed-dns

ipv6.addr-gen-mode

اگر تنظیم مربوط به هر پروفایل "default" یا "default-or-eui64" باشد، پیش‌فرض سراسری استفاده می‌شود. اگر پیش‌فرض مشخص نشده باشد، مقدار بازگشتی به ترتیب بسته به اینکه تنظیم هر پروفایل "default" است یا "default-or-eui64"، برابر با "stable-privacy" یا "eui64" خواهد بود.

ipv6.ra-timeout

در صورت عدم تعیین، مقدار پیش‌فرض به تنظیمات solicitation در sysctl بستگی دارد.

ipv6.dhcp-duid

در صورت عدم تعیین، مقدار پیش‌فرض "lease" است.

ipv6.dhcp-iaid

در صورت عدم تعیین، مقدار پیش‌فرض "ifname" است.

ipv6.dhcp-hostname-flags

در صورت عدم تعیین، از مقدار ۱ (fqdn-serv-update) استفاده می‌شود.

ipv6.dhcp-send-hostname

این که آیا هنگام دریافت اجاره، یک نام میزبان به سرور DHCP ارسال شود یا خیر. هنگامی که این ویژگی در اتصال مشخص نشده باشد، مقدار سراسری از پیکربندی NetworkManager استعلام می‌شود. اگر مقدار سراسری تنظیم نشده باشد، از مقدار ipv6.dhcp-send-hostname-deprecated که به طور پیش‌فرض true است برای سازگاری با گذشته استفاده می‌شود. در آینده این تغییر خواهد کرد و در صورت عدم وجود یک پیش‌فرض سراسری، همیشه به true بازمی‌گردد.

ipv6.dhcp-send-release

این که آیا کلاینت DHCP هنگام قطع کردن اتصال، پیام RELEASE را ارسال می‌کند یا خیر.

ipv6.dhcp-timeout

در صورت عدم تعیین، مقدار پیش‌فرض برای نوع رابط استفاده می‌شود.

ipv6.dns-priority

در صورت عدم تعیین یا صفر بودن، از ۵۰ برای پروفایل‌های VPN و از ۱۰۰ برای سایر پروفایل‌ها استفاده می‌شود.

ipv6.ip6-privacy

اگر ipv6.ip6-privacy تنظیم نشده باشد، از محتوای "/proc/sys/net/ipv6/conf/default/use_tempaddr" به عنوان آخرین گزینه بازگشتی استفاده می‌شود.

ipv6.temp-valid-lifetime

اگر ipv6.temp-valid-lifetime تنظیم نشده باشد، از محتوای "/proc/sys/net/ipv6/conf/default/temp_valid_lft" به عنوان آخرین گزینه بازگشتی استفاده می‌شود.

ipv6.temp-preferred-lifetime

اگر ipv6.temp-preferred-lifetime تنظیم نشده باشد، از محتوای "/proc/sys/net/ipv6/conf/default/temp_prefered_lft" به عنوان آخرین گزینه بازگشتی استفاده می‌شود.

ipv6.required-timeout

ipv6.route-metric

ipv6.route-table

در صورت عدم تعیین، مسیرها فقط به جدول اصلی اضافه می‌شوند. توجه داشته باشید که این به دلیل نحوه حذف مسیرهای اضافی از جدول‌ها توسط NetworkManager، با انتخاب صریح جدول اصلی ۲۵۴ متفاوت است.

loopback.mtu

اگر صریحاً روی 0 پیکربندی شود، MTU در حین فعال‌سازی دستگاه مجدداً پیکربندی نمی‌شود مگر اینکه به دلیل محدودیت‌های IPv6 لازم باشد. در صورت عدم تعیین، مقدار ارائه‌شده توسط DHCP/IPv6 SLAAC استفاده می‌شود یا MTU در حین فعال‌سازی مشخص‌نشده باقی می‌ماند.

macsec.offload

sriov.autoprobe-drivers

در صورت عدم تعیین، هنگام ایجاد VF در SR-IOV، درایورها به طور خودکار پویش می‌شوند.

sriov.preserve-on-down

برای انتخاب اینکه آیا پارامترهای SR-IOV هنگام غیرفعال شدن اتصال حفظ شوند یا خیر، روی 0 یا 1 تنظیم کنید. در صورت عدم تعیین، مقدار پیش‌فرض 0 است (پارامترها حفظ نمی‌شوند).

vpn.timeout

در صورت عدم تعیین، مقدار پیش‌فرض ۶۰ ثانیه استفاده می‌شود.

wifi.ap-isolation

در صورت عدم تعیین، جداسازی نقطه دسترسی (AP isolation) غیرفعال است.

wifi.cloned-mac-address

در صورت عدم تعیین، مقدار پیش‌فرض "preserve" است.

wifi.generate-mac-address-mask

wifi.mac-address-randomization

در صورت عدم تعیین، تصادفی‌سازی نشانی MAC غیرفعال است. این تنظیم به نفع wifi.cloned-mac-address منسوخ شده است.

wifi.mtu

اگر صریحاً روی 0 پیکربندی شود، MTU در حین فعال‌سازی دستگاه مجدداً پیکربندی نمی‌شود مگر اینکه به دلیل محدودیت‌های IPv6 لازم باشد. در صورت عدم تعیین، مقدار ارائه‌شده توسط DHCP/IPv6 SLAAC استفاده می‌شود یا مقدار پیش‌فرض 1500.

wifi.powersave

در صورت عدم تعیین، مقدار پیش‌فرض "ignore" استفاده خواهد شد.

wifi-sec.pmf

در صورت عدم تعیین، مقدار پیش‌فرض "optional" استفاده خواهد شد.

wifi-sec.fils

در صورت عدم تعیین، مقدار پیش‌فرض "optional" استفاده خواهد شد.

wifi.wake-on-wlan

wireguard.mtu

می‌توانید چندین بخش connection را با داشتن بخش‌های متفاوتی که نام همگی با "connection" شروع می‌شود پیکربندی کنید. مثال:

[connection]
ipv6.ip6-privacy=0
connection.autoconnect-ports=1
vpn.timeout=120
[connection-wifi-wlan0]
match-device=interface-name:wlan0
ipv4.route-metric=50
[connection-wifi-other]
match-device=type:wifi
ipv4.route-metric=55
ipv6.ip6-privacy=1

بخش‌های درون یک پرونده به ترتیب ظاهر شدن در نظر گرفته می‌شوند، با این استثنا که بخش [connection] همیشه در آخر در نظر گرفته می‌شود. در مثال بالا، این ترتیب به صورت [connection-wifi-wlan0]، [connection-wlan-other] و [connection] است. هنگام بررسی مقدار پیکربندی پیش‌فرض، بخش‌ها جستجو می‌شوند تا مقدار درخواستی پیدا شود. در مثال بالا، "ipv4.route-metric" برای رابط wlan0 روی ۵۰ و برای تمام رابط‌های دیگر از نوع Wi-Fi روی ۵۵ تنظیم شده است. همچنین، دستگاه‌های Wi-Fi به طور پیش‌فرض نشانی‌های خصوصی IPv6 را فعال خواهند داشت، اما سایر دستگاه‌ها آن را غیرفعال خواهند داشت. توجه داشته باشید که "wlan0" نیز "ipv6.ip6-privacy=1" را دریافت می‌کند، زیرا با اینکه بخش "[connection-wifi-wlan0]" با دستگاه مطابقت دارد، حاوی آن ویژگی نیست و جستجو ادامه می‌یابد.

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

ویژگی‌های زیر نحوه اعمال یک بخش اتصال را بیشتر کنترل می‌کنند.

match-device

یک مشخصه اختیاری دستگاه که زمان اعمال بخش را محدود می‌کند. بخش “قالب فهرست دستگاه (Device List Format)” را برای مقادیر ممکن ببینید.

stop-match

یک مقدار بولی اختیاری که پیش‌فرض آن no است. اگر بخش مطابقت داشته باشد (بر اساس match-device)، بخش‌های بعدی حتی اگر ویژگی مورد نظر وجود نداشته باشد در نظر گرفته نخواهند شد. در مثال بالا، اگر [connection-wifi-wlan0] مقدار stop-match را روی yes تنظیم کرده بود، دستگاه wlan0 ویژگی ipv6.ip6-privacy را نامشخص نگه می‌داشت. یعنی جستجو برای این ویژگی در بخش‌های اتصال [connection-wifi-other] یا [connection] ادامه نمی‌یافت.

حاوی پیکربندی دائمی مخصوص هر دستگاه است.

مثال:

[device]
match-device=interface-name:eth3
managed=1

ویژگی‌های زیر را می‌توان برای هر دستگاه پیکربندی کرد.

managed

یک مقدار بولی که مشخص می‌کند آیا دستگاه مدیریت می‌شود یا خیر. یک دستگاه را می‌توان از طریق قواعد udev (متغیر ENV{NM_UNMANAGED}) یا از طریق تنظیم افزایه‌ها (keyfile.unmanaged-devices) به عنوان مدیریت‌نشده علامت‌گذاری کرد. این روش دیگری برای این کار است. توجه داشته باشید که این پیکربندی را می‌توان در زمان اجرا از طریق D-Bus نادیده گرفت. همچنین، اولویت بالاتری نسبت به قواعد udev دارد.

carrier-wait-timeout

مهلت زمانی انتظار برای حامل را به میلی‌ثانیه مشخص می‌کند. مقدار پیش‌فرض ۶۰۰۰ میلی‌ثانیه است. این تنظیم به این دلیل وجود دارد که برخی درایورها یا سخت‌افزارها ممکن است زمان زیادی برای تشخیص اینکه آیا کابل متصل است نیاز داشته باشند.

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

همچنین، در زمان راه‌اندازی، تا زمانی که دستگاه فاقد حامل است، NetworkManager دستگاه را برای این مدت زمان مشغول در نظر می‌گیرد. این کار سیگنال startup-complete و NetworkManager-wait-online را به تأخیر می‌اندازد. پیکربندی بیش از حد بالای این مقدار به معنای مسدود کردن NetworkManager-wait-online برای مدتی بیش از حد لازم هنگام راه‌اندازی با کابل جدا شده است. پیکربندی بسیار پایین آن، به این معنی است که NetworkManager وضعیت startup-complete را خیلی زود اعلام می‌کند، با اینکه حامل در شرف برقراری است و فعال‌سازی خودکار آغاز می‌شود. توجه داشته باشید که اگر یک پروفایل فقط دارای پیکربندی IP ایستا باشد یا پیکربندی لایه ۳ غیرفعال باشد، می‌تواند حتی بدون وجود حامل بر روی دستگاه به طور خودکار متصل شود. هنگامی که چنین پروفایلی به وضعیت کاملاً فعال برسد، حتی اگر دستگاه هنوز حامل نداشته باشد، وضعیت startup-complete محقق‌شده در نظر گرفته می‌شود.

ignore-carrier

دستگاه‌هایی را مشخص می‌کند که NetworkManager وضعیت حامل را برای آن‌ها (به طور جزئی) نادیده می‌گیرد. به طور معمول، برای انواع دستگاه‌هایی که از carrier-detect پشتیبانی می‌کنند، مانند Ethernet و InfiniBand، برنامه NetworkManager تنها زمانی اجازه می‌دهد اتصالی روی دستگاه فعال شود که حامل وجود داشته باشد (یعنی کابل متصل باشد)، و اگر حامل برای بیش از چند ثانیه قطع شود، دستگاه را غیرفعال می‌کند.

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

توجه داشته باشید که ویژگی "carrier" در NMDevices و رابط‌های D-Bus دستگاه همچنان وضعیت واقعی دستگاه را منعکس خواهد کرد؛ فقط NetworkManager از این اطلاعات استفاده نخواهد کرد.

انواع Master مانند bond، bridge و team حامل را به طور پیش‌فرض نادیده می‌گیرند، در حالی که سایر انواع دستگاه‌ها به طور پیش‌فرض به تغییرات حامل واکنش نشان می‌دهند.

این تنظیم، تنظیم منسوخ‌شده main.ignore-carrier در بالا را بازنویسی می‌کند.

check-connectivity

یک مقدار بولی که مشخص می‌کند آیا NetworkManager بررسی اتصال را برای این دستگاه انجام می‌دهد یا خیر. مقدار پیش‌فرض yes است.

اگر بررسی اتصال به طور سراسری با استفاده از تنظیم connectivity.enabled غیرفعال شده باشد، این تنظیم هیچ کاری انجام نمی‌دهد.

keep-configuration

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

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

اگر این اتصال ایجادشده با یکی از اتصالات دائمی موجود مطابقت داشته باشد، اتصال دائمی فعال می‌شود. اگر هیچ تطبیقی وجود نداشته باشد، اتصال ایجادشده به صورت "external" فعال می‌شود، به این معنی که اتصال فعال در نظر گرفته می‌شود، اما NetworkManager در عمل به رابط دست نمی‌زند.

امکان غیرفعال کردن این رفتار با تنظیم keep-configuration روی no وجود دارد. در این حالت، NetworkManager در زمان راه‌اندازی همیشه تلاش می‌کند مناسب‌ترین اتصال دائمی (اتصالی با بالاترین autoconnect-priority یا در صورت برابری، اتصالی که اخیراً فعال شده است) را فعال کند.

توجه داشته باشید که هنگامی که NetworkManager مجدداً راه‌اندازی می‌شود، وضعیت قبلی را در /run/NetworkManager ذخیره می‌کند؛ به ویژه شناسه UUID اتصالی را که قبلاً فعال بوده ذخیره می‌کند تا بتوان آن را پس از راه‌اندازی مجدد دوباره فعال کرد. بنابراین، keep-configuration هیچ تاثیری در راه‌اندازی مجدد سرویس ندارد.

allowed-connections

فهرستی از اتصالاتی که می‌توانند بر روی دستگاه فعال شوند. بخش “قالب فهرست اتصال (Connection List Format)” را برای نحو چگونگی تعیین یک اتصال ببینید. اگر این گزینه مشخص نشود، تمام اتصالات به شرط مطابقت نوع اتصال و سایر تنظیمات، می‌توانند به طور بالقوه بر روی دستگاه فعال شوند.

یک مورد کاربرد مهم برای این امر، فیلتر کردن این موضوع است که کدام اتصالات را می‌توان بر اساس نحوه ایجاد آن‌ها فعال کرد؛ کلمه کلیدی origin را در بخش “قالب فهرست اتصال (Connection List Format)” ببینید.

wifi.scan-rand-mac-address

تصادفی‌سازی نشانی MAC یک دستگاه Wi-Fi را در حین پویش پیکربندی می‌کند. مقدار پیش‌فرض yes است که در این صورت از یک نشانی MAC تصادفی با مدیریت محلی استفاده می‌شود. از تنظیم wifi.scan-generate-mac-address-mask می‌توان برای اثرگذاری بر نشانی MAC تولیدشده جهت استفاده از OUIهای فروشندگان خاص استفاده کرد. در صورت غیرفعال بودن، نشانی MAC در حین پویش بدون تغییر به هر آنچه پیکربندی شده باقی می‌ماند. برای نشانی MAC پیکربندی‌شده در حالی که دستگاه متصل است، در عوض تنظیم هر اتصال wifi.cloned-mac-address را ببینید.

wifi.backend

بک‌اند Wi-Fi مورد استفاده برای دستگاه را مشخص می‌کند. در حال حاضر از wpa_supplicant و iwd (آزمایشی) پشتیبانی می‌شود. در صورت عدم تعیین، مقدار پیش‌فرض "wpa_supplicant" است.

wifi.scan-generate-mac-address-mask

مانند تنظیمات مربوط به هر اتصال ethernet.generate-mac-address-mask و wifi.generate-mac-address-mask، این مورد می‌تواند برای پیکربندی نشانی‌های MAC تولیدشده در حین پویش استفاده شود. برای جزئیات به nm-settings-nmcli(5) مراجعه کنید.

wifi.iwd.autoconnect

یک مقدار بولی. اگر wifi.backend برابر با iwd باشد، تنظیم این مقدار روی false سازوکار اتصال خودکار IWD را برای این دستگاه اجباراً غیرفعال می‌کند و اتصالات فقط توسط NetworkManager برقرار می‌شوند، چه توسط کلاینت دستور داده شود و چه به طور خودکار. رها کردن آن روی true (پیش‌فرض) از برقراری خودکار اتصالات توسط NetworkManager جلوگیری می‌کند و به IWD اجازه می‌دهد از منطق رتبه‌بندی و پویش شبکه خود برای تصمیم‌گیری در مورد بهترین شبکه‌ها جهت اتصال خودکار بعدی استفاده کند. تنظیمات autoconnect-priority و autoconnect-retries در اتصالات نادیده گرفته خواهند شد. سایر تنظیمات مانند permissions یا multi-connect ممکن است با تلاش‌های اتصال IWD تداخل داشته باشند.

sriov-num-vfs

تعداد عملکردهای مجازی (VF) را برای فعال‌سازی در یک دستگاه فیزیکی PCI که از مجازی‌سازی ورودی/خروجی تک‌ریشه (SR-IOV) پشتیبانی می‌کند مشخص می‌کند.

بخش [device] مشابه بخش [connection] عمل می‌کند. یعنی می‌توان چندین بخش را که همگی با پیشوند "device" شروع می‌شوند تعیین کرد. تنظیمات "match-device" و "stop-match" برای مطابقت دادن یک بخش دستگاه با یک دستگاه در دسترس هستند. ترتیب چندین بخش نیز در یک پرونده از بالا به پایین است و پرونده‌های بعدی تنظیمات قبلی را بازنویسی می‌کنند. بخش “بخش‌ها (Sections)” زیر بخش “بخش اتصال (CONNECTION SECTION)” را برای جزئیات ببینید.

این بخش عملکرد اختیاری بررسی اتصال NetworkManager را کنترل می‌کند. این قابلیت به NetworkManager امکان می‌دهد تشخیص دهد که آیا سیستم واقعاً می‌تواند به اینترنت دسترسی داشته باشد یا اینکه پشت یک پرتال محصور (captive portal) قرار دارد.

بررسی اتصال دو هدف را دنبال می‌کند. از یک سو، وضعیت اتصال را روی D-Bus نشان می‌دهد که سایر برنامه‌ها می‌توانند از آن استفاده کنند. به عنوان مثال، دستیار پرتال Gnome از این به عنوان نشانه‌ای برای نمایش صفحه ورود پرتال محصور استفاده می‌کند. کاربرد دیگر این است که به مسیر پیش‌فرض دستگاه‌های فاقد اتصال سراسری، جریمه‌ای معادل ۲۰۰۰۰+ به route-metric اعمال می‌شود. هدف از این کار دادن یک مسیر پیش‌فرض بهتر به دستگاه‌هایی است که اتصال سراسری دارند. برای مثال، هنگام اتصال به WWAN و یک شبکه Wi-Fi که پشت پرتال محصور است، WWAN همچنان تا زمان ورود به سیستم در اولویت قرار می‌گیرد.

توجه داشته باشید که توزیع شما ممکن است /proc/sys/net/ipv4/conf/*/rp_filter را روی فیلتر کردن سخت‌گیرانه تنظیم کرده باشد. این امر با بررسی اتصال به ازای هر دستگاه که از SO_BINDDEVICE برای ارسال درخواست‌ها روی تمام دستگاه‌ها استفاده می‌کند، به خوبی کار نمی‌کند. تنظیم دقیق rp_filter هر پاسخی را رد می‌کند و بررسی اتصال روی همه مسیرها به جز بهترین مسیر با شکست مواجه می‌شود.

enabled

یک مقدار بولی که نشان می‌دهد آیا بررسی اتصال فعال است یا خیر. توجه داشته باشید که برای فعال کردن بررسی اتصال، یک uri معتبر نیز باید پیکربندی شود. این مقدار به طور پیش‌فرض true است، اما از آنجا که uri به طور پیش‌فرض تنظیم نشده است، بررسی اتصال ممکن است غیرفعال باشد. هدف اصلی این گزینه داشتن یک پرچم واحد برای غیرفعال کردن بررسی اتصال است. توجه داشته باشید که این تنظیم را می‌توان از طریق API مربوط به D-Bus در زمان اجرا نیز تنظیم کرد. در این صورت، مقدار در پرونده /var/lib/NetworkManager/NetworkManager-intern.conf ذخیره می‌شود.

uri

نشانی اینترنتی (URI) یک صفحه وب برای درخواست دوره‌ای در هنگام بررسی اتصال. این صفحه باید هدر "X-NetworkManager-Status" را با مقدار "online" برگرداند. متناوباً، محتوای بدنه آن باید روی "NetworkManager is online" تنظیم شده باشد. بررسی محتوای بدنه را می‌توان با گزینه response کنترل کرد. اگر این گزینه خالی باشد یا وجود نداشته باشد، بررسی اتصال غیرفعال است.

interval

به ثانیه مشخص می‌شود؛ کنترل می‌کند که هر چند وقت یک‌بار در صورت وجود اتصال شبکه، اتصال بررسی شود. اگر روی 0 تنظیم شود، بررسی اتصال غیرفعال می‌شود. در صورت عدم وجود، پیش‌فرض ۳۰۰ ثانیه است.

timeout

به ثانیه مشخص می‌شود؛ کنترل می‌کند چه مدت قبل از اینکه اتصال به عنوان محدود علامت‌گذاری شود، منتظر پاسخ بماند. در صورت عدم وجود، پیش‌فرض ۲۰ ثانیه است.

response

در صورت تنظیم، کنترل می‌کند که NetworkManager هنگام درخواست URI برای بررسی اتصال، به دنبال چه محتوایی در بدنه بگردد. توجه داشته باشید که این فقط بررسی می‌کند که پاسخ HTTP با متن مشخص‌شده شروع شود، و رشته دقیق را مقایسه نمی‌کند. این رفتار ممکن است در آینده تغییر کند، بنابراین از اتکا به آن خودداری کنید. در صورت عدم وجود، پاسخ به طور پیش‌فرض "NetworkManager is online" است. در صورت تنظیم روی خالی، انتظار می‌رود سرور HTTP با کد وضعیت 204 پاسخ دهد یا هیچ داده‌ای ارسال نکند.

این بخش تنظیمات DNS را مشخص می‌کند که به صورت سراسری اعمال می‌شوند. آن‌ها گزینه‌های معادل تعریف‌شده در اتصالات منفرد را بازنویسی می‌کنند و باعث نادیده گرفته شدن آن‌ها می‌شوند. اگر یک بخش [global-dns-domain-*] تعریف شده باشد، اما این بخش تعریف نشده باشد، یک بخش خالی [global-dns] در نظر گرفته می‌شود و بدین ترتیب پیکربندی‌های خاص اتصال نیز بازنویسی می‌شوند.

searches

فهرستی از دامنه‌های جستجو که باید در حین جستجوی نام میزبان استفاده شوند.

options

فهرستی از گزینه‌ها که باید به تحلیل‌گر نام میزبان ارسال شوند.

resolve-mode

رشته‌ای که نشان می‌دهد سرورهای DNS به‌دست‌آمده از پیکربندی سراسری و اتصالات چگونه باید استفاده شوند. backup - نشان می‌دهد که آن‌ها می‌توانند آزادانه ادغام شده و برای همان اهداف استفاده شوند. prefer - استفاده از سرورهای DNS به‌دست‌آمده از اتصالات را برای پرس‌وجوهای عمومی که زیردامنه‌های دامنه‌های تنظیم‌شده توسط اتصال نیستند ممنوع می‌کند. exclusive - استفاده از سرورهای DNS اتصال را برای هرگونه پرس‌وجو ممنوع می‌کند. در حال حاضر فقط برای افزایه Dnsconfd کاربرد دارد.

certification-authority

رشته‌ای که مسیر مطلق به بسته گواهی‌های CA را مشخص می‌کند که باید برای اعتبارسنجی گواهی‌های ارائه‌شده توسط سرورهای DNS هنگام استفاده از DNS رمزگذاری‌شده استفاده شوند. در حال حاضر فقط برای افزایه Dnsconfd کاربرد دارد.

بخش‌هایی با نامی که با پیشوند "global-dns-domain-" شروع می‌شوند به کاربر اجازه می‌دهند پیکربندی سراسری DNS را برای دامنه‌های خاص تعریف کند. بخشی از نام بخش بعد از "global-dns-domain-" نام دامنه‌ای را که بخش به آن اعمال می‌شود مشخص می‌کند (به عنوان مثال، یک بخش می‌تواند "global-dns-domain-foobar.com" نامیده شود). دامنه‌های خاص‌تر نسبت به دامنه‌های با ویژگی کمتر اولویت دارند و دامنه پیش‌فرض با نویسه عمومی "*" نشان داده می‌شود. برای معتبر بودن، دامنه‌های سراسری DNS باید شامل بخشی برای دامنه پیش‌فرض "*" باشند. هنگامی که دامنه‌های سراسری DNS معتبر باشند، سرورهای نام و دامنه‌های تعریف‌شده به صورت سراسری، موارد مربوط به اتصالات فعال را بازنویسی می‌کنند. اگر هر دامنه سراسری DNS تعریف شده باشد اما بخش [global-dns] تعریف نشده باشد، یک بخش خالی [global-dns] در نظر گرفته می‌شود و بنابراین پیکربندی‌های خاص اتصال آن نیز بازنویسی می‌شوند.

servers

فهرستی از نشانی‌های سرورهای DNS که باید برای دامنه مورد نظر استفاده شوند. هر سرور را می‌توان به صورت یک نشانی IP ساده یا با نحو URI مشخص کرد. هنگامی که به صورت URI مشخص می‌شود، قالب‌های زیر پشتیبانی می‌شوند:
dns+udp://ADDRESS[:PORT] : DNS
dns+tls://ADDRESS[:PORT][#SERVERNAME] : DNS روی TLS

ADDRESS یک نشانی IPv4 یا IPv6 است. هنگامی که IPv6 است، باید در کروشه ('[' و ']') محصور شود. هنگامی که یک نشانی پیوند-محلی IPv6 است، نشانی باید با علامت درصد ('%') و نام رابط دنبال شود.

options

فهرستی از گزینه‌های DNS مخصوص دامنه. در حال حاضر استفاده نمی‌شود.

این یک بخش ویژه است که حاوی گزینه‌هایی است که بر پرونده پیکربندی حاوی آن گزینه اعمال می‌شوند.

enable

پیش‌فرض "true" است. اگر "false" باشد، از پرونده پیکربندی در حین بارگذاری صرف‌نظر می‌شود. توجه داشته باشید که پرونده پیکربندی اصلی NetworkManager.conf را نمی‌توان غیرفعال کرد.
# همیشه از بارگذاری پرونده پیکربندی صرف‌نظر شود
[.config]
enable=false

همچنین می‌توانید با نسخه NetworkManager تطبیق دهید. به عنوان مثال پیکربندی‌های زیر معتبر هستند:

# فقط در نسخه 1.0.6 بارگذاری شود
[.config]
enable=nm-version:1.0.6
# در تمام نسخه‌های 1.0.x بارگذاری شود، اما نه 1.2.x
[.config]
enable=nm-version:1.0
# فقط در نسخه‌های >= 1.1.6 بارگذاری شود. این با نسخه
# 1.2.0 یا 1.4.4 تطبیق ندارد. فقط رقم آخر در نظر گرفته می‌شود.
[.config]
enable=nm-version-min:1.1.6
# فقط در نسخه‌های >= 1.2 بارگذاری شود. بر خلاف مثال
# قبلی، این با 1.2.0، 1.2.10، 1.4.4 و غیره نیز مطابقت دارد.
[.config]
enable=nm-version-min:1.2
# تطبیق با حداکثر نسخه مجاز. این مثال با نسخه‌های
# 1.2.0، 1.2.2، 1.2.4 مطابقت دارد. باز هم، فقط رقم آخر نسخه
# اجازه دارد کوچکتر باشد. بنابراین با 1.1.10 مطابقت ندارد.
[.config]
enable=nm-version-max:1.2.6

همچنین می‌توانید با مقدار متغیر محیطی NM_CONFIG_ENABLE_TAG تطبیق دهید، مانند:

# پرونده فقط هنگام اجرای NetworkManager با متغیر
# محیطی "NM_CONFIG_ENABLE_TAG=TAG1" بارگذاری شود
[.config]
enable=env:TAG1

بیش از یک تطبیق را می‌توان مشخص کرد. اگر یکی از گزاره‌ها مطابقت داشته باشد ("or") پیکربندی فعال خواهد شد. پیشوند ویژه "except:" را می‌توان برای نقیض کردن تطبیق استفاده کرد. توجه داشته باشید که اگر یک گزاره except مطابقت داشته باشد، کل پیکربندی غیرفعال خواهد شد. به عبارت دیگر، یک گزاره except همیشه بر سایر گزاره‌ها اولویت دارد. اگر تنظیم فقط شامل تطبیق‌های "except:" باشد و هیچ‌یک از شرایط منفی برآورده نشود، پیکربندی همچنان فعال خواهد بود.

# فعال‌سازی پیکربندی در صورت وجود متغیر محیطی
# یا زمانی که نسخه حداقل 1.2.0 باشد.
[.config]
enable=env:TAG2,nm-version-min:1.2
# فعال‌سازی پیکربندی برای نسخه >= 1.2.0، اما غیرفعال
# کردن آن زمانی که متغیر محیطی روی "TAG3" تنظیم شده باشد
[.config]
enable=except:env:TAG3,nm-version-min:1.2
# فعال‌سازی پیکربندی در >= 1.3، >= 1.2.6 و >= 1.0.16.
# زمانی مفید است که قابلیت خاصی تنها از آن نسخه‌ها به بعد موجود باشد.
[.config]
enable=nm-version-min:1.3,nm-version-min:1.2.6,nm-version-min:1.0.16

افزایه‌های تنظیمات برای خواندن و نوشتن پروفایل‌های اتصال. تعداد افزایه‌های موجود وابسته به توزیع است.

keyfile

افزایه keyfile افزایه عمومی است که از تمام انواع اتصال و قابلیت‌هایی که NetworkManager دارد پشتیبانی می‌کند. این افزایه پرونده‌ها را در قالبی مشابه .ini در /etc/NetworkManager/system-connections می‌نویسد. برای جزئیات در مورد قالب پرونده، nm-settings-keyfile(5) را ببینید.

پرونده اتصال ذخیره‌شده ممکن است حاوی گذرواژه‌ها، داده‌های محرمانه و کلیدهای خصوصی به صورت متن ساده باشد، بنابراین فقط برای کاربر ارشد قابل خواندن خواهد بود و افزایه پرونده‌هایی را که توسط هر کاربر یا گروهی غیر از کاربر ارشد قابل خواندن یا نوشتن باشند نادیده می‌گیرد. بخش "Secret flag types" را در nm-settings-nmcli(5) برای نحوه اجتناب از ذخیره گذرواژه‌ها به صورت متن ساده ببینید.

این افزایه همیشه فعال است و به طور خودکار برای ذخیره هر اتصالی که توسط هیچ افزایه فعال دیگری پشتیبانی نمی‌شود استفاده خواهد شد.

ifcfg-rh

این افزایه اکنون منسوخ شده است؛ در توزیع‌های Fedora و Red Hat Enterprise Linux می‌توان از آن برای خواندن و نوشتن پیکربندی از پرونده‌های استاندارد /etc/sysconfig/network-scripts/ifcfg-* استفاده کرد. در حال حاضر از خواندن اتصالات Ethernet، Wi-Fi، InfiniBand، VLAN، Bond، Bridge و Team پشتیبانی می‌کند. فعال کردن ifcfg-rh به طور ضمنی افزایه ibft را در صورت موجود بودن فعال می‌کند. این را می‌توان با افزودن no-ibft غیرفعال کرد. برای اطلاعات بیشتر در مورد قالب پرونده ifcfg، پرونده‌های /usr/share/doc/initscripts/sysconfig.txt و nm-settings-ifcfg-rh(5) را ببینید.

ifupdown

این افزایه در توزیع‌های Debian و Ubuntu استفاده می‌شود و اتصالات Ethernet و Wi-Fi را از /etc/network/interfaces می‌خواند.

این افزایه فقط‌خواندنی است؛ هر اتصالی (از هر نوع) که در حین استفاده از این افزایه از درون NetworkManager اضافه شود، در عوض با استفاده از افزایه keyfile ذخیره خواهد شد.

ibft, no-ibft

این افزایه‌ها منسوخ شده‌اند و انتخاب آن‌ها تاثیری ندارد. این مورد اکنون توسط nm-initrd-generator مدیریت می‌شود.

ifcfg-suse, ifnet

این افزایه‌ها منسوخ شده‌اند و انتخاب آن‌ها تاثیری ندارد. به جای آن‌ها باید از افزایه keyfile استفاده شود.

گزینه‌های پیکربندی main.no-auto-default، main.ignore-carrier، keyfile.unmanaged-devices، connection*.match-device و device*.match-device دستگاه‌ها را بر اساس فهرستی از تطبیق‌ها انتخاب می‌کنند. دستگاه‌ها را می‌توان با استفاده از قالب زیر مشخص کرد:

*

با تمام دستگاه‌ها مطابقت دارد.

IFNAME

تطبیق حساس به حروف کوچک و بزرگ با نام رابط دستگاه. از الگوهای Globbing پشتیبانی نمی‌شود.

HWADDR

تطبیق با نشانی MAC دائمی دستگاه. از الگوهای Globbing پشتیبانی نمی‌شود.

interface-name:IFNAME, interface-name:~IFNAME

تطبیق حساس به حروف کوچک و بزرگ با نام رابط دستگاه. الگوهای ساده Globbing با * و ? پشتیبانی می‌شوند. محدوده‌ها و اسکیپ کردن کاراکترها پشتیبانی نمی‌شوند.

interface-name:=IFNAME

تطبیق حساس به حروف کوچک و بزرگ با نام رابط دستگاه. الگوهای Globbing غیرفعال است و IFNAME به صورت تحت‌اللفظی در نظر گرفته می‌شود.

mac:HWADDR

تطبیق با نشانی MAC دائمی دستگاه. از الگوهای Globbing پشتیبانی نمی‌شود.

s390-subchannels:HWADDR

تطبیق دستگاه بر اساس نشانی زیرکانال. از الگوهای Globbing پشتیبانی نمی‌شود.

type:TYPE

تطبیق با نوع دستگاه. نام‌های معتبر نوع مواردی هستند که توسط "nmcli -f GENERAL.TYPE device show"; گزارش می‌شوند. از الگوهای Globbing پشتیبانی نمی‌شود.

driver:DRIVER

تطبیق با درایور دستگاه طبق گزارش "nmcli -f GENERAL.DRIVER,GENERAL.DRIVER-VERSION device show". مقدار "DRIVER" باید دقیقاً با نام درایور مطابقت داشته باشد و از Globbing پشتیبانی نمی‌کند. در صورت تمایل می‌توان نسخه درایور را جداشده با '/' مشخص کرد. برای نسخه، از Globbing پشتیبانی می‌شود.

dhcp-plugin:DHCP

تطبیق با افزایه DHCP پیکربندی‌شده "main.dhcp".

except:SPEC

تطبیق منفی یک دستگاه. SPEC باید صریحاً با یک پیشوند مانند interface-name: تعیین صلاحیت شود. یک تطبیق منفی اولویت بالاتری نسبت به تطبیق‌های مثبت بالا دارد.

اگر فهرستی فقط شامل تطبیق‌های منفی باشد، رفتار همانند زمانی است که تطبیق با همه نیز وجود داشته باشد. این بدان معناست که اگر هیچ‌یک از تطبیق‌های منفی برآورده نشود، نتیجه کلی همچنان یک تطبیق مثبت است. یعنی "except:interface-name:eth0" همانند "*,except:interface-name:eth0" است.

SPEC[,;]SPEC

چندین مشخصه را می‌توان با کاما یا نقطه‌ویرگول به هم متصل کرد. ترتیب اهمیتی ندارد زیرا تطبیق‌ها یا شامل‌شونده هستند یا منفی (except:)، که تطبیق‌های منفی اولویت بالاتری دارند.

نویسه بک‌اسلش برای اسکیپ کردن جداکننده‌های ';' و ',' و بیان کاراکترهای ویژه مانند خط جدید ('\n')، تب ('\t')، فاصله ('\s') و بک‌اسلش ('\\') پشتیبانی می‌شود. الگوهای Globbing نام‌های رابط را نمی‌توان اسکیپ کرد. فاصله خالی جداکننده نیست اما بین دو مشخصه حذف خواهد شد (مگر اینکه به صورت '\s' اسکیپ شود).

مثال:

interface-name:em4
mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2
interface-name:vboxnet*,except:interface-name:vboxnet2
*,except:mac:00:22:68:1c:59:b1

اتصالات را می‌توان با استفاده از قالب زیر مشخص کرد:

*

با تمام اتصالات مطابقت دارد.

uuid:UUID

تطبیق اتصال با UUID، برای مثال "uuid:83037490-1d17-4986-a397-01f1db3a7fc2"

id:ID

تطبیق اتصال با نام آن.

origin:ORIGIN

تطبیق اتصال بر اساس منشأ، ذخیره‌شده در برچسب org.freedesktop.NetworkManager.origin تنظیمات کاربر. برای مثال، از "except:origin:nm-initrd-generator" برای جلوگیری از فعال‌سازی اتصالات ایجادشده توسط مولد initrd استفاده کنید.

except:SPEC

تطبیق منفی یک اتصال. یک تطبیق منفی اولویت بالاتری نسبت به تطبیق‌های مثبت بالا دارد.

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

SPEC[,;]SPEC

چندین مشخصه را می‌توان با کاما یا نقطه‌ویرگول به هم متصل کرد. ترتیب اهمیتی ندارد زیرا تطبیق‌ها یا شامل‌شونده هستند یا منفی (except:)، که تطبیق‌های منفی اولویت بالاتری دارند.

نویسه بک‌اسلش برای اسکیپ کردن جداکننده‌های ';' و ',' و بیان کاراکترهای ویژه مانند خط جدید ('\n')، تب ('\t')، فاصله ('\s') و بک‌اسلش ('\\') پشتیبانی می‌شود. فاصله خالی جداکننده نیست اما بین دو مشخصه حذف خواهد شد (مگر اینکه به صورت '\s' اسکیپ شود).

NetworkManager(8), nmcli(1), nmcli-examples(7), nm-online(1), nm-settings-nmcli(5), nm-applet(1), nm-connection-editor(1)

1.
dnsconfd
NetworkManager 1.58.1