GNU/Linux >> Tutoriales Linux >  >> Linux

Utilidad de línea de comandos de Linux para resolver nombres de host usando /etc/hosts primero

Solución 1:

Esto se logra fácilmente con getent :

getent hosts 127.0.0.1

getent hará búsquedas para cualquier tipo de datos configurados en nsswitch.conf .

Solución 2:

Una herramienta que funcionaría es getent . Así que podrías usar getent hosts www.google.com o getent hosts localhost . Recuperará las entradas de las bases de datos como se especifica en la configuración del cambio de servicio de nombres /etc/nsswitch.conf .

Para implementaciones más modernas use getent ahosts www.google.com que obtendrá múltiples resultados.

Solución 3:

Usa getent ahosts , por ejemplo:

$ getent ahosts www.google.com | sed -n 's/ *STREAM.*//p'
216.58.210.196
2a00:1450:4006:803::2004

Obtendrá todas las direcciones IPv4 e IPv6, a través de la resolución de glibc (por lo tanto, usando /etc/hosts primero, como suele configurarse en /etc/nsswitch.conf ).

No use getent hosts , ya que le dará direcciones IPv6 o IPv4 (no ambas), y el protocolo elegido puede no ser uno que no funcione. De hecho, generalmente se prefieren las direcciones IPv6, pero en algunos lugares, los enrutadores filtran (no admiten) los datos IPv6.

Solución 4:

Puede usar un envoltorio gethostbyname() (obsoleto) como:

python -c 'import socket;print socket.gethostbyname("www.google.com")'

O un envoltorio getaddrinfo() como:

python -c 'import socket;print socket.getaddrinfo("www.google.com","http")[0][4][0]'

Tenga en cuenta que getaddrinfo devolverá todas las instancias como una lista. La última parte del comando selecciona solo la primera tupla. Esto también puede devolver direcciones IPv6.

Solución 5:

resolveip hará esto.

Curiosamente, es parte de los paquetes del servidor mysql en RHEL y Ubuntu.


Linux
  1. Restrinja el acceso a los servidores Linux mediante contenedores TCP

  2. Cómo reiniciar Linux usando la línea de comandos

  3. Entendiendo el archivo /etc/hosts en Linux

  4. Descarga paralela usando la utilidad de línea de comando Curl

  5. utilidad de línea de comandos para imprimir estadísticas de números en Linux

Cómo crear un archivo en Linux usando Terminal/Línea de comando

Cómo probar la velocidad de Internet usando la línea de comandos en Linux

La forma correcta de editar archivos /etc/passwd y /etc/group en Linux

¿Desinstalar Node.JS usando la línea de comandos de Linux?

Diferencia entre /etc/hosts y /etc/resolv.conf

Límite de tamaño de /etc/hosts (Linux)