| RESOLVCONF(8) | System Manager's Manual | RESOLVCONF(8) |
نام (NAME)
resolvconf —
چارچوب
مدیریت
اطلاعات
سرورهای
نام و فایل
resolv.conf
خلاصه دستور (SYNOPSIS)
resolvconf -I
resolvconf [-m
metric] [-p]
[-x] -a
key
<file
resolvconf -C
pattern resolvconf
-c pattern
resolvconf [-f]
-d key
resolvconf [-x]
-iLlp pattern
resolvconf -u
resolvconf --version
توضیحات (DESCRIPTION)
دستور
resolvconf
فایلهای
resolv.conf(5)
را از چندین
منبع،
مانند
کلاینتهای
DHCP و VPN مدیریت
میکند.
بهطور
سنتی،
میزبان
تنها یک
کلاینت
اجرا
میکند و
همان،
/etc/resolv.conf را
بهروزرسانی
میکند.
سیستمهای
مدرنتر
معمولاً
دارای
رابطهای
سیمی و
بیسیم
هستند و هیچ
تضمینی
وجود ندارد
که هر دو روی
یک شبکه
باشند. با
پیدایش VPN و
سایر انواع
دیمنهای
شبکه،
اکنون
مؤلفههای
متعددی بر
سر محتوای
/etc/resolv.conf
رقابت
میکنند.
resolvconf این
مشکل را با
دادن امکان
ارسال فایل
resolv.conf(5)
توسط
دیمنها به
resolvconf از
طریق
stdin(4) با
آرگومان
-a key به
جای
دستکاری
مستقیم
فایلسیستم
حل میکند.
سپس resolvconf
فایل /etc/resolv.conf
را به
بهترین
شکلی که
تشخیص
میدهد
بهروزرسانی
میکند. اگر
/etc/resolv.conf از
قبل وجود
داشته باشد
و خط اول آن
با امضای
مورد
انتظار
مطابقت
نداشته
باشد، resolvconf
از
بهروزرسانی
آن خودداری
خواهد کرد،
مگر اینکه
دستور
بهروزرسانی
-u داده
شده باشد.
هنگامی که
یک
تحلیلگر
محلی به جز libc
نصب شده
باشد،
مانند
dnsmasq(8) یا
named(8),
آنگاه
resolvconf
فایلهایی
را فراهم
میکند که
تحلیلگر
باید برای
استفاده از
آنها
پیکربندی
شود.
در
اصل، resolvconf
یک
ذخیرهساز
کلید/مقدار
برای
فایلهای
resolv.conf است.
هر مدخل
باید یک key
منحصربهفرد
داشته باشد
و بهتر است
بهصورت
interface.protocol
بیان شود تا
بهسادگی
مشخص گردد
فایل resolv.conf
از کجا آمده
است. این کار
همچنین
امکان
استفاده از
تطبیق الگو
مانند
interface.*
را برای
مطابقت با
تمام
پروتکلهای
در حال اجرا
روی آن رابط
فراهم
میسازد.
بهعنوان
مثال، یک
سیستم
امروزی
احتمالاً
پروتکلهای
DHCP، RA و DHCPv6 را
اجرا
میکند که
میتوانند
از
برنامههای
جداگانه یا
یک برنامه
مجری چندین
پروتکل
باشند. با
این حال،
این یک
الزام قطعی
نیست؛ resolvconf
با هر نام
کلیدی کار
خواهد کرد و
در خارج از
resolvconf باید
به عنوان یک
مقدار مبهم
با آن رفتار
شود.
resolvconf
میتواند
یک resolv.conf را
به عنوان
خصوصی و در
صورت تمایل
غیرقابل
جستجو
علامتگذاری
کند. این
بدان
معناست که
سرورهای
نام
فهرستشده
در آن resolv.conf
تنها برای
پرسوجوهای
مربوط به
دامنه/جستجوی
فهرستشده
در همان
فایل
استفاده
میشوند و
در صورت
غیرقابل
جستجو
بودن،
دامنه/جستجوی
فهرستشده
از فهرست
جستجوی
سراسری
تعریفشده
در /etc/resolv.conf
مستثنی
میشوند.
این ویژگی
فقط زمانی
کار میکند
که یک
تحلیلگر
محلی به جز libc
نصب شده
باشد. برای
چگونگی
پیکربندی
resolvconf جهت
استفاده از
یک سرور نام
محلی و نحوه
حذف علامت
خصوصی، به
resolvconf.conf(5)
مراجعه
کنید.
resolvconf
میتواند
یک resolv.conf را
به عنوان
اختصاصی
علامتگذاری
کند. در این
حالت تنها
آخرین کلید
اختصاصی
برای
پردازش
استفاده
میشود، در
غیر این
صورت همه
کلیدها
پردازش
میگردند.
هنگامی که
یک منبع
پیکربندی
از بین
میرود،
مانند قطع
شدن یک رابط
یا متوقف
شدن VPN، باید
resolvconf را با
آرگومانهای
-d key
فراخوانی
کند تا فایل
resolv.conf ای را
که قبلاً
اضافه کرده
بود
پاکسازی
نماید. برای
سیستمهایی
که از مفهوم
پایداری
پیکربندی
در زمان
تعلیق منبع
پشتیبانی
میکنند
(مانند قطع
شدن سیگنال
حامل)، باید
در عوض resolvconf
را با
آرگومانهای
-C key
برای منسوخ
کردن مدخل و
با -c key
برای
فعالسازی
مجدد مدخل
هنگام
بازگشت
دوباره آن
فراخوانی
کرد. این کار
تنها بر
ترتیبی که
مدخلهای
resolv.conf
پردازش
میشوند
تأثیر
میگذارد.
در اینجا چند گزینه برای دستورات فوق آورده شده است:
-f- نادیده گرفتن مدخلهای ناموجود resolv.conf. این گزینه در واقع فقط برای حذف کردن کاربرد دارد.
-mmetric- تنظیم متریک مدخل resolv.conf هنگام افزودن آن؛ پیشفرض 0 است. متریکهای پایینتر اولویت دارند. این امر بر ترتیب پیشفرض مدخلها هنگام فهرستبندی تأثیر میگذارد.
-p[pattern]- اگر دستور
-aداده شده باشد، resolv.conf را به عنوان خصوصی علامتگذاری میکند، در غیر این صورت مدخلهای resolv.conf که کلید آنها با pattern مطابقت دارد فهرست میشوند. اگر یک-pاضافی داده شود، resolv.conf به عنوان غیرقابل جستجو نیز علامتگذاری میگردد. -x- علامتگذاری resolv.conf به عنوان اختصاصی هنگام افزودن؛ در غیر این صورت فقط از آخرین کلید اختصاصی استفاده میشود.
resolvconf
دستورات
دیگری نیز
برای
کاربردهای
عمومی
دارد:
-i[pattern]- فهرست کردن
کلیدهای
ذخیرهشدهای
که
فایلهای
resolv.conf برای
آنها
موجود است،
با امکان
تطبیق
اختیاری با
pattern. اگر
ابتدا
گزینه
-Lداده شود، کلیدها پس از پسپردازش فهرست خواهند شد. -L[pattern]- فهرست کردن فایلهای resolv.conf موجود، پس از اعمال پسپردازش توسط پیکربندی resolvconf.conf(5). در صورت تعیین pattern, فایلهای مربوط به کلیدهایی که با آن مطابقت دارند فهرست میشوند.
-l[pattern]- فهرست کردن فایلهای resolv.conf موجود. در صورت تعیین pattern, فایلهای مربوط به کلیدهایی که با آن تطابق دارند فهرست میشوند.
-u- وادار کردن
resolvconfبه بهروزرسانی تمام مشترکین خود.resolvconfهنگام افزودن یک resolv.conf که با آنچه در حال حاضر برای آن کلید دارد یکسان باشد، مشترکین را بهروزرسانی نمیکند. --version- چاپ نسخه resolvconf در stdout.
resolvconf
همچنین
دستوراتی
دارد که
برای
استفاده
توسط
مشترکین آن
و در زمان
راهاندازی
سیستم
طراحی
شدهاند:
-I- مقداردهی
اولیه
دایرکتوری
وضعیت
/run/resolvconf. این
دستور باید
پس از
پاکسازی
دایرکتوری
وضعیت پایه
یا سوار شدن
آن به عنوان
یک
سیستمفایل
مبتنی بر
حافظه در
طول توالی
راهاندازی
اولیه، پیش
از اینکه هر
دیمنی فرصت
فراخوانی
resolvconfرا داشته باشد، اجرا شود. -R- چاپ دستور مورداستفاده برای راهاندازی مجدد یک سرویس.
-rservice- اگر service در حال اجرا باشد، آن را مجدداً راهاندازی میکند. اگر سرویس وجود نداشته باشد یا در حال اجرا نباشد مقدار صفر، و در غیر این صورت نتیجه راهاندازی مجدد سرویس بازگردانده میشود.
-v- چاپ متغیرهای DOMAINS، SEARCH و NAMESERVERS تا مشترک بتواند تحلیلگر را بهآسانی پیکربندی کند.
-V- مشابه
-v, با این تفاوت که فقط اطلاعات پیکربندیشده در resolvconf.conf(5) تنظیم میشوند.
ترتیب RESOLV.CONF (RESOLV.CONF ORDERING)
برای
اینکه resolvconf
بهطور
مؤثر کار
کند، باید
مدخلهای
resolv.conf را به
ترتیب صحیح
پردازش
نماید. resolvconf
ابتدا
کلیدهای
موجود در
فهرست
key_order
را پردازش
میکند،
سپس
مدخلهای
بدون متریک
و منطبق با
فهرست
dynamic_order
را، سپس
مدخلهای
دارای
متریک را به
ترتیب، و در
نهایت سایر
موارد را بر
اساس ترتیب
الفبایی
سیستمعامل
پردازش
میکند.
برای
جزئیات
بیشتر
درباره این
فهرستها
به
resolvconf.conf(5)
مراجعه
کنید.
پروتکلها (PROTOCOLS)
در اینجا چند برچسب پروتکل پیشنهادی برای استفاده در هر resolv.conf آورده شده است:
- dhcp
- پروتکل پیکربندی پویای میزبان (Dynamic Host Configuration Protocol).
- ppp
- پروتکل نقطه به نقطه (Point-to-Point Protocol).
- ra
- اعلان رهیاب در IPv6 (IPv6 Router Advertisement).
- dhcp6
- پروتکل پیکربندی پویای میزبان برای IPv6، نسخه ۶.
نکات پیادهسازی (IMPLEMENTATION NOTES)
اگر یک مشترک بیت اجرایی داشته باشد اجرا میشود، در غیر این صورت فرض میشود که یک اسکریپت شل است و در یک زیرپوسته به محیط جاری منبعدهی (source) میشود. این کار به این دلیل انجام میشود تا مشترکین سریع باقی بمانند و همچنین به زبان پوسته محدود نباشند.
مشترکین با قابلیت حمل بالا نباید از هیچ چیزی خارج از /bin و /sbin استفاده کنند؛ زیرا ممکن است /usr و سایر دایرکتوریها هنگام راهاندازی سیستم در دسترس نباشند. همچنین، تکیه بر ویژگیهای خاص یک پوسته توصیه نمیشود.
محیط (ENVIRONMENT)
- IF_METRIC
- اگر گزینه
-mداده نشده باشد، از IF_METRIC برای متریک استفاده میشود. - IF_PRIVATE
- فایل resolv.conf را به عنوان خصوصی علامتگذاری میکند.
- IF_NOSEARCH
- فایل resolv.conf را به عنوان غیرقابل جستجو علامتگذاری میکند.
- IF_EXCLUSIVE
- فایل resolv.conf را به عنوان اختصاصی علامتگذاری میکند.
فایلها (FILES)
- /etc/resolv.conf.bak
- فایل پشتیبان از resolv.conf اصلی.
- /etc/resolvconf.conf
- فایل
پیکربندی
برای
resolvconf. - /usr/lib/resolvconf
- دایرکتوری
مشترکینی
که در هر
بار
افزودن،
حذف یا
بهروزرسانی
توسط
resolvconfاجرا میشوند. - /usr/lib/resolvconf/libc.d
- دایرکتوری مشترکینی که پس از اجرای مشترک libc اجرا میشوند.
- /run/resolvconf
- دایرکتوری
وضعیت برای
resolvconf.
نکات (NOTES)
برچسبهای دامنه اسکی فرض شده و به حروف کوچک تبدیل میشوند تا در صورت دریافت موارد با حروف بزرگ و کوچک متفاوت از منابع مختلف، از ایجاد ناحیههای تکراری جلوگیری شود.
هنگام
اجرای یک
تحلیلگر
محلی غیر از
libc، باید آن
را طوری
پیکربندی
کنید که
فایلهای
تولیدشده
توسط resolvconf
را شامل شود.
برای
دستورالعملهای
مربوط به
نحوه
پیکربندی
تحلیلگر
خود، به
resolvconf.conf(5)
مراجعه
کنید.
همچنین ببینید (SEE ALSO)
تاریخچه (HISTORY)
این
پیادهسازی
از resolvconf تحت
عنوان openresolv
شناخته
میشود و با
resolvconf توزیع
دبیان که
توسط Thomas Hood
نوشته شده،
از نظر خط
فرمان
کاملاً
سازگار
است.
نویسندگان (AUTHORS)
Roy Marples <roy@marples.name>
اشکالات (BUGS)
لطفاً اشکالات را به نشانی زیر گزارش دهید: http://roy.marples.name/projects/openresolv
| June 26, 2025 | Linux 6.12.107+deb13-amd64 |