it-swarm.com.de

Wie kann man mdns4_minimal durch BIND ersetzen?

Habe Ubuntu 16.04 LTS Version. Je nach Aufgabe sollte BIND als DNS-Server installiert sein. Mir ist in der nsswitch.conf aufgefallen:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

Können Sie bitte erläutern, was mdns4_minimal und mdns4 bedeuten und wie das System die lokale BIND-Instanz zum Auflösen von DNS-Abfragen verwenden soll?

Ja, ich kann BIND starten/stoppen.

systemctl enable bind9
systemctl start/stop bind9.
7
Bulat M.
  • der Avahi/Bonjour-Daemon bietet einen mDNS- oder Multicast-DNS-Dienst, mit dem kleine Netzwerkcomputer Namen verwenden können, auch wenn kein zentraler DNS vorhanden ist. Standardmäßig wird die Domäne .local verwendet.

  • Wenn Sie .local nicht für Ihren DNS-Server verwenden, legen Sie DNS nach mDNS nsswitch.conf fest.

    hosts: files mdns4_minimal dns [NOTFOUND=return] mdns4
    

    Andernfalls wird .local von Ihrem DNS-Server verwendet (keine Verwendung für den mdns-Dienst).

    hosts: files dns [NOTFOUND=return] mdns4_minimal mdns4
    
  • Was ist der Unterschied zwischen mdn4_minimal und mdns4?

    Um dir zu antworten, ist es besser zu wissen, wie ich solche Informationen sammle und selbst lerne :) (## ist ein Kommentar, um das Ziel für den Befehl darunter anzugeben)

    ## Update "locate" database
    ~$ Sudo updatedb
    ## Search for file with "mdns4_minimal" in its name
    ~$ locate mdns4_minimal
    /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2
    
    ## Look for which package installs that file
    ~$ dpkg -S /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2
    libnss-mdns:AMD64: /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2
    
    ## List all files from same package
    ~$ dpkg -L libnss-mdns:AMD64
    /.
    /usr
    /usr/share
    /usr/share/lintian
    /usr/share/lintian/overrides
    /usr/share/lintian/overrides/libnss-mdns
    /usr/share/doc
    /usr/share/doc/libnss-mdns
    /usr/share/doc/libnss-mdns/copyright
    /usr/share/doc/libnss-mdns/README.html
    /usr/share/doc/libnss-mdns/README.Debian
    /usr/share/doc/libnss-mdns/style.css
    /usr/share/doc/libnss-mdns/changelog.Debian.gz
    /lib
    /lib/x86_64-linux-gnu
    /lib/x86_64-linux-gnu/libnss_mdns4.so.2
    /lib/x86_64-linux-gnu/libnss_mdns_minimal.so.2
    /lib/x86_64-linux-gnu/libnss_mdns.so.2
    /lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2
    /lib/x86_64-linux-gnu/libnss_mdns6.so.2
    /lib/x86_64-linux-gnu/libnss_mdns6_minimal.so.2
    
    ## "README.html" looks the only documentation there, we open it
    ~$ xdg-open /usr/share/doc/libnss-mdns/README.html
    

    Dokumentation

    Nach dem Kompilieren und Installieren von nss-mdns finden Sie in /lib sechs neue NSS-Module:

    • libnss_mdns.so.2
    • libnss_mdns4.so.2
    • libnss_mdns6.so.2
    • libnss_mdns_minimal.so.2
    • libnss_mdns4_minimal.so.2
    • libnss_mdns6_minimal.so.2


    libnss_mdns.so.2 löst sowohl IPv6- als auch IPv4-Adressen auf, libnss_mdns4.so.2 nur IPv4-Adressen und libnss_mdns6.so.2 nur IPv6-Adressen. Aufgrund der Tatsache, dass die meisten mDNS-Responder nur lokale IPv4-Adressen über mDNS registrieren, möchten die meisten Benutzer ausschließlich libnss_mdns4.so.2 verwenden. Die Verwendung von libnss_mdns.so.2 oder libnss_mdns6.so.2 in einer solchen Situation führt zu langen Timeouts beim Auflösen von Hosts, da die meisten modernen Unix/Linux-Anwendungen zuerst nach IPv6-Adressen suchen und anschließend nach IPv4 suchen.

    libnss_mdns{4,6,}_minimal.so (neu in Version 0.8) ist größtenteils identisch mit den Versionen ohne _minimal. Sie unterscheiden sich jedoch in einer Hinsicht. Die Minimalversionen verweigern immer die Auflösung von Hostnamen, die nicht mit .local enden, oder von Adressen, die nicht im Bereich 169.254.x.x liegen (dem von IPV4LL/APIPA/RFC3927 verwendeten Bereich). ) Durch die Kombination des _minimal- und des normalen NSS-Moduls können wir mDNS für Zeroconf-Hostnamen und -adressen autorisieren (und somit DNS-Server nicht mit immer fehlgeschlagenen Anforderungen belasten) und es als Ersatz für alles andere verwenden.

  • IPv6-Unterstützung

    • files & dns NSS-Module, beide unterstützen neben IPv4 auch das Auflösen von IPv6.
    • mdns4 & mdns4_minimal gelten jedoch nur für IPv4.

      Gleiches gilt für mdns6 und mdns6_minimal nur für IPv6.

      mdns & mdns_minimal unterstützt sowohl IPv4 als auch IPv6, seine Verwendung sollte jedoch vermieden werden, wenn nur eine einzige IP-Version im Netzwerk bereitgestellt wird. Denn es wird versucht, IPv6 aufzulösen und dann auf IPv4 zurückzugreifen, was zu einer zusätzlichen Verzögerung führen kann.

      Übrigens ist das aktuelle Standard-Setup von Avahi IPv4, ein dezentraler Dienst. Um IPv6 nutzen zu können, sollte alls machine so konfiguriert werden, dass IPv6 auch in nsswitch und avahi verwendet wird.

  • Gibt es andere [], die [NOTFOUND=return] ähnlich sind?

    Ja, wie wir aus man nsswitch.conf ersehen können

       An action may also be specified following a service specification.   The  action  modifies
       the  behavior  following  a  result obtained from the preceding data source.  Action items
       take the general form:
    
           [STATUS=ACTION]
           [!STATUS=ACTION]
    
       where
    
           STATUS => success | notfound | unavail | tryagain
           ACTION => return | continue
    
       The ! negates the test, matching all possible results except the one specified.  The  case
       of the keywords is not significant.
    
       The  STATUS  value is matched against the result of the lookup function called by the pre‐
       ceding service specification, and can be one of:
    
           success     No error occurred and the requested entry is returned.  The default action
                       for this condition is "return".
    
           notfound    The  lookup succeeded, but the requested entry was not found.  The default
                       action for this condition is "continue".
    
           unavail     The service is permanently unavailable.  This can  mean  either  that  the
                       required file cannot be read, or, for network services, that the server is
                       not available or does not allow queries.  The default action for this con‐
                       dition is "continue".
    
           tryagain    The  service is temporarily unavailable.  This could mean a file is locked
                       or a server currently cannot accept more connections.  The default  action
                       for this condition is "continue".
    
       The ACTION value can be one of:
    
           return      Return  a result now.  Do not call any further lookup functions.  However,
                       for compatibility reasons, if this is the selected action  for  the  group
                       database and the notfound status, and the configuration file does not con‐
                       tain the initgroups line, the next lookup function is always called, with‐
                       out affecting the search result.
    
           continue    Call the next lookup function.
    

Verwandte Fragen:

19
user.dz