Gostaria de alternar entre nomes de host e endereços IP hexadecimais e vice-versa. Eu instalei syslinux-utils
em Debian Stretch
, que fornece gethostip
:
gethostip -x google.com
D83ACD2E
Como posso D83ACD2E
voltar para o nome do host?
Na versão mais antiga do Debian Wheezy
, posso usar os comandosgetaddrinfo' and 'getnameinfo
# getaddrinfo google.com
D83ACD4E
# getnameinfo D83ACD4E
mil04s25-in-f14.1e100.net
Não consegui encontrar essas ferramentas em Debian Stretch
. Essas ferramentas foram substituídas por outras?
Você poderia hexificar
D83ACD2E
, empacotá-lo em um inteiro de 32 bits (ordem de bytes de rede!) e, em seguida, imprimir os componentes de caractere (sem sinal!) desse inteiro unidos por pontos. (Isso também é possível se for um pouco mais detalhado em assembly .)Com menos complicações, o sinalizador decimal
gethostip
fornece esse valor diretamente, que pode ser alimentado parahost
ounslookup
ougetent hosts
esse é o registro DNS PTR associado ao endereço IP fornecido, que pode ou não ser definido, ou pode ou não ser o nome do host que você está procurando.
Ou se você pesquisar com
apt-file
mas essa versão não parece suportar sua notação:
mas faz se o prefixo hexadecimal convencional
0x
for usado(de acordo com a página de manual, o Debian renomeou o programa, que agora me lembro de LeoNerd ter mencionado no IRC há algum tempo...)
Se você está decidido a aceitar,
D83ACD4E
isso pode ser feito com o acimahex
para numificar esse valor, empacotá-lo e perfurá-lo cegamente através dasSocket
funções do módulo. Mas isso realmente deve ser um script com verificação de erros, validação de entrada, testes, etc.Você pode usar glibc
getent
aqui:Outra
perl
abordagem: