nss-mymachines, libnss_mymachines.so.2 - Rechnernamensauflösung
für lokale Container-Instanzen
libnss_mymachines.so.2
nss-mymachines ist ein Erweiterungsmodul für die GNU »Name
Service Switch« (NSS)-Funktionalität der GNU-C-Bibliothek (
glibc). Es stellt eine Namensauflösung für die Namen von
Containern, die lokal laufen und mit
systemd-machined.service(8)
registriert sind, bereit. Die Container-Namen werden auf die IP-Adresse des
bestimmten Containers aufgelöst und nach Geltungsbereich sortiert.
Diese Funktionalität gilt nur für Container, die
Netzwerknamensräume verwenden (siehe die Beschreibung von
--private-network in
systemd-nspawn(1)). Beachten Sie, dass der
Name, der aufgelöst wird, dem mit
systemd-machined registrierten
entspricht, was sich vom im Container konfigurierten Rechnernamen
(»hostname«) unterscheiden kann.
Beachten Sie, dass das NSS-Modul nur Container-Namen zur Verfügung
stellt, die direkt unterhalb des aktuellen Systemkontextes ausgeführt
werden. Es bietet keine Rechnernamensauflösung für Container,
die parallel zum aufrufenden Systemkontext ausgeführt werden oder
Container, die weiter oben oder unten in der Container-Hierarchie sind. Auf
dem Rechner stellt es mit anderen Worten eine Rechnernamensauflösung
für die Container bereit, die direkt unterhalb der Rechnerumgebung
ausgeführt werden. Wird es allerdings innerhalb einer
Container-Umgebung verwandt, wird es nicht in der Lage sein,
Namensauflösung für Container bereitzustellen, die auf dem
Rechner laufen (da diese auf der gleichen Stufe und nicht unterhalb der
Container-Umgebung sind), sondern nur für verschachtelte Container, die
direkt unterhalb seiner eigenen Container-Umgebung ausgeführt werden.
Um das NSS-Modul zu aktivieren, fügen Sie »mymachines« zu
den mit »hosts:« in /etc/nsswitch.conf beginnenden Zeile hinzu.
Es wird empfohlen, »mymachines« vor dem »resolve«-
oder »dns«-Eintrag in der »hosts«-Zeile von
/etc/nsswitch.conf abzulegen, um sicherzustellen, dass die Zuordnungen
gegenüber anderen Auflösern wie DNS bevorzugt werden.
Hier ist ein Beispiel für eine /etc/nsswitch.conf-Datei, die
nss-mymachines korrekt aktiviert:
passwd: compat systemd
group: compat [SUCCESS=merge] systemd
shadow: compat systemd
gshadow: files systemd
hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
Der Container »rawhide« wird mittels
systemd-nspawn(1)
erzeugt:
# systemd-nspawn -M rawhide --boot --network-veth --private-users=pick
Spawning container rawhide on /var/lib/machines/rawhide.
Selected user namespace base 20119552 and range 65536.
…
$ machinectl --max-addresses=3
MACHINE CLASS SERVICE OS VERSION ADDRESSES
rawhide container systemd-nspawn fedora 30 169.254.40.164 fe80::94aa:3aff:fe7b:d4b9
$ ping -c1 rawhide
PING rawhide(fe80::94aa:3aff:fe7b:d4b9%ve-rawhide (fe80::94aa:3aff:fe7b:d4b9%ve-rawhide)) 56 data bytes
64 bytes from fe80::94aa:3aff:fe7b:d4b9%ve-rawhide (fe80::94aa:3aff:fe7b:d4b9%ve-rawhide): icmp_seq=1 ttl=64 time=0.045 ms
…
$ ping -c1 -4 rawhide
PING rawhide (169.254.40.164) 56(84) bytes of data.
64 bytes from 169.254.40.164 (169.254.40.164): icmp_seq=1 ttl=64 time=0.064 ms
…
# machinectl shell rawhide /sbin/ip a
Connected to machine rawhide. Press ^] three times within 1s to exit session.
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
...
2: host0@if21: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 96:aa:3a:7b:d4:b9 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 169.254.40.164/16 brd 169.254.255.255 scope link host0
valid_lft forever preferred_lft forever
inet6 fe80::94aa:3aff:fe7b:d4b9/64 scope link
valid_lft forever preferred_lft forever
Connection to machine rawhide terminated.
systemd(1),
systemd-machined.service(8),
machinectl(1),
nss-systemd(8),
nss-resolve(8),
nss-myhostname(8),
nsswitch.conf(5),
getent(1)
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann
<
[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
GNU
General Public License Version 3 oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken
Sie bitte eine E-Mail an die
Mailingliste
der Übersetzer