como alterar todos os nomes de host relatados por hostname --all-fqdns?

1

A execução de hostname -A informa dois nomes de host: um incorreto que nem sequer resolve para o meu servidor e um correto.

$ hostname -A
notmyhostname.notmydomain.com  myhostname.mydomain.com

O incorreto está bagunçando outras ferramentas como o xauth. Eu grep -r 'ed / etc para tentar encontrar onde esse valor é armazenado, mas não consigo encontrá-lo.

Onde eles são armazenados e como posso corrigir o primeiro valor de nome de host?

    
por adapt-dev 29.04.2016 / 03:39

1 resposta

2

O nome de host extra vem de uma pesquisa de endereço IP DNS.in-addr.arpa (geralmente chamada de 'DNS reverso', que mapeia endereços IP para nomes de host). Ou talvez /etc/hosts .

De man hostname :

-A, --all-fqdns

Displays all FQDNs of the machine. This option enumerates all configured network addresses on all configured network interfaces, and translates them to DNS domain names. Addresses that cannot be translated (i.e. because they do not have an appropriate reverse IP entry) are skipped. Note that different addresses may resolve to the same name, therefore the output may contain duplicate entries. Do not make any assumptions about the order of the output.

Note especialmente a frase Esta opção enumera todos endereços de rede configurados em todas as interfaces de rede configuradas

Portanto, para descobrir de onde notmyhostname.notmydomain.com está vindo, gere uma lista de todos os endereços IP em todas as interfaces e faça uma pesquisa de DNS reverso em cada um deles:

ip addr | awk '/inet/ {gsub(/\/.*/,"") ; print $2}' | xargs -n 1 host

Isso fará buscas por endereços ipv6 e ipv4. Se você quiser apenas o ipv4, adicione um espaço depois de "inet", por exemplo,

awk '/inet / ...' ...

BTW, provavelmente é o seu ISP ou provedor de hospedagem (ou seu upstream) ou quem possui o domínio .in-addr.arpa ou .ip6.arpa para sua sub-rede IP. Eles terão adicionado uma entrada de DNS reverso para o seu IP.

    
por 29.04.2016 / 04:00