Usar registos DNS TXT com caches de conteúdo para dispositivos Apple
Adicione os registos TXT ao ficheiro de zona DNS
Adicione um ou mais registos TXT ao ficheiro de zona para o seu domínio local no servidor DNS. Adicione o registo TXT DNS à zona que:
for autorizada para o domínio;
corresponder ao domínio de pesquisa predefinido para clientes de rede.
Por exemplo, se a sua organização fornecer o serviço de DNS para o seu próprio domínio e é a fonte de autoridade para os nomes de host para betterbag.com, o registo TXT de cache é colocado no ficheiro de zona de betterbag.com.
Importante: se não alojar o serviço de DNS autorizado para o seu domínio, pode adicioná-lo ao registo TXT. Coordene com o seu fornecedor de DNS para que este adicione o registo TXT fornecido.
Se usar o DNS BIND9, copie o registo TXT gerado e cole-o no ficheiro de zona de DNS.
Para DNS com base em BIND9 em Linux, esse ficheiro está no diretório /private/etc/bind/ e o nome do ficheiro de zona foi definido em /private/etc/bind/named.conf (provavelmente “db.betterbag.com.”).
Se utiliza o DNS do Windows, proceda de uma das seguintes formas:
Se gerou o registo de texto com o serviço de cache de conteúdo: substitua a variável ZoneName no comando gerado com o nome de zona de DNS da rede e, em seguida, execute o comando no computador DNS Windows.
Se criou manualmente o registo de texto: introduza manualmente a informação do registo TXT usando as ferramentas de administração do Windows Server.
Usar registos DNS TXT para publicar conteúdo em vários endereços IP públicos
Caso a sua rede use vários endereços IP públicos para estabelecer ligação à Internet, de tal forma que uma cache de conteúdo se possa registar com um endereço diferente daquele que o cliente usa para a deteção, é necessário fornecer à cache de conteúdo e aos clientes uma lista com esses endereços. A Apple usa estas listas para registo cruzado e pedidos de deteção que envolvem vários endereços IP públicos.
Para evitar a configuração manual de clientes, a cache de conteúdo usa registos TXT DNS para publicar as informações do endereço IP público para clientes na sua rede. O registo TXT tem de ser publicado no domínio de pesquisa DNS predefinido usado pelos seus clientes.
Com o macOS 10.15 ou posterior, também pode especificar endereços de IP locais preferenciais para reduzir o impacto das outras caches de conteúdo na sua rede. Se nenhuns endereços IP locais preferenciais forem declarados num registo TXT, todos os clientes usam qualquer cache de conteúdo disponível.
Os dados corretos para o registo TXT para intervalos de endereços IP públicos podem ser gerados de forma automática ou manual. Em qualquer um dos casos, é necessário editar o registo DNS ou dar as definições ao ser fornecedor de DNS para criar ou editar o registo TXT no ficheiro de zona. Esteja ciente de que não pode gerar automaticamente registos TXT para endereços IP locais preferenciais, estes devem ser criados manualmente.
Nota: estes registos são apenas necessários para a sua rede interna. O DNS externo não necessita de registos adicionais.
Formato de registo TXT DNS
A sintaxe para especificar registos TXT e caracteres que não são ASCII em registos TXT podem variar para o seu servidor DNS. Os exemplos apresentados aqui servem apenas para fins ilustrativos.
Os registos de texto de DNS para cache de conteúdo têm o mesmo formato que os registos TXT DNS-SD (pares de valores chave):
name._tcp 10800 IN TXT "[prs|prn|fss|fsn]=addressRanges"
Use as chaves prs
e prn
para intervalos de endereços IP públicos; use as chaves fss
e fsn
para intervalos de endereços IP locais de caches de conteúdo preferenciais.
Cada um dos seguintes exemplos define o mesmo conjunto de dois intervalos de endereços IP: um intervalo que começa em 17.53.22.2 e termina em 17.53.22.254 e um intervalo que consiste num único endereço IP, 17.53.23.1. A diferença entre eles é que o primeiro exemplo usa a chave prs
e o segundo exemplo usa a chave prn
.
_aaplcache._tcp 10800 IN TXT "prs=17.53.22.2-17.53.22.254,17.53.23.1"
_aaplcache._tcp 10800 IN TXT
_aaplcache._tcp 10800 IN TXT "prn=\x24\x11\x35\x16\x02\x11\x35\x16\xfe\x14\x11\x35\x17\x01"
As chaves usam formatos diferentes para os intervalos de endereços IP especificados no valor:
prs ou fss: o valor da chave
prs
oufss
é uma sequência de intervalos separados por vírgulas de endereços IP num formato de apresentação (notação de pontos ASCII). Esta sintaxe serve para facilitar a configuração. Um intervalo consiste num único endereço IP ou em dois endereços IP separador por um hífen.prn ou fsn: o valor da chave
prn
oufsn
é uma sequência de intervalos concatenados de endereços IP num formato de rede-byte-ordem binário. A sintaxe é para sequências de intervalos que são demasiado longas para um registo DNS quando especificado num formato de apresentação. Cada intervalo na sequência é precedido com um byte que especifica o tipo de intervalo que se segue:0x14 indica um endereço IPv4 único.
0x24 indica um intervalo de endereços IPv4 de início e fim.
É possível juntar vários registos em cadeia. Se o fizer, atribua ao primeiro registo o nome _aaplcache._tcp
e aos registos subsequentes _aaplcache1._tcp
até _aaplcache24._tcp
, para um máximo de 25 registos em cadeia.
Para manter a compatibilidade com o macOS 10.14 ou anterior, coloque os registos que usam as chaves
prs ou
prn antes de quaisquer registos que usem chaves
fss ou
fsn.
Coloque registos em cadeia colocando um marcador de continuação em todos, exceto no último registo TXT.
As sintaxes prs
e prn
podem ser misturadas entre registos na cadeia. Com a sintaxe prs
, adicione “mais
” ao final do valor de registo. Com a sintaxe prn
, adicione “+
” (0x2b) ao final do valor de registo. O primeiro registo que não tenha esse marcador de continuação termina a cadeia.
Os registos em cadeia são resolvidos em lotes de cinco em simultâneo, ou seja, _aaplcache._tcp
e _aaplcache1._tcp
até _aaplcache4._tcp
são resolvidos em paralelo primeiro. Caso terminem todos com marcadores de continuação, _aaplcache5._tcp
até _aaplcache9._tcp
são resolvidos a seguir, etc.
Eis um exemplo de três registos em cadeia:
_aaplcache._tcp 10800 IN TXT "prs=17.250.1.1,17.250.2.1-17.250.2.254,more"
_aaplcache1._tcp 10800 IN TXT "prn=\x24\x11\xfa\x03\x01\x11\xfa\x03\xfe+"
_aaplcache2._tcp 10800 IN TXT "prs=17.250.4.5"
1.º exemplo
Este exemplo demonstra um cenário em que ambos os registos prs
ou prn
e um registo fss
ou fsn
são necessários.
Suponha que já tem um registo DNS TXT designado “_aaplcache._tcp
” com o valor “prs=203.0.113.10-203.0.113.19
” e três caches de conteúdo implementadas com os endereços locais 10.0.0.30, 10.1.0.30, e 10.2.0.30. O primeiro serve apenas o conteúdo partilhado e o último serve o conteúdo partilhado e o de iCloud.
Para impedir que os clientes usem uma cache de conteúdo não autorizada, pode anexar “,mais
” a esse registo e adicionar um segundo registo da seguinte forma:
_aaplcache._tcp prs=203.0.113.10-203.0.113.19,more
_aaplcache1._tcp fss=10.0.0.30,10.1.0.30,10.2.0.30
Desde que pelo menos um das três caches de conteúdo esteja a executar este método, os dispositivos que estejam a executar o iOS 13, iPadOS 13.1, macOS 10.15 e tvOS 13 ou posterior que procurem conteúdo partilhado usam essas caches de conteúdo exclusivamente. Se todos os três estiverem offline, os clientes que procurem conteúdo partilhado podem usar qualquer cache de conteúdo disponível.
Desde que a versão 10.2.0.30 esteja a usar este método, os dispositivos que estejam a executar o iOS 13, iPadOS 13.1, macOS 10.15 e tvOS 13 ou posteriores que procurem conteúdo de iCloud usam-no exclusivamente. Se estiver offline, os clientes que procurem conteúdo de iCloud usam qualquer cache de conteúdo disponível.
Os dispositivos com iOS 12 ou anterior e macOS 10.14 ou anterior usam qualquer cache de conteúdo disponível, não apenas esses três.
2.º exemplo
Este exemplo demonstra um cenário em que um registo prs
ou prn
não é necessário.
Suponha que apenas tem um endereço IP público e que não usa a funcionalidade de registo DNS TXT, mas tem algumas caches de conteúdo na sub-rede reservada para servidores (192.168.50/24).
Para impedir caches de conteúdo não autorizadas, pode definir um registo da seguinte forma:
_aaplcache._tcp fss=192.168.50.1-192.168.50.254
Desde que pelo menos uma cache de conteúdo esteja disponível nesse intervalo para o tipo de cliente que procura (partilhado ou iCloud), os clientes iOS 13, iPadOS 13.1, macOS 10.15 e tvOS 13 ou posterior usam-no exclusivamente.