variable ruby fqdn

variable - ¿Cómo puedo obtener el FQDN del host actual en Ruby?



set environment variable linux (3)

Esto parece funcionar:

hostname = Socket.gethostbyname(Socket.gethostname).first

Necesito obtener el nombre de host completamente expandido del host en el que se ejecuta mi script de Ruby. En Perl, he usado Sys :: Hostname :: Long con buenos resultados. Google parece sugerir que debería usar Socket.hostname en ruby, pero eso solo devuelve el nombre del nodo, no el nombre de host completo.


Podría ser un poco simple => hostname = Socket.gethostname


hostname = Socket.gethostbyname(Socket.gethostname).first

no se recomienda y solo funcionará si su resolución DNS inversa está configurada correctamente. Este error Facter tiene una explicación más larga si es necesario.

Si lees el código facter, notarás que de alguna forma soslayan el problema al decir :

fqdn = hostname + domainname

dónde:

hostname = %[hostname] domainname = %[hostname -f] # minus the first element

Esta es una suposición razonable que no depende de la configuración del DNS (que puede ser externo a la caja).