NAME
nss-myhostname, libnss_myhostname.so.2 - 為本地配置的系統主機名提供解析功能SYNOPSIS
libnss_myhostname.so.2描述
nss-myhostname 是一個 glibc(GNU C Library) NSS(Name Service Switch) 外掛, 提供瞭解析本地配置的系統主機名的功能。 所謂"本地配置的系統主機名"其實就是 gethostname(2) 函式的返回值。 該模組的解析規則如下:•本機的主機名
將會被解析為所有本地IP地址,並按照他們所屬的
scope 排序。 如果 scope
不存在,則會被解析為本地迴環介面上的
IPv4 127.0.0.2 以及 IPv6 ::1
•"localhost" 與
"localhost.localdomain" 以及所有以
".localhost" 或 ".localhost.localdomain"
結尾的主機名,
都會被解析為 127.0.0.1 與 ::1
•"gateway" 會被
解析為當前所有的預設閘道器地址,
並按照地址的數字順序排序。
這樣就為當前閘道器分配了一個固定的主機名,
從而可以讓應用程式在不關心網路配置的情況下,直接引用閘道器。
許多軟體依賴於存在一個可以永遠被解析的本地主機名。
當使用動態主機名的時候,
傳統的做法是在主機名發生變化的同時修改
/etc/hosts 檔案。
這種做法的缺點在於要求
/etc 目錄必須是可寫的,
而且有可能在修改 /etc/hosts
檔案的同時,
系統管理員也正在編輯它。啟用
nss-myhostname 之後,
就可以不必修改 /etc/hosts
檔案。更進一步,
在許多系統上甚至無需存在這個檔案。
要啟用NSS模組,可將
"myhostname" 新增到 /etc/nsswitch.conf
檔案中以 "hosts:"
開頭的行裡面。
建議將 "myhostname" 放置在
nsswitch.conf 檔案中以 "hosts:"
開頭的行的末尾,以確保優先使用傳統的基於DNS與
/etc/hosts 檔案的解析方法。
例子
下面是一個正確開啟了 nss-myhostname 外掛的 /etc/nsswitch.conf 檔案的例子:passwd: compat mymachines group: compat mymachines shadow: compat hosts: files mymachines resolve myhostname networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis
$ 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
參見
systemd(1), nss-resolve(8), nss-mymachines(8), nsswitch.conf(5), getent(1)跋
本頁面中文版由中文 man 手冊頁計劃提供。 翻譯人員:金步國systemd 231 |