Converter registros DNS dinâmicos em estáticos

2

Na preparação para habilitar o Envelhecimento / Recuperação do DNS, um ponto trazido até nós são nossas impressoras (têm um pouco mais de 1000) e o DNS não está sendo atualizado. Todas as zonas são integradas ao Active Directory. Eu estou tentando descobrir a melhor abordagem para configurá-los para um registro estático. Todas as impressoras começam com o mesmo prefixo para o nome no DNS (xxx ... 102, xxx ... 103, xxx ... 104). Eu estou pensando em duas opções.

A :) Converta todos os registros da impressora em registros estáticos sem precisar editar manualmente cada registro. Existe uma maneira de fazer um filtro para o prefixo da impressora e convertê-los em registros estáticos do DNSCMD?

B :) Exportar todos os registros da impressora que correspondem a um filtro com o prefixo da impressora e importá-los como um registro estático?

A orientação seria apreciada para qualquer uma dessas opções ou outra alternativa viável. Qualquer outro conselho para habilitar o Envelhecimento / Recuperação de DNS para uma grande empresa seria obviamente bem-vindo.

Obrigado.

    
por Henry 03.09.2014 / 23:58

2 respostas

3

@Massimo está parcialmente correto, pois você pode usar Set-DnsServerResourceRecord para isso, mas não pode definir diretamente o registro de data e hora, pois essa propriedade é considerada somente leitura. Em vez disso, qualquer alteração que você fizer resultará no registro se tornar estático.

Veja uma amostra de como você pode fazer isso:

$dnsServer = 'MyDC01'
$zone = 'contoso.com'
$records = Get-DnsServerResourceRecord -ComputerName $dnsServer -ZoneName $zone -RRType A | Where-Object { $_.HostName -like 'printer*' }

$records | ForEach-Object {
    Set-DnsServerResourceRecord -OldInputObject $_ -NewInputObject $_ -ComputerName $dnsServer -ZoneName $zone
}

Isso não deve ser destrutivo, pois os objetos de entrada e saída são os mesmos, mas tenha cuidado, tenha backups!

Em relação à eliminação

Se os registros da sua impressora já estiverem dinâmicos (talvez porque eles estejam configurados via DHCP e o DHCP esteja atualizando-os), provavelmente você não deve torná-los estáticos. Se o DHCP e o DNS dinâmico estiverem funcionando corretamente, as datas serão atualizadas e a limpeza não as prejudicará.

Se as impressoras forem DHCP, mas os registros de data e hora não estiverem atualizando, você deverá descobrir o motivo e resolver o problema antes de ativar a eliminação.

Se você precisar torná-los estáticos, o DHCP deverá ser configurado para esses escopos ou para que as reservas individuais não atualizem dinamicamente o DNS.

Nota sobre registros de data e hora

Você deve ativar a eliminação nas zonas integradas do AD antes que os timestamps sejam replicados. Se parecer que as datas estão erradas e inconsistentes, você pode estar se deparando com isso. A ativação da eliminação na zona não não recupera registros (essa configuração está no servidor). Eu tinha a eliminação ativada nas zonas por dois meses antes de eu realmente definir a eliminação para ser executada, para que eu pudesse ter certeza de que os timestamps eram consistentes e estavam sendo atualizados.

    
por 04.09.2014 / 00:51
0

No DNS do Windows, um registro é definido como estático se não tiver um timestamp ; Assim, a resposta que você está procurando é "obter todos esses registros e definir seu timestamp como 0".

Isso pode ser feito facilmente com o PowerShell no Windows Server 2012, que apresenta uma série de cmdlets do PowerShell para trabalhando com o DNS ; aqueles que você está procurando são Get-DnsServerResourceRecord e Set-DnsServerResourceRecord , que deve permitir que você crie um script como este:

- Get all records of type A for your DNS zone
- Filter them to select the ones starting with the prefix you want
- For each record:
    - Set the timestamp to 0
    - Save the record

Por favor, note que você não precisa que seus servidores DNS executem o Windows Server 2012 para que isso funcione; você só precisa executar o script em uma máquina WS2012 ou WS2012R2. Em um piscar de olhos, até mesmo um computador com Windows 8 ou Windows 8.1 funcionará, mas você precisará instalar as Ferramentas de Administração de Servidor Remoto nele.

    
por 04.09.2014 / 00:28