X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fnss-myhostname.xml;h=c7a2cd9ae7b4edf90732a0036656199d095757b7;hb=92b1e2256a3aca86a49ee5961cde9b8d27c0e0f0;hp=bd3f635692246903ed6b293dc4bf2ff47a5c550c;hpb=16eb4da97e1bfe7f9416a0622b1a06408e550423;p=elogind.git
diff --git a/man/nss-myhostname.xml b/man/nss-myhostname.xml
index bd3f63569..c7a2cd9ae 100644
--- a/man/nss-myhostname.xml
+++ b/man/nss-myhostname.xml
@@ -22,7 +22,7 @@
along with systemd; If not, see .
-->
-
+nss-myhostname
@@ -45,57 +45,88 @@
nss-myhostname
- Provide host name resolution for the locally
+ libnss_myhostname.so.2
+ Provide hostname resolution for the locally
configured system hostname.
-
- nss-myhostname.la
-
+ libnss_myhostname.so.2Description
- nss-myhostname is a plugin for the GNU Name Service Switch
- (NSS) functionality of the GNU C Library (glibc)
- providing host name resolution for the locally configured system
- hostname as returned by
- gethostname2.
- Various software relies on an always resolvable local host name. When
- using dynamic hostnames this is usually achieved by patching
- /etc/hosts at the same time as changing the host
- name. This however is not ideal since it requires a writable
- /etc file system and is fragile because the file
- might be edited by the administrator at the same time. nss-myhostname
- simply returns all locally configure public IP addresses, or -- if none
- are configured -- the IPv4 address 127.0.0.2 (wich is on the local
- loopback) and the IPv6 address ::1 (which is the local host) for
- whatever system hostname is configured locally. Patching
- /etc/hosts is thus no longer necessary.
-
- To activate the NSS modules,
- has to be added to the line starting with "hosts:" in
- /etc/nsswitch.conf
-
- It is recommended to put
- last in the nsswitch.conf line to make
- sure that this mapping is only used as fallback, and any DNS
- or /etc/hosts based mapping takes precedence.
+ nss-myhostname is a plugin
+ for the GNU Name Service Switch (NSS) functionality of
+ the GNU C Library (glibc) primarily
+ providing hostname resolution for the locally
+ configured system hostname as returned by
+ gethostname2. The
+ precise hostnames resolved by this module are:
+
+
+ The local, configured hostname
+ is resolved to all locally configured IP
+ addresses ordered by their scope, or -- if
+ none are configured -- the IPv4 address
+ 127.0.0.2 (which is on the local loopback) and
+ the IPv6 address ::1 (which is the local
+ host).
+
+ The hostname
+ localhost is resolved to
+ the IP addresses 127.0.0.1 and
+ ::1.
+
+ The hostname
+ gateway is resolved to all
+ current default routing gateway addresses,
+ ordered by their metric. This assigns a stable
+ hostname to the current gateway, useful for
+ referencing it independently of the current
+ network configuration state.
+
+
+
+ Various software relies on an always-resolvable
+ local hostname. When using dynamic hostnames, this is
+ traditionally achieved by patching
+ /etc/hosts at the same time as
+ changing the hostname. This is problematic since it
+ requires a writable /etc file
+ system and is fragile because the file might be edited
+ by the administrator at the same time. With
+ nss-myhostname enabled changing
+ /etc/hosts is unncessary, and on
+ many systems the file becomes entirely optional.
+
+ To activate the NSS modules,
+ myhostname has to be added to the
+ line starting with hosts: in
+ /etc/nsswitch.conf.
+
+ It is recommended to place
+ myhostname last in the
+ nsswitch.conf line to make sure
+ that this mapping is only used as fallback, and any
+ DNS or /etc/hosts based mapping
+ takes precedence.Example
-
-# /etc/nsswitch.conf
+ Here's an example
+ /etc/nsswitch.conf file, that
+ enables myhostname
+ correctly:
-passwd: compat
+passwd: compat
group: compat
shadow: compat
-hosts: files dns myhostname
+hosts: files dns mymachines myhostname
networks: files
protocols: db files
@@ -103,22 +134,19 @@ services: db files
ethers: db files
rpc: db files
-netgroup: nis
-
+netgroup: nisTo test, use glibc's getent tool:
-
-$ getent ahosts `hostname`
+ $ 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
-
+127.0.0.2 RAW
- In this case the local host name is omega.
+ In this case the local hostname is omega.
@@ -126,13 +154,9 @@ $ getent ahosts `hostname`
See Alsosystemd1,
- systemd-logind.service8,
- logind.conf5,
- loginctl1,
- pam.conf5,
- pam.d5,
- pam8,
- pam_loginuid8
+ nss-mymachines8,
+ nsswitch.conf5,
+ getent1