Gemeinsam genutzte Bind9-Bibliotheken: libbind vs. libdns?

Gemeinsam genutzte Bind9-Bibliotheken: libbind vs. libdns?

Es gibt zwei Pakete libbind, die libdnsvon Debian gepackt wurden. Sie werden beide beschrieben als:

Berkeley Internet Name Domain (BIND) implementiert einen Internet-Domain-Name-Server. BIND ist die am weitesten verbreitete Name-Server-Software im Internet und wird vom Internet Software Consortium (www.isc.org) unterstützt. Dieses Paket liefert die gemeinsam genutzte Bibliothek (libbind9 oder libdns), die von den Daemons und Clients von BIND verwendet wird.

Ja, der Name der Bibliothek ändert sich, aber was ist der Unterschied zwischen ihnen? Was ist libbind, was ist libdns? Warum erstellt das bind9-Projekt zwei Pakete mit unterschiedlichen Bibliotheken und wo sind sie dokumentiert?

  • libbind9-161:amd64Von BIND verwendete gemeinsam genutzte Bibliothek
  • libdns1104:amd64Von BIND verwendete DNS-Shared-Library

Antwort1

Stephen Kitt schrieb, dass diese Pakete unterschiedliche Beschreibungen haben:

  • libbind9-161: Dieses Paket liefert die gemeinsam genutzte Bibliothek libbind9, die von den Daemons und Clients von BIND verwendet wird.
  • libdns1104: Dieses Paket liefert die von den Daemons und Clients von BIND verwendete gemeinsam genutzte Bibliothek libdns.

Sie können jederzeit erneut überprüfen, was sich in einem Deb-Paket befindet.

libbind9-161Paket enthält die gemeinsam genutzte Bibliothek libbind9.so.161 undlibdns1104- libdns-pkcs11.so.1104 und libdns.so.1104-Bibliotheken.

$ apt-get download libdns1104 libbind9-161

$ dpkg -c libbind9-161_1%3a9.11.5.P4+dfsg-5_amd64.deb 
drwxr-xr-x root/root         0 2019-05-03 20:44 ./
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/
-rw-r--r-- root/root     71616 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/libbind9.so.161.0.0
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/share/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/share/doc/libbind9-161/
-rw-r--r-- root/root     26678 2019-05-03 20:44 ./usr/share/doc/libbind9-161/changelog.Debian.gz
-rw-r--r-- root/root    189777 2019-02-05 02:06 ./usr/share/doc/libbind9-161/changelog.gz
-rw-r--r-- root/root      6973 2019-05-03 20:44 ./usr/share/doc/libbind9-161/copyright
lrwxrwxrwx root/root         0 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/libbind9.so.161 -> libbind9.so.161.0.0

$ dpkg -c libdns1104_1%3a9.11.5.P4+dfsg-5_amd64.deb 
drwxr-xr-x root/root         0 2019-05-03 20:44 ./
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/
-rw-r--r-- root/root   2355984 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/libdns-pkcs11.so.1104.0.2
-rw-r--r-- root/root   2339312 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/libdns.so.1104.0.2
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/share/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-03 20:44 ./usr/share/doc/libdns1104/
-rw-r--r-- root/root     26678 2019-05-03 20:44 ./usr/share/doc/libdns1104/changelog.Debian.gz
-rw-r--r-- root/root    189777 2019-02-05 02:06 ./usr/share/doc/libdns1104/changelog.gz
-rw-r--r-- root/root      6973 2019-05-03 20:44 ./usr/share/doc/libdns1104/copyright
lrwxrwxrwx root/root         0 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/libdns-pkcs11.so.1104 -> libdns-pkcs11.so.1104.0.2
lrwxrwxrwx root/root         0 2019-05-03 20:44 ./usr/lib/x86_64-linux-gnu/libdns.so.1104 -> libdns.so.1104.0.2

Antwort2

Die Beschreibungen beider Pakete folgen einem typischen Format, das für verwandte Pakete verwendet wird: Sie haben einen gemeinsamen Abschnitt,

Die Berkeley Internet Name Domain (BIND) implementiert einen Internet-Domain-Name-Server. BIND ist die am weitesten verbreitete Name-Server-Software im Internet und wird vom Internet Software Consortium, www.isc.org, unterstützt.

und ein paketspezifischer Absatz,

Dieses Paket liefert die libdnsvon den Daemons und Clients von BIND verwendete gemeinsam genutzte Bibliothek.

für libdnsund

Dieses Paket liefert die libbind9von den Daemons und Clients von BIND verwendete gemeinsam genutzte Bibliothek.

Diese sind sehr ähnlich und bieten nicht viele Informationen, um zwischen den beiden zu unterscheiden. Sie helfen jedochEndnutzerbestimmen ihre Verwendung: Es handelt sich bei beiden um gemeinsam genutzte Bibliotheken, die von den Daemons und Clients von BIND verwendet werden.

Bei genauerer Betrachtung der Bibliotheken libdnsbietet : DNS-bezogene Funktionen auf niedriger Ebene, während libbind9eine kleine Anzahl von Namensauflösungsfunktionen auf hoher Ebene bietet. libbind9hängt von ab libdns, wie auch eine Reihe anderer BIND-Bibliotheken.

Das BIND9-Quellpaketerzeugt sieben Bibliothekspakete und zugehörige Exportbibliothekspakete und Udebs. Dies liegt ganz beim Paketbetreuer; ich stelle mir vor, dass die Entscheidung, die meisten Bibliotheken separat zu verpacken, zumindest teilweise darauf zurückzuführen ist, dass Bibliothekspaketnamen Bibliotheks-Sonames kodieren sollen, und die BIND9-Bibliothekspaketaufteilung hält sich an diese Regel.

Jedochnichts davon sollte für die überwiegende Mehrheit der Endbenutzer wirklich wichtig sein. Bibliothekspakete werden in Debian im Allgemeinen immer nur als Nebeneffekt der Installation der Pakete installiert, die sie benötigen; dies gilt auch für BIND9. Wenn Siednsutils, erhalten Sie am Ende auch libbind, libdns, libisc, libisccfg, und liblwres, aber die Funktionen, die Sie interessieren, befinden sich in dnsutils, nicht in den Bibliothekspaketen. Der einzige realistische Grund, sich um die Bibliothekspakete selbst zu kümmern, ist, wenn Sie Software entwickeln, die sie verwendet, und selbst dann würden Sie das Entwicklungspaket installieren,libbind-dev, nicht die einzelnen Bibliothekspakete.

verwandte Informationen