Gestionar Los Hosts

9
Gestionar los hosts Para gestionar los hosts, puede añadir, editar, o borrar hosts del archivo /etc/hosts. Este archivo contiene direcciones IP y sus correspondientes nombres de host. Cuando su sistema intenta resolver un nombre de host en una dirección IP, o determinar el nombre del host a partir de su dirección IP, busca en el archivo /etc/hosts antes de usar los servidores de nombres. Si la dirección IP se encuentra en el archivo /etc/hosts, no se usarán los servidores de nombres. Este comportamiento se puede modificar cambiando el archivo /etc/nsswitch.conf para adaptarlo a sus necesidades. Si su red contiene equipos cuyas direcciones IP no están listadas en el DNS, es recomendable que las añada en el archivo /etc/hosts Resolución de nombres en un mundo UNIX/Linux puro Los ficheros de configuración claves en esta sección son: /etc/hosts /etc/resolv.conf /etc/host.conf /etc/nsswitch.conf /etc/hosts Un fichero que contiene una lista estática de asociaciones entre IP y nombres. 127.0.0.1 localhost localhost.localdomain 192.168.1.1 bigbox.quenya.org bigbox alias4box El objetivo de /etc/hosts es dar un mecanismo de resolución de nombres para que los usuarios no tengan que recordar direcciones IP.

Transcript of Gestionar Los Hosts

Page 1: Gestionar Los Hosts

Gestionar los hosts

Para gestionar los hosts, puede añadir, editar, o borrar hosts del archivo /etc/hosts. Este archivo contiene direcciones IP y sus correspondientes nombres de host. Cuando su sistema intenta resolver un nombre de host en una dirección IP, o determinar el nombre del host a partir de su dirección IP, busca en el archivo /etc/hosts antes de usar los servidores de nombres. Si la dirección IP se encuentra en el archivo /etc/hosts, no se usarán los servidores de nombres. Este comportamiento se puede modificar cambiando el archivo /etc/nsswitch.conf para adaptarlo a sus necesidades.

Si su red contiene equipos cuyas direcciones IP no están listadas en el DNS, es recomendable que las añada en el archivo /etc/hosts

Resolución de nombres en un mundo UNIX/Linux puro

Los ficheros de configuración claves en esta sección son:

/etc/hosts /etc/resolv.conf /etc/host.conf /etc/nsswitch.conf

/etc/hosts

Un fichero que contiene una lista estática de asociaciones entre IP y nombres.

127.0.0.1 localhost localhost.localdomain192.168.1.1 bigbox.quenya.org bigbox alias4box

El objetivo de /etc/hosts es dar un mecanismo de resolución de nombres para que los usuarios no tengan que recordar direcciones IP.

Los paquetes de red que se envían sobre la capa física no se comunican usando direcciones IP sino direcciones MAC (Media Access Control). Las direcciones IP son actualmente de 32 bits de longitud y presentan como cuatro números decimales separados por puntos. Por ejemplo 168.192.1.1.

La direcciones MAC usan 48 bits (o 6 bytes) y se representan en formato hexadecimal separando cada byte por ":", por ejemplo 40:8e:0a:12:34:56.

Cada adaptador de red tiene que tener uan dirección MAC. Asociado con la dirección MAC puede haber una o más direcciones IP. No hay relación directa entre una dirección IP y una

Page 2: Gestionar Los Hosts

dirección MAC; todas las asignaciones son arbitrarias por naturaleza. En el nivel más básico, todas las comunicaciones de red tienen lugar utilizando direccinones MAC. Como ls direcciones MAC son únicas globalmente y normalmente son fijas para cada interfaz, tiene sentido, desde la perpectiva de la gestión de red, la asignación de una dirección IP. Se puede asignar más de una dirección IP por cada dirección MAC. Una dirección tiene que ser la dirección IP primaria. Esta es la dirección que se obtiene en una respuesta ARP.

Cuando un usuario o proceso quiere comunicar con otra máquina la implementación del protocolo asegura que nombre de máquina o nombre de host se resuelve a una dirección IP de forma que es controlada por los ficheros de control del protocolo TCP/IP. El fichero /etc/hosts es uno de esos.

Cuando sse ha averigado la dirección IP de la interfaz destino, se usa un protocolo llamado ARP/RARP para identificar la dirección MAC de la interfaz destino. ARP significa Address Resolution Protocol y es un método orientado a difusión que usa UDP para enviar solicitudes a todas las interfaces del segmento de la red local utilizando la dirección MAC de difusión (todo unos). Los adaptadores de red están programados para contestar a dos direcciones MAC sólo, su propia y única dirección MAC y a la dirección ff:ff:ff:ff:ff:ff. El paquete respuesta contiene la dirección MAC y la dirección IP primaria de cada interfaz.

El fichero /etc/hosts es básico pra todas las instalaciones TCP/IP en UNIX/Linux TCP/IP y como mínimo contendrá el localhost y la IP de la interfaz de red local y los nombre primarios por los que se conoce la máquina local. Este fichero ayuda para resolver un nivel de nombres básico que puede existir previo a otros sistemas de resolución.

