Bibliotecas compartilhadas Bind9: libbind vs libdns?

Bibliotecas compartilhadas Bind9: libbind vs libdns?

Existem dois pacotes libbindempacotados libdnspelo Debian, ambos descritos como,

O Berkeley Internet Name Domain (BIND) implementa um servidor de nomes de domínio da Internet. BIND é o software de servidor de nomes mais utilizado na Internet e é suportado pelo Internet Software Consortium, www.isc.org. Este pacote fornece a biblioteca compartilhada (libbind9 ou libdns) usada pelos daemons e clientes do BIND.

Sim, o nome da biblioteca muda, mas qual a diferença entre elas? O que é libbind, o que é libdns? Por que o projeto bind9 produz dois pacotes com bibliotecas diferentes e onde eles estão documentados?

  • libbind9-161:amd64Biblioteca compartilhada usada pelo BIND
  • libdns1104:amd64Biblioteca compartilhada DNS usada pelo BIND

Responder1

Como Stephen Kitt escreveu, esses pacotes têm descrições diferentes:

  • libbind9-161: Este pacote fornece a biblioteca compartilhada libind9 usada pelos daemons e clientes do BIND.
  • libdns1104: Este pacote fornece a biblioteca compartilhada libdns usada pelos daemons e clientes do BIND.

Você sempre pode verificar novamente o que está dentro de um pacote deb.

libbind9-161o pacote vem com a biblioteca compartilhada libind9.so.161 elibdns1104- bibliotecas libdns-pkcs11.so.1104 e libdns.so.1104.

$ 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

Responder2

As descrições de ambos os pacotes seguem um formato típico usado para pacotes relacionados: eles compartilham uma seção comum,

O Berkeley Internet Name Domain (BIND) implementa um servidor de nomes de domínio da Internet. BIND é o software de servidor de nomes mais utilizado na Internet e é suportado pelo Internet Software Consortium, www.isc.org.

e um parágrafo específico do pacote,

Este pacote fornece a libdnsbiblioteca compartilhada usada pelos daemons e clientes do BIND.

Para libdnse

Este pacote fornece a libbind9biblioteca compartilhada usada pelos daemons e clientes do BIND.

Eles são muito semelhantes e não fornecem muitas informações para distinguir entre os dois. No entanto, eles ajudamusuários finaisdetermine seu uso: ambas são bibliotecas compartilhadas usadas pelos daemons e clientes do BIND.

Examinando as bibliotecas com mais detalhes, libdnsfornece funções relacionadas ao DNS de baixo nível, enquanto libbind9fornece um pequeno número de funções de resolução de nomes de alto nível. libbind9depende de libdns, assim como várias outras bibliotecas BIND.

O pacote fonte BIND9produz sete pacotes de bibliotecas e pacotes de bibliotecas de exportação e udebs relacionados. Isso depende inteiramente do mantenedor do pacote; Imagino que a decisão de empacotar a maioria das bibliotecas separadamente venha, pelo menos em parte, do fato de que os nomes dos pacotes de bibliotecas devem codificar os nomes das bibliotecas, e a divisão do pacote da biblioteca BIND9 segue essa regra.

No entantonada disso deveria realmente importar para a grande maioria dos usuários finais. Os pacotes de bibliotecas em geral no Debian só são instalados como um efeito colateral da instalação dos pacotes que precisam deles; isso também vale para o BIND9. Se você instalardnsutils, você terminará com libbind, libdns, libisc, libisccfge liblwrestambém, mas os recursos de seu interesse estão em dnsutils, não nos pacotes da biblioteca. A única razão realista para se preocupar com os pacotes de biblioteca é se você estiver desenvolvendo software usando-os e, mesmo assim, instalar o pacote de desenvolvimento,libbind-dev, não os pacotes de biblioteca individuais.

informação relacionada