Resolução de nomes de VM do Azure Linux

Resolução de nomes de VM do Azure Linux

Temos uma única rede virtual, com um único servidor em nuvem no Azure. Esta rede virtual possui vários nós de servidor – incluindo máquinas Windows e algumas máquinas Linux. Uma das máquinas Windows hospeda um servidor DNS local, para fins de resolução de nomes na rede virtual. Todos os nós foram criados com a opção DNS, para que o DNS local seja registrado nos nós como seu DNS. Além disso, as configurações da rede virtual foram atualizadas para incluir este servidor DNS (172.16.0.4) como DNS para o VN.

Minhas máquinas Windows conseguem funcionar bem - após um novo provisionamento ou reinicialização, o DNS é atualizado automaticamente para refletir o novo IP dessa máquina, se houver.

No entanto, as máquinas Linux não estão registradas neste DNS local. Os nós Linux são capazes de resolver o IP do nó Windows, usando o DNS local (172.16.0.4), mas não conseguem alcançar os outros nós Linux através da resolução de nomes.

Tentei atualizar o arquivo resolvconf/resolvconf.d/tail, adicionei uma entrada "search" e reiniciei. Também tentei fornecer o FQDN no arquivo de nome do host do servidor Linux. Percebi que o resolv.conf ainda possui uma string "search reddog.microsoft.com". Isso sugere que o sufixo DNS usado ainda é o mais antigo, embora um novo servidor DNS local esteja disponível na VN. O resolv.conf se parece com o seguinte:

nameserver 172.16.0.4
search reddog.microsoft.com

Pelo que entendi, a causa raiz desse problema é que o servidor DHCP do Azure deve enviar solicitações DDNS para este DNS local (que foi devidamente registrado como um DNS de nível VN) para atualizar os registros de qualquer novo nó ou nó reiniciado que surgir neste VN. Mas o DHCP do Azure não parece estar enviando essas solicitações de DDNS para o DNS. o que estou perdendo?

Responder1

Meu pensamento inicial seria que este é um problema com o seu servidor DNS aceitando o registro do servidor Linux, em vez de ser direcionado para lá. Uma coisa a verificar: sua zona DNS está configurada para aceitar atualizações não seguras? Isso é necessário porque os servidores Linux não poderão se autenticar para atualizar o DNS.

Responder2

Você pode modificar a configuração do seu cliente DHCP adicionando as seguintes linhas:

 supersede domain-name "your.domainname.com";
 supersede domain-search "your.domainname.com";
 supersede search "your.domainname.com";

Normalmente você pode localizar a configuração do DHCP no /etc/dhcp/dhclient.confarquivo. Procure dhclientdentro /etc/para encontrar o caminho certo.

Outras soluções possíveis:https://superuser.com/questions/110808/how-can-i-add-additional-search-domains-to-the-resolv-conf-created-by-dhclient-i

Responder3

Sem mencionar que o conteúdo de /etc/resolv.conf é redefinido para o padrão do Azure toda vez que o servidor é reinicializado. Portanto, mesmo que você o altere, na próxima vez que você reiniciar, ele estará de volta com o domínio de pesquisa reddog.microsoft.com e qualquer que seja o seu servidor de nomes padrão do Azure.

informação relacionada