SYSTEMD.DNSSD(5) systemd.dnssd SYSTEMD.DNSSD(5) BEZEICHNUNG systemd.dnssd - DNS-SD-Konfiguration UBERSICHT Netzwerkdienst.dnssd BESCHREIBUNG DNS-SD-Einrichtung erfolgt durch systemd-resolved(8). Die Hauptnetzwerkdienstedatei muss die Erweiterung >>.dnssd<< tragen, andere Erweiterungen werden ignoriert. Die >>.dnssd<<-Dateien werden von den Dateien gelesen, die sich in den Systemnetzwerkverzeichnissen /usr/lib/systemd/dnssd und /usr/local/lib/systemd/dnssd, dem fluchtigen Laufzeitnetzwerkverzeichnis /run/systemd/dnssd und dem lokalen administrativen Netzwerkverzeichnis /etc/systemd/dnssd befinden. Alle Konfigurationsdateien werden gemeinsam sortiert und in lexikalischer Reihenfolge verarbeitet, unabhangig von den Verzeichnissen, in denen sie sich befinden. Allerdings ersetzen Dateien mit identischem Namen einander. Dateien in /etc/ haben die hochste Prioritat, Dateien in /run/ haben Vorrang vor Dateien mit dem gleichen Namen in /usr/lib/. Falls notwendig, kann dies dazu verwandt werden, durch das System bereitgestellte Dateien mit einer lokalen Konfigurationsdatei ausser Kraft zu setzen. Zusammen mit der Netzwerkdienstedatei foo.dnssd kann ein >>Erganzungs<<-Verzeichnis foo.dnssd.d/ existieren. Alle Dateien mit der Endung >>.conf<< aus diesem Verzeichnis werden nach der Datei selbst ausgewertet. Dies ist nutzlich, um Konfigurationseinstellungen zu andern oder hinzuzufugen, ohne die Hauptkonfigurationsdatei zu verandern. Jede Erganzungsdatei muss geeignete Abschnittskopfzeilen haben. Zusatzlich zu /etc/systemd/dnssd konnen Erganzungs->>.d<<-Verzeichnisse in den Verzeichnissen /usr/lib/systemd/dnssd oder /run/systemd/dnssd abgelegt werden. Erganzungsdateien in /etc/ haben Vorrang vor denen in /run/, die wiederum Vorrang vor denen in /usr/lib/ oder /usr/local/lib haben. Erganzungsdateien unterhalb jedes dieser Verzeichnisse haben Vorrang vor der Hauptnetzwerkdienstedatei, egal wo sich diese befindet. [SERVICE]-ABSCHNITT-OPTIONEN Die Netzwerkdienstedatei enthalt einen Abschnitt >>[Service]<<, der einen auffindbaren Netzwerkdienst festlegt, der in einem lokalen Netzwerk mit Multicast-DNS-Broadcasts bekanntgegeben wird. Name= Ein Instanzenname des Netzwerkdienstes, wie er im Abschnitt 4.1.1 von RFC 6763[1] definiert ist, z.B. "webserver". Diese Option unterstutzt einfache Kennzeichnerexpansion. Die folgenden Expansionen werden verstanden: Tabelle 1. Verfugbare Kennzeichner +-------------+--------------------------------+-------------------------------------------+ |Kennzeichner | Bedeutung | Details | +-------------+--------------------------------+-------------------------------------------+ |"%a" | Architektur | Eine kurze Zeichenkette, die die | | | | Architektur des lokalen Systems | | | | identifiziert. Eine Zeichenkette wie x86, | | | | x86-64 oder arm64. Siehe die fur | | | | ConditionArchitecture= in systemd.unit(5) | | | | definierten Architekturen fur die | | | | vollstandige Liste. | +-------------+--------------------------------+-------------------------------------------+ |"%A" | Betriebssystemabbildversion | Die | | | | Betriebssystemabbildversionskennzeichnung | | | | des laufenden Systems, wie aus dem Feld | | | | IMAGE_VERSION= in /etc/os-release | | | | ausgelesen. Falls nicht gesetzt, wird es | | | | die leere Zeichenkette. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%b" | Boot-Kennung | Die Boot-Kennung des laufenden Systems, | | | | formatiert als Zeichenkette. Siehe | | | | random(4) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%B" | Betriebssystembaukennung | Die Betriebssystembaukennung des | | | | laufenden Systems, wie aus dem Feld | | | | BUILD_ID= in /etc/os-release ausgelesen. | | | | Falls nicht gesetzt, wird es zur leeren | | | | Zeichenkette aufgelost. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%H" | Rechnername | Der Rechnername des laufenden Systems. | +-------------+--------------------------------+-------------------------------------------+ |"%m" | Maschinenkennung | Die Maschinenkennung des laufenden | | | | Systems, formatiert als Zeichenkette. | | | | Siehe machine-id(5) fur weitere | | | | Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%M" | Betriebssystemabbildkennung | Die Betriebssystemabbildkennung des | | | | laufenden Systems, wie aus dem Feld | | | | IMAGE_ID= in /etc/os-release ausgelesen. | | | | Falls nicht gesetzt, wird es die leere | | | | Zeichenkette. Siehe os-release(5) fur | | | | weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%o" | Betriebssystemkennung | Die Betriebssystemkennung des laufenden | | | | Systems, wie aus dem Feld ID= in | | | | /etc/os-release ausgelesen. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%v" | Kernelveroffentlichung | Identisch zur Ausgabe von uname -r. | +-------------+--------------------------------+-------------------------------------------+ |"%w" | Betriebssystemversionskennung | Die Betriebssystemversionskennzeichnung | | | | des laufenden Systems, wie aus dem Feld | | | | VERSION_ID= in /etc/os-release | | | | ausgelesen. Falls nicht gesetzt, wird es | | | | die leere Zeichenkette. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%W" | Betriebssystemvariantenkennung | Die Betriebssystemvariantenkennung des | | | | laufenden Systems, wie aus dem Feld | | | | VARIANT_ID= in /etc/os-release | | | | ausgelesen. Falls nicht gesetzt, wird es | | | | die leere Zeichenkette. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%%" | Einzelnes Prozentzeichen | Verwenden Sie >>%%<< anstelle von >>%<<, | | | | um ein einzelnes Prozentzeichen | | | | anzugeben. | +-------------+--------------------------------+-------------------------------------------+ Hinzugefugt in Version 236. Type= Eine Art von Netzwerkdienst, wie er in Abschnitt 4.1.2 von RFC 6763[1] definiert ist, z.B. "_http._tcp". Hinzugefugt in Version 236. Port= Eine IP-Port-Nummer des Netzwerkdienstes. Hinzugefugt in Version 236. Priority= Eine in SRV-Ressourcendatensatzen gesetzte Prioritatszahl, die dem Netzwerkdienst entspricht. Hinzugefugt in Version 236. Weight= Eine in SRV-Ressourcendatensatzen gesetzte Gewichtungszahl, die dem Netzwerkdienst entspricht. Hinzugefugt in Version 236. TxtText= Eine Leerraum-getrennte Liste von beliebigen Schlussel/Wert-Paaren, die zusatzliche Informationen uber den benannten Dienst in dem entsprechenden TXT-Ressourcendatensatz offenlegt, z.B. >>path=/portal/index.html<<. Schlussel und Werte konnen C-artige Maskiersequenzen enthalten, die beim Lesen der Konfigurationsdateien ubersetzt werden. Diese Option kann zusammen mit TxtData= mehr als einmal angegeben werden. Dann werden mehrere TXT-Ressourcendatensatze fur den Dienst erstellt. Falls dieser Option die leere Zeichenkette zugewiesen wird, wird die Liste zuruckgesetzt und alle vorherigen Zuweisungen haben keine Wirkung. Hinzugefugt in Version 236. TxtData= Eine Leerraum-getrennte Liste von beliebigen Schlussel/Wert-Paaren, die zusatzliche Informationen uber den benannten Dienst in dem entsprechenden TXT-Ressourcendatensatz offenlegt, wobei Base64-kodierte Zeichenketten beliebige binare Daten darstellen, z.B. >>data=YW55IGJpbmFyeSBkYXRhCg==<<. Schlussel konnen C-artige Maskiersequenzen enthalten, die beim Lesen der Konfigurationsdateien ubersetzt werden. Diese Option kann zusammen mit TxtText= mehr als einmal angegeben werden. Dann werden mehrere TXT-Ressourcendatensatze fur den Dienst erstellt. Falls dieser Option die leere Zeichenkette zugewiesen wird, wird die Liste zuruckgesetzt und alle vorherigen Zuweisungen haben keine Wirkung. Hinzugefugt in Version 236. BEISPIELE Beispiel 1. HTTP-Dienst # /etc/systemd/dnssd/http.dnssd [Service] Name=%H Type=_http._tcp Port=80 TxtText=path=/stats/index.html t=temperature_sensor Dies fuhrt dazu, dass der HTTP-Server, der auf dem Rechner lauft, im lokalen Netz, sofern MulticastDNS auf der Netzwerkschnittstelle aktiviert ist, entdeckt werden kann. Jetzt sollte das Hilfswerkzeug >>resolvectl<< in der Lage sein, den Dienst auf den Namen des Rechners aufzulosen: $ resolvectl service meteo._http._tcp.local meteo._http._tcp.local: meteo.local:80 [priority=0, weight=0] 169.254.208.106%senp0s21f0u2u4 fe80::213:3bff:fe49:8aa%senp0s21f0u2u4 path=/stats/index.html t=temperature_sensor (meteo/_http._tcp/local) -- Information acquired via protocol mDNS/IPv6 in 4.0ms. -- Data is authenticated: yes Der auf einer anderen Maschine im gleichen lokalen Netzwerk laufende >>Avahi<< sollte den Dienst ebenfalls sehen: $ avahi-browse -a -r + enp3s0 IPv6 meteo Web Site local + enp3s0 IPv4 meteo Web Site local = enp3s0 IPv6 meteo Web Site local hostname = [meteo.local] address = [fe80::213:3bff:fe49:8aa] port = [80] txt = ["path=/stats/index.html" "t=temperature_sensor"] = enp3s0 IPv4 meteo Web Site local hostname = [meteo.local] address = [169.254.208.106] port = [80] txt = ["path=/stats/index.html" "t=temperature_sensor"] SIEHE AUCH systemd(1), systemd-resolved.service(8), resolvectl(1) ANMERKUNGEN 1. RFC 6763 https://tools.ietf.org/html/rfc6763 UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . systemd 255 SYSTEMD.DNSSD(5)