La configuración manual del software de red siempre debe ser la última alternativa. Se recomienda utilizar YaST. Sin embargo, la información básica acerca de la configuración de red también puede serle útil cuando trabaje con YaST.
Todas las tarjetas de red y de red hotplug integradas (PCMCIA, USB y algunas tarjetas PCI) se detectan y se configuran mediante hotplug. El sistema detecta una tarjeta de red de dos maneras: primero como un dispositivo físico y, después, como una interfaz. La inserción o detección de un dispositivo activa un evento hotplug. Este evento hotplug activa la inicialización del dispositivo mediante el guión hwup. Cuando la tarjeta de red se inicializa como una nueva interfaz de red, el núcleo genera otro evento hotplug que origina la configuración de la interfaz mediante ifup.
El núcleo numera los nombres de la interfaz en función del orden temporal del registro. La secuencia de inicialización es fundamental para la asignación de nombres. Si falla una de las tarjetas, se modificará la numeración de todas las que se inicien después. Para tarjetas hotplug reales, lo que importa es el orden en el que se conectan los dispositivos.
Para llevar a cabo una configuración flexible, la configuración del dispositivo (hardware) y de la interfaz debe realizarse por separado y la asignación de configuraciones a los dispositivos e interfaces no se gestiona mediante los nombres de interfaz. Las configuraciones del dispositivo se ubican en /etc/sysconfig/hardware/hwcfg-*. Las configuraciones de la interfaz se ubican en /etc/sysconfig/network/ifcfg-*. Los nombres de las configuraciones se asignan de modo que describan los dispositivos e interfaces a los que están asociados. Puesto que la primera asignación de controladores al nombre de la interfaz requería nombres de interfaz estáticos, esta asignación ya no se realizará en /etc/modprobe.conf. En el nuevo concepto, las entradas de alias en este archivo pueden causar efectos secundarios no deseados.
Los nombres de configuración, es decir, todo lo que aparece después de hwcfg- o de ifcfg-, pueden describir los dispositivos mediante la ranura, el ID específico del dispositivo o el nombre de la interfaz. Por ejemplo, el nombre de configuración para una tarjeta PCI puede ser bus-pci-0000:02:01.0 (ranura PCI) o vpid-0x8086-0x1014-0x0549 (ID del producto o del proveedor). El nombre de la interfaz asociada puede ser bus-pci-0000:02:01.0 o wlan-id-00:05:4e:42:31:7a (dirección MAC).
Para asignar una configuración de red específica a una tarjeta de un tipo determinado (o del que sólo se ha insertado uno) en lugar de una tarjeta determinada, seleccione un número menor de nombres de configuración específicos. Por ejemplo, bus-pcmcia se utilizará para todas las tarjetas PCMCIA. Por otro lado, los nombres pueden estar limitados por un tipo de interfaz precedente. Por ejemplo, wlan-bus-usb se asignará a las tarjetas WLAN conectadas a un puerto USB.
El sistema siempre utiliza la configuración que mejor describa una interfaz o el dispositivo que suministre la interfaz. La búsqueda de la configuración más adecuada se gestiona mediante getcfg. La salida de getcfg proporciona toda la información que se puede utilizar para describir un dispositivo. Los detalles acerca de la especificación de los nombres de configuración están disponibles en la página del manual de getcfg.
Con el método descrito, una interfaz de red se establece con la configuración correcta incluso si los dispositivos de red no siempre se inicializan en el mismo orden. Sin embargo, el nombre de la interfaz sigue dependiendo de la secuencia de inicialización. Existen dos maneras de garantizar un acceso fiable a la interfaz de una determinada tarjeta de red:
getcfg-interface devuelve el nombre a la interfaz de red asociada. Sin embargo, el nombre de configuración, como por ejemplo cortafuegos, dhcpd, encaminamiento o varias interfaces de red virtuales (túneles), se puede introducir en algunos archivos de configuración en lugar del nombre de la interfaz, que no es permanente.
nombre de configuración
Los nombres de interfaces permanentes se pueden asignar a todas las interfaces cuyas configuraciones no incluyen nombres de interfaz. Esto se puede realizar mediante entradas PERSISTENT_NAME= en una configuración de interfaz (pnameifcfg-*). Sin embargo, el nombre permanente pname no debe ser el mismo que el nombre que el núcleo asignará automáticamente. Sin embargo, nombres como eth*, tr*, wlan* no están permitidos. En su lugar, utilice net* o nombres descriptivos como externo, interno o dmz. Un nombre permanente sólo se puede asignar a una interfaz inmediatamente después de su registro, lo que quiere decir que el controlador de la tarjeta de red debe volver a cargarse o que hwup debe ejecutarse. El comando rcnetwork descripción de dispositivorestart (reiniciar) es insuficiente para este propósito.
![]() | Uso de nombres de interfaces permanentes |
|---|---|
El uso de nombres de interfaces permanentes se ha comprobado en todas las áreas. Sin embargo, puede que algunas aplicaciones no puedan gestionar nombres de interfaces seleccionados libremente. | |
ifup requiere que exista la interfaz, puesto que no inicializa el hardware. La inicialización del hardware se gestiona mediante el comando hwup (ejecutado por hotplug o coldplug). Cuando se inicializa un nuevo dispositivo, ifup se ejecuta de forma automática para la nueva interfaz mediante hotplug y la interfaz se configura si el modo de inicio es onboot, hotplug o auto y si se ha iniciado el servicio de red. Anteriormente, el comando ifup activaba la inicialización del hardware. Ahora, el procedimiento se ha invertido. Primero, se inicializa un componente de hardware y, a continuación, lo hacen el resto de aplicaciones. De este modo, siempre se puede configurar un número variable de dispositivos de la mejor manera posible mediante un conjunto de configuraciones existentes.
nombre de interfaz
La Tabla 38.5, “Guiones de configuración manual de red” resume los guiones más importantes implicados en la configuración de red. Cuando sea posible, los guiones se distinguen por el hardware y la interfaz.
Tabla 38.5. Guiones de configuración manual de red
Fase de configuración | Comando | Función |
|---|---|---|
Hardware | hw{up,down,status} |
El subsistema hotplug ejecuta los guiones |
Interfaz | getcfg | getcfg se puede utilizar para consultar el nombre de la interfaz asociado a un nombre de configuración o a una descripción de hardware. Existe más información disponible en la página del manual de getcfg. |
Interfaz | if{up,down,status} |
Los guiones |
Existe información disponible acerca de hotplug y de los nombres permanentes de dispositivos en Capítulo 32, Sistema HotPlug y Capítulo 33, Nodos de dispositivo dinámicos con udev.
Esta sección proporciona una descripción general de los archivos de configuración de red, así como su propósito y el formato utilizado.
Estos archivos contienen las configuraciones de hardware de las tarjetas de red y de otros dispositivos. Asimismo, también contienen los parámetros necesarios, como el módulo del núcleo, el modo de inicio y las asociaciones de guiones. Para obtener más detalles, consulte la página del manual de hwup. Independientemente del hardware existente, las configuraciones hwcfg-static-* se aplican cuando se inicia coldplug.
Estos archivos contienen las configuraciones para la interfaz de red. Incluyen información como el modo de inicio y la dirección IP. Los posibles parámetros se describen en la página del manual de ifup. Además, si se tiene que utilizar una configuración general para una única interfaz, todas las variables de los archivos dhcp, wireless y config se pueden utilizar en los archivos ifcfg-*.
El archivo config contiene la configuración general para el comportamiento de ifup, ifdown e ifstatus. dhcp contiene la configuración de DHCP y wireless para las tarjetas LAN inalámbricas. Las variables de los tres archivos de configuración se describen y se pueden utilizar en los archivos ifcfg-*, cuando disponen de la máxima prioridad.
Aquí se determina el encaminamiento estático de los paquetes TCP/IP. Todas las rutas estáticas requeridas por las diferentes tareas del sistema se pueden introducir en el archivo /etc/sysconfig/network/routes: rutas al host, rutas al host mediante gateway y rutas a una red. Para cada interfaz que necesite una ruta individual, defina un archivo de configuración adicional: /etc/sysconfig/network/ifroute-*. Sustituya * con el nombre de la interfaz. Las entradas de los archivos de configuración del encaminamiento se presentan de la manera siguiente:
# Destination Dummy/Gateway Netmask Device # 127.0.0.0 0.0.0.0 255.255.255.0 lo 204.127.235.0 0.0.0.0 255.255.255.0 eth0 default 204.127.235.41 0.0.0.0 eth0 207.68.156.51 207.68.145.45 255.255.255.255 eth1 192.168.0.0 207.68.156.51 255.255.0.0 eth1
El destino de la ruta se encuentra en la primera columna. Esta columna puede contener la dirección IP de red o host o, en el caso de servidores de nombre accesibles, la red o nombre de host completo.
La segunda columna contiene un gateway por defecto a través del cual se puede acceder a un host o a una red. La tercera columna contiene la máscara de red de redes o hosts tras un gateway. Por ejemplo, la máscara es 255.255.255.255 para un host tras un gateway.
La cuarta columna sólo es relevante para redes conectadas al host local como loopback, Ethernet, RDSI, PPP y dispositivo fantasma. Aquí se debe introducir el nombre del dispositivo.
Una quinta columna (opcional) se puede utilizar para especificar el tipo de ruta. Las columnas que no se necesiten deben contener un signo menos - para garantizar que el analizador interpreta correctamente el comando. Para obtener más detalles, consulte la página Man de routes(5).
En este archivo se especifica el dominio al que pertenece el host (contraseña search [buscar]). También se enumera el estado de la dirección del servidor de nombre al que se desea acceder (contraseña nameserver [servidor de nombre]). Se pueden especificar varios nombres de dominio. Al resolver un nombre incompleto, se realiza un intento de generar uno agregando entradas search (buscar) individuales. Utilice varios servidores de nombre introduciendo varias líneas, cada una de las cuales debe comenzar por nameserver (servidor de nombre). Anteponga signos # a los comentarios. YaST introduce el servidor de nombre especificado en este archivo. El Ejemplo 38.5, “/etc/resolv.conf” muestra la forma de /etc/resolv.conf.
Ejemplo 38.5. /etc/resolv.conf
# Our domain search example.com # # We use sun (192.168.0.20) as nameserver nameserver 192.168.0.20
Algunos servicios, como pppd (wvdial), ipppd (isdn), dhcp (dhcpcd y dhclient), pcmcia y hotplug modifican el archivo /etc/resolv.conf mediante el guión modify_resolvconf. Si el archivo /etc/resolv.conf se ha modificado de forma temporal mediante este guión, entonces incluirá un comentario predefinido que proporciona información acerca del servicio que lo modifica, la ubicación en la que se ha realizado la copia de seguridad del archivo original y el modo de desactivar el mecanismo de modificación automático. Si /etc/resolv.conf se modifica varias veces, el archivo incluirá modificaciones en un formulario anidado. Estas modificaciones se pueden invertir incluso si el orden de la inversión es diferente del orden de la introducción de las modificaciones. Los servicios que incluyen esta flexibilidad incluyen isdn, pcmcia y hotplug.
Si no se ha terminado un servicio de forma normal y limpia, modify_resolvconf se puede utilizar para restaurar el archivo original. Incluso durante el arranque del sistema, se realiza una comprobación para localizar un resolv.conf sin limpiar y modificado, por ejemplo, después de un fallo del sistema, en cuyo caso se restaurará el resolv.conf original (sin modificar).
YaST utiliza el comando modify_resolvconf check para saber si resolv.conf se ha modificado y, a continuación, advierte al usuario de que se perderán los cambios después de restaurar el archivo. Además de esto, YaST no se basa en modify_resolvconf, lo que significa que el impacto del cambio de resolv.conf mediante YaST es el mismo que para cualquier cambio manual. En ambos casos, el efecto de los cambios es permanente. Las modificaciones solicitadas por los servicios mencionados son sólo temporales.
En este archivo, que se muestra en el Ejemplo 38.6, “/etc/hosts”, las direcciones IP están asignadas a nombres de host. Si no se implementa ningún servidor de nombre, deberá aparecer una lista de todos los hosts para los que se va a configurar una conexión IP. Para cada host, introduzca una línea que conste de la dirección IP, del nombre de host completo y del nombre de host en el archivo. La dirección IP debe ubicarse al principio de la línea y las entradas deben estar separadas por espacios y pestañas. Los comentarios siempre van precedidos de #.
Aquí, los nombres de red se convierten en direcciones de red. El formato es similar al del archivo hosts, excepto que los nombres de red van situados delante de la dirección. Consulte el Ejemplo 38.7, “/etc/networks”.
La resolución de nombre, es decir, la traducción de los nombres de red y de host mediante la biblioteca resolver está controlada por este archivo. Este archivo sólo se utiliza para programas relacionados con libc4 o libc5. Para los programas glibc en curso, consulte la configuración de /etc/nsswitch.conf. Siempre debe haber un único parámetro en su propia línea. Los comentarios van precedidos de #. La Tabla 38.6, “Parámetros para /etc/host.conf” muestra los parámetros disponibles. En Ejemplo 38.8, “
/etc/host.conf
” se muestra el ejemplo de /etc/host.conf.
Tabla 38.6. Parámetros para /etc/host.conf
order hosts, bind | Especifica el orden de acceso a los servicios para la resolución de nombre. Los argumentos disponibles son (separados por espacios y comas) los siguientes: |
hosts: Busca el archivo | |
bind: Accede a un servidor de nombre | |
nis: Utiliza NIS | |
multi on/off | Define si un host introducido en |
nospoof on spoofalert on/off | Estos parámetros determinan el servidor de nombre spoofing, pero no la configuración de red. |
trim domainname |
El nombre del dominio especificado se separa del nombre de host después de la resolución de nombre (siempre que el nombre de host incluya el nombre del dominio). Esta opción resulta útil sólo si los nombres del dominio local se incluyen en el archivo |
La introducción a GNU C Library 2.0 va acompañada de la introducción de Conmutador de servicio de nombre (NSS). Para obtener más información, consulte la página Man de nsswitch.conf(5) y GNU C Library Reference Manual (Manual de referencia de la biblioteca GNU C).
El orden de las consultas se define en el archivo /etc/nsswitch.conf. En el Ejemplo 38.9, “/etc/nsswitch.conf” se muestra un ejemplo de nsswitch.conf. Los comentarios van precedidos de #. En este ejemplo, cuando se introduce un elemento en la base de datos hosts, se envía una petición a /etc/hosts (files) mediante DNS (consulte el Capítulo 40, DNS (Domain Name System)).
Ejemplo 38.9. /etc/nsswitch.conf
passwd: compat group: compat hosts: files dns networks: files dns services: db files protocols: db files netgroup: files automount: files nis
Las “bases de datos” disponibles en NSS se enumeran en Tabla 38.7, “Bases de datos disponibles mediante /etc/nsswitch.conf”. Además, automount, bootparams, netmasks y publickey están previstas en un futuro próximo. Las opciones de configuración para las bases de datos NSS se enumeran en Tabla 38.8, “Opciones de configuración para las “bases de datos” NSS”.
Tabla 38.7. Bases de datos disponibles mediante /etc/nsswitch.conf
|
Alias de correo implementados por |
| Direcciones Ethernet. |
|
Para grupos de usuarios, utilizado por |
|
Para nombres de host y direcciones IP, utilizado en |
|
Host válido y listas de usuarios en la red para controlar los permisos de acceso; consulte la página Man de |
|
Nombres y direcciones de red, utilizado por |
|
Contraseñas de usuario, utilizado en |
|
Protocolos de red, utilizado en |
|
Nombres y direcciones de llamadas de procedimientos remotos, utilizado en |
|
Servicios de red, utilizados por |
|
Contraseñas shadow de usuarios, utilizadas en |
Tabla 38.8. Opciones de configuración para las “bases de datos” NSS
|
Archivos de acceso directo, por ejemplo, |
| Acceso mediante la base de datos |
| NIS, consulte también el Capítulo 41, Uso de NIS |
|
Sólo se puede utilizar como una extensión para |
|
Sólo se puede utilizar como una extensión de |
Este archivo se utiliza para configurar nscd (daemon NSC). Consulte las páginas Man de nscd(8) y nscd.conf(5). Por defecto, nscd almacena en caché las entradas de sistema de passwd y groups. Esto es importante para el funcionamiento de los servicios del directorio, como NIS y LDAP, puesto que si no, se necesitará la conexión de red para cada acceso a los nombres o grupos. hosts no se almacena en caché por defecto, puesto que el mecanismo de nscd para almacenar los hosts en caché no posibilita que el sistema local certifique comprobaciones de búsqueda adelante y atrás. En lugar de solicitar que nscd almacene nombres en caché, configure un servidor DNS de almacenamiento en caché.
Si el almacenamiento en caché para passwd está activado, por general, transcurrirán quince segundos hasta que se reconozca un nuevo usuario local agregado. Reduzca este tiempo límite reiniciando nscd con el comando rcnscd restart (reiniciar).
Además de los archivos de configuración descritos anteriormente, también existen varios guiones para cargar los programas de red durante el arranque de la máquina. Éstos se inician en cuanto el sistema cambia a uno de los niveles de ejecución multiusuario. Algunos de estos guiones se describen en la Tabla 38.9, “Guiones de inicio para programas de red”.
Tabla 38.9. Guiones de inicio para programas de red
Este guión gestiona la configuración de las interfaces de red. El hardware ya se debe haberse inicializado con /etc/init.d/coldplug (mediante hotplug). Si el servicio network no se ha iniciado, no se implementarán interfaces de red cuando se inserten mediante hotplug. | |
Inicia xinetd. xinetd y se pueden utilizar para que los servicios del servidor estén disponibles en el sistema. Por ejemplo, puede iniciar vsftpd siempre que se inicie una conexión FTP. | |
Inicia el portmap necesario para el servidor RPC, como por ejemplo un servidor NFS. | |
Inicia el servidor NFS. | |
Controla el proceso de envío de correo. | |
Inicia el servidor NIS. | |
Inicia el servidor NIS. |