'\" t .TH "NSS\-MYHOSTNAME" "8" "" "systemd 261.2" "nss-myhostname" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" nss-myhostname \- تفکیک خودکار نام میزبان محلی به نشانی‌های IP .SH "خلاصه دستور (SYNOPSIS)" .PP libnss_myhostname\&.so\&.2 .SH "توضیحات (DESCRIPTION)" .PP \fBnss\-myhostname\fR یک ماژول افزونه برای قابلیت سوئیچ سرویس نام گنو (NSS یا Name Service Switch) در کتابخانه سی گنو (\fBglibc\fR) است که عمدتاً تفکیک نام میزبان را برای نام میزبان محلی پیکربندی‌شده سیستم، همان‌گونه که توسط \fBgethostname\fR(2)\& بازگردانده می‌شود، فراهم می‌کند\&. نام‌های میزبان دقیقی که توسط این ماژول تفکیک می‌شوند عبارتند از: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} نام میزبان محلی و پیکربندی‌شده به تمام نشانی‌های IP محلی پیکربندی‌شده به ترتیب حوزه (scope) آن‌ها تفکیک می‌شود، یا \(em در صورتی که هیچ‌کدام پیکربندی نشده باشند \(em به نشانی IPv4 معادل 127\&.0\&.0\&.2 (که روی لوپ‌بک محلی است) و نشانی IPv6 معادل ::1 (که میزبان محلی است)\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} نام‌های میزبان "localhost" و "localhost\&.localdomain" (و همچنین هر نام میزبانی که به "\&.localhost" یا "\&.localhost\&.localdomain" ختم شود) به نشانی‌های IP معادل 127\&.0\&.0\&.1 و ::1 تفکیک می‌شوند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} نام میزبان "_gateway" به تمام نشانی‌های دروازه مسیریابی پیش‌فرض فعلی، به ترتیب متریک (metric) آن‌ها تفکیک می‌شود\&. این کار یک نام میزبان پایدار به دروازه فعلی اختصاص می‌دهد که برای ارجاع به آن مستقل از وضعیت فعلی پیکربندی شبکه مفید است\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} نام میزبان "_outbound" به نشانی‌های IPv4 و IPv6 محلی که به احتمال زیاد برای برقراری ارتباط با سایر میزبان‌ها استفاده می‌شوند، تفکیک می‌شود\&. این نشانی‌ها همان نشانی‌های مبدأ ترجیحی دروازه‌های پیش‌فرض (در صورت تعیین) هستند، یا از طریق درخواست تصمیم مسیریابی به دروازه‌های پیش‌فرض پیکربندی‌شده از هسته و سپس استفاده از نشانی‌های IP محلی انتخاب‌شده توسط این تصمیم تعیین می‌شوند\&. این نام میزبان تنها در صورتی در دسترس است که حداقل یک دروازه پیش‌فرض محلی پیکربندی شده باشد\&. این کار یک نام میزبان پایدار به نشانی‌های IP خروجی محلی اختصاص می‌دهد که برای ارجاع به آن‌ها مستقل از وضعیت فعلی پیکربندی شبکه مفید است\&. .RE .PP نرم‌افزارهای مختلفی به یک نام میزبان محلی که همواره قابل تفکیک باشد وابسته هستند\&. هنگام استفاده از نام‌های میزبان پویا، این امر به صورت سنتی با تغییر هم‌زمان /etc/hosts هنگام تغییر نام میزبان به دست می‌آمد\&. این رویکرد مشکل‌ساز است چرا که نیازمند یک سیستم فایل /etc/ قابل نوشتن بوده و آسیب‌پذیر است زیرا این پرونده ممکن است هم‌زمان توسط مدیر سیستم نیز ویرایش شود\&. با فعال بودن \fBnss\-myhostname\fR، تغییر /etc/hosts غیرضروری است و در بسیاری از سیستم‌ها، این پرونده کاملاً اختیاری می‌شود\&. .PP برای فعال‌سازی ماژول‌های NSS، عبارت "myhostname" را به خطی که با "hosts:" در /etc/nsswitch\&.conf شروع می‌شود اضافه کنید\&. .PP توصیه می‌شود "myhostname" پس از "files" و پیش از "dns" قرار گیرد\&. این کار نام‌های میزبان شناخته‌شده مانند "localhost" و نام‌های میزبان ماشین را به صورت محلی تفکیک می‌کند\&. این رفتار با عملکرد \fBnss\-resolve\fR سازگار است و همچنان امکان بازنویسی از طریق /etc/hosts را فراهم می‌کند\&. .PP لطفاً توجه داشته باشید که \fBnss\-myhostname\fR (و \fBnss\-resolve\fR) در جهت عکس نیز تفکیک را انجام می‌دهند \(em از نشانی‌های IP متصل محلی به نام‌های میزبان\&. اگر به دریافت این جستجو از طریق DNS متکی هستید، ممکن است بخواهید ترتیب موارد را به شکل دیگری تنظیم کنید\&. .SH "مثال (EXAMPLE)" .PP در اینجا نمونه‌ای از یک پروندهٔ /etc/nsswitch\&.conf آورده شده است که \fBnss\-myhostname\fR را به درستی فعال می‌کند: .sp .if n \{\ .RS 4 .\} .nf passwd: files systemd group: files [SUCCESS=merge] systemd shadow: files systemd gshadow: files systemd hosts: mymachines resolve [!UNAVAIL=return] files \fBmyhostname\fR dns networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis .fi .if n \{\ .RE .\} .PP برای آزمایش، از ابزار \fBgetent\fR(1) مربوط به \fBglibc\fR استفاده کنید: .sp .if n \{\ .RS 4 .\} .nf $ getent ahosts `hostname` ::1 STREAM omega ::1 DGRAM ::1 RAW 127\&.0\&.0\&.2 STREAM 127\&.0\&.0\&.2 DGRAM 127\&.0\&.0\&.2 RAW .fi .if n \{\ .RE .\} .PP در این حالت، نام میزبان محلی \fIomega\fR است\&. .SH "همچنین ببینید (SEE ALSO)" .PP \fBsystemd\fR(1), \fBnss-systemd\fR(8), \fBnss-resolve\fR(8), \fBnss-mymachines\fR(8), \fBnsswitch.conf\fR(5), \fBgetent\fR(1)