¿Hostname no se puede resolver?

Iniciado por daredcod3, 5 Julio 2015, 10:19 AM

0 Miembros y 1 Visitante están viendo este tema.

daredcod3

Buenos días foro,

el otro día me instalé Ubuntu+GNOME para ver que tal, y me convence bastante pero me suelta un error la terminal cada vez que ejecuto algo mediante "sudo": sudo: imposible resolver el anfitrión mi_hostname. Todo funciona bien, pero me da esa advertencia.

La salida de /etc/hostname es:

Código (bash) [Seleccionar]

mi_usuario@mi_hostname:~$ cat /etc/hostname
mi_hostname


Y la de /etc/hosts:

Código (bash) [Seleccionar]

mi_usuario@mi_hostname:~$ cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 localserver
127.0.0.1 mi_hostname

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


He probado a cambiar "mi_hostname" en ambos archivos y reiniciar y nada, me sigue dando el mismo error. ¿Alguna idea de qué puede estar pasando?

Un saludo, ¡Gracias por leer!


MinusFour

¿Que comando estas ejecutando para resolver el dominio? Me parece que el segundo parametro en /etc/hosts tiene que ser un FQDN y despues puedes poner los alias que no sean FQDN. Por ejemplo:


127.0.0.1    localhost.localdomain    localhost
127.0.0.1    mi_hostname.localdomain    mi_hostname

daredcod3

Hola MinusFour, lo he cambiado tal como indicas y nada, sigue igual.

Código (bash) [Seleccionar]
127.0.0.1       localhost.localdomain   localhost
127.0.1.1       AtlasUbuntu.localdomain AtlasUbuntu


# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


Usando "sudo" me da un error, y con host me dice eso:

Código (bash) [Seleccionar]
pedrojavier@AtlasUbuntu:~$ host localhost
localhost has address 127.0.0.1
localhost has IPv6 address ::1
pedrojavier@AtlasUbuntu:~$ host AtlasUbuntu
Host AtlasUbuntu not found: 3(NXDOMAIN)


Es como si no mirase el archivo /etc/hosts...  :-(



MinusFour

Es algo raro que te resuelva localhost. Será alguna entrada que tengas en tu servidor DNS? Host es un comando para eso de hecho, y /etc/hosts no estan en tus DNS.


NAME
       host - DNS lookup utility.


Por otro lado si haces ping... yo creo que debería funcionarte.

daredcod3

Según wikipedia: "El archivo hosts de un ordenador es usado por el sistema operativo para guardar la correspondencia entre dominios de Internet y direcciones IP. Este es uno de los diferentes métodos que usa el sistema operativo para resolver nombres de dominios."

Haciendo ping a "localhost" me devuelve señal, pero a "AtlasUbuntu" que también está en "/etc/hosts" no. He indagado por internet y debería de funcionar tal y como lo tenía al principio, pero nada...

Creo que voy a volver a Fedora que Ubuntu me está dando miles de problemas y asunto resuelto xD

MinusFour

Cita de: daredcod3 en  7 Julio 2015, 09:04 AM
Según wikipedia: "El archivo hosts de un ordenador es usado por el sistema operativo para guardar la correspondencia entre dominios de Internet y direcciones IP. Este es uno de los diferentes métodos que usa el sistema operativo para resolver nombres de dominios."

Haciendo ping a "localhost" me devuelve señal, pero a "AtlasUbuntu" que también está en "/etc/hosts" no. He indagado por internet y debería de funcionar tal y como lo tenía al principio, pero nada...

Creo que voy a volver a Fedora que Ubuntu me está dando miles de problemas y asunto resuelto xD

El archivo de /etc/hosts es una cosa, el comando host es otra. Host envía queries a los servidores DNS. No revisa tu archivo /etc/hosts. Básicamente, para resolver los dominios, linux se ayuda de los servidores DNS y tu archivo /etc/hosts. Revisa tu nsswitch.conf (/etc/nsswitch.conf) y busca por dns. Debe decir algo como: 'hosts: dns files'. Esto quiere decir, que la librería de resolución de dominios va primero a revisar en el servidor DNS y luego en tus archivos. Host sin embargo, no usa librería (al menos no para eso) y es básicamente un cliente DNS que hace la pregunta directamente a los servidores.

Realmente no se que pudiera estar pasando fuera de un archivo /etc/hosts malformado o que nsswitch.conf tiene apagado la resolución de nombres por archivos. localhost parece que lo esta resolviendo uno de tus servidores DNS y no tu archivo /etc/hosts.