/etc/resolv.conf

Este fichero indica a la biblioteca de rsolución:

El nombre del dominio al que pertenece la máquina. El o los nombres de cualquier dominio en el que se debiera buscar automáticamente

cuando intenta resolver un nombre sin dominio. La dirección IP de los servidores de nombres que usa esta máquina.

/etc/host.conf

/etc/host.conf es el indica el orden de los sistema de resolución de nombres, el establecido en /etc/resolv.conf o en el fichero de /etc/hosts. Su estructura típica es

order hosts,bindmulti on

entonces devuelve ambas direciones. Cosulte la página de manual de host.conf para más detalles.

Page 3: Gestionar Los Hosts

/etc/nsswitch.conf

Este fichero controla los sistema de resolución. El fichero típico es similar a:

# /etc/nsswitch.conf## Name Service Switch configuration file.#

passwd: compat# Alternative entries for password authentication are:# passwd: compat files nis ldap winbindshadow: compatgroup: compat

hosts: files nis dns# Alternative entries for host name resolution are:# hosts: files dns nis nis+ hesiod db compat ldap winsnetworks: nis files dns

ethers: nis filesprotocols: nis filesrpc: nis filesservices: nis files

Por supuesto, cada uno de estos mecanismos requiere que el correspondiente servicio esté correctamente configuardo y en funcionamiento.

Es importante tener en cuenta que TCP/IP es un protocoo silencioso, no transmite salvo petiticiones o respuestas explícitas. Todas las comunicaciones TCP/IP suponen uqe sólo se tiene que hablar cuando es necesario.

Comenzando con la versión 2.2.0, Samba tiene soporte para en Linux para las extensiones de los sistemas de nombres (nsswitch.conf indica donde buscar nobres de máquinas, de usuarios, de grupos, etc) y en consecuencia los clientes Linux podrán obtener la resolución de noombres MS Windows NetBIOS a direcciones IP. Para esta funcionalidad Samba se tiene que compilar con las opciones adecuadas con make (i.e., make nsswitch/libnss_wins.so). La biblioteca resultante se deber-ia instalar en el directorio /lib y se tiene que añadir el parámetro wins al fichero /etc/nsswitch.conf. En este punto es posible hacer ping a una máquina MS Windows con el nombre NetBIOS, siempre que tanto las maquinas Samba como MS Windows pertenezcan al mismo grupo de trabajo.

13.3.1.3. /etc/resolv.conf

Al igual que el archivo /etc/host.conf, este también juega un papel en la resolución de nombres de ordenadores a través de la librería resolver.

En este archivo se indica el dominio al que pertenece el ordenador (palabra clave search) y la dirección del servidor de nombres (palabra clave nameserver) al que se debe dirigir. Se

Page 4: Gestionar Los Hosts

puede introducir más nombres de dominio. Al resolver nombres que no estén totalmente cualificados se intentará generar un nombre válido y cualificado añadiendo entradas únicas en search. Se puede dar a conocer otros servidores de nombres añadiendo más líneas que comiencen con nameserver. Se puede introducir comentarios con #.

En el archivo 13.5, “/etc/resolv.conf”, se muestra un ejemplo para /etc/resolv.conf.

Ejemplo 13.5. /etc/resolv.conf

# Our domainsearch example.com## We use sol (192.168.0.20) as nameservernameserver 192.168.0.20

YaST escribe aquí el servidor de nombres especificado.

Algunos servicios, como pppd (wvdial), ipppd (isdn), dhcp (dhcpcd y dhclient), pcmcia y hotplug pueden modificar los archivos /etc/resolv.conf mediante el script modify_resolvconf.

Al modificar el archivo /etc/resolv.conf con este script, aquel contendrá un comentario que da información sobre los servicios que se han modificado, el lugar donde se encuentra el archivo original y cómo se puede detener las modificaciones automáticas.

Si /etc/resolv.conf es modificado más veces, se volverá a limpiar este cúmulo de modificaciones cuando se recojan en otro orden; lo cual puede ocurrir con isdn, pcmcia y hotplug.

Si un servicio no ha finalizado “limpiamente”,se puede restaurar el estado original con ayuda del script modify_resolvconf. Al arrancar se probará si un resolv.conf se ha quedado modificado (por ejemplo debido a un cuelgue del sistema); en ese caso se volverá a restaurar el resolv.conf original (sin modificar).

Por medio de modify_resolvconf check, YaST averigua si resolv.conf fue modificado, tras lo cual avisa al usuario de que se han perdido sus cambios tras la restauración. En caso contrario, YaST no utiliza modify_resolvconf, lo que quiere decir que una modificación en el archivo resolv.conf mediante YaST equivale a una modificación manual. Ambas indican una modificación duradera mientras que las realizadas por los servicios mencionados sólo son pasajeras.

13.3.1.4. /etc/hosts

Este archivo (ver archivo 13.6, “/etc/hosts”) tiene una tabla de asignación entre nombres de ordenadores y direcciones IP. En esta tabla deben aparecer todos los ordenadores con los que se quiere establecer una conexión IP cuando no se usa un servidor de nombres. Cada ordenador ocupa una línea en la tabla que contiene el número IP, el nombre completo de la

Page 5: Gestionar Los Hosts

máquina y el nombre (abreviado), por ejemplo tierra. La línea debe comenzar con la dirección IP y las demás indicaciones se separan con espacios o tabuladores. Los comentarios comienzan con #.

Ejemplo 13.6. /etc/hosts

127.0.0.1 localhost192.168.0.20 sol.example.com sol192.168.0.0 tierra.example.com tierra

13.3.1.5. /etc/networks

En este archivo se convierten los nombres de redes en direcciones de red. El formato se parece al del archivo hosts sólo que aquí los nombres de las redes aparecen por delante de sus direcciones IP (ver archivo 13.7, “/etc/networks”).

Ejemplo 13.7. /etc/networks

loopback 127.0.0.0localnet 192.168.0.0

13.3.1.6. /etc/host.conf

La resolución de nombres, o sea, la traducción del nombre del ordenador o de la red mediante la librería resolver, se gestiona a través de este archivo. El cual sólo se utiliza para programas con enlaces a libc4 o libc5 (para programas glibc actuales, ver las opciones de configuración en etc/nsswitch.conf). Un parámetro debe ocupar una sola línea y los comentarios comienzan con #. Los parámetros posibles se muestran en la tabla 13.5, “Parámetros de /etc/host.conf”.

Tabla 13.5. Parámetros de /etc/host.conf

order hosts, bind

Determina el orden de llamada a los servicios de resolución de nombres. Los parámetros posibles, separados por espacios o comas, son:

hosts: Búsqueda en el archivo /etc/hosts

bind: Llamada a un servidor de nombres

nis: Mediante NIS

multi on/offDetermina si un ordenador dado de alta en /etc/hosts puede tener varias direcciones IP.

nospoof on spoofalert on/off

Estos parámetros influyen sobre el spoofing del servidor de nombres, pero no tienen ninguna influencia adicional sobre la configuración de red.

trim domainname

El nombre de dominio que se indica aquí, se resta del nombre totalmente cualificado del ordenador que lo contiene (antes de asignar la dirección IP al nombre de ordenador). Se trata de una opción muy útil cuando el archivo

Page 6: Gestionar Los Hosts

/etc/hosts sólo contiene nombres de ordenadores locales (alias) y estos deben ser reconocidos también cuando se añade el nombre del dominio.

El archivo 13.8, “/etc/host.conf” muestra un ejemplo de /etc/host.conf.

Ejemplo 13.8. /etc/host.conf

# We have named runningorder hosts bind# Allow multiple addrsmulti on

13.3.1.7. /etc/nsswitch.conf

Con la version 2.0 de la librería GNU de C comenzó el uso del Name Service Switch (NSS) (ver la página del manual de man 5 nsswitch.conf o bien la información más extensa de The GNU C Library Reference Manual, capítulo “System Databases and Name Service Switch” – ver libcinfo.

El archivo /etc/nsswitch.conf determina en qué orden se solicitan determinadas informaciones. El archivo 13.9, “/etc/nsswitch.conf”, muestra un ejemplo para nsswitch.conf en el cual las líneas de comentarios comienzan con #. Respecto a la “base de datos” hosts, el ejemplo siguiente indica que se envía una solicitud al servicio DNS (ver el apartado 13.6, “DNS – Domain Name System”) después de consultar /etc/hosts (files).

Ejemplo 13.9. /etc/nsswitch.conf

passwd: compatgroup: compat

hosts: files dnsnetworks: files dns

services: db filesprotocols: db files

netgroup: filesautomount: files nis

Las “bases de datos” accesibles vía NSS se recogen en la tabla 13.6, “Bases de datos accesibles a través de /etc/nsswitch.conf”. Para el futuro se espera también la disponibilidad de automount, bootparams, netmasks y publickey.

Tabla 13.6. Bases de datos accesibles a través de /etc/nsswitch.conf

aliases Alias de correo usado por sendmail, ver la página del manual man 5 aliases.ethers Direcciones de ethernet.

Page 7: Gestionar Los Hosts

group Usado por getgrent para grupos de usuarios, ver la página del manual man 5 group.

hosts Para nombres de host y direcciones IP, utilizados por funciones como gethostbyname o similares.

netgroup Lista de hosts y de usuarios válida en la red para administrar los derechos de acceso; ver la página del manual man 5 netgroup.

networks Nombres y direcciones de redes, lo usa getnetent.

passwd Contraseñas de usuarios, utilizado por getpwent, ver la página del manual man 5 passwd.

protocols Protocolos de red, información utilizada por getprotoent, ver la página del manual man 5 protocols.

rpc Nombres y direcciones del tipo “Remote Procedure Call”; utilizado por getrpcbyname y funciones similares.

services Servicios de red; lo usa getservent.

shadow Las contraseñas “Shadow” de los usuarios, usado por getspnam, ver la página del manual man 5 shadow.