|
|
Atención: 20 al 24 de febrero, Curso Global de Servidores con CentOS 6. Atención: 21 y 28 de enero, 4 y 11 de febrero, Taller de programación de Python. Atención: Disponible ALDOS 1.4.2. Nuestro sistema operativo para escritorio. Cómo configurar los parámetros de red en Linux.
Autor: Joel Barrios Dueñas
Correo electrónico: darkshram en gmail punto com Sitio de Red: http://www.alcancelibre.org/ Jabber ID: darkshram@jabber.org Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1
IntroducciónConfigurar los parámetros de red en una estación de trabajo GNU/Linux o un servidor es realmente simple. Solamente requerirá de algunos conocimientos básicos acerca de TCP/IP, IP versión 4, y saber cómo utilizar cualquier editor de texto simple, como Vi, Emacs, o gEdit. ProcedimientosDetección y configuración del sustento físico (hardware).En CentOS 6 y Red Hat Enterprise Linux 6, que utiliza núcleo de Linux versión 2.6.32, la detección de las tarjetas de red es automática, mientras se trate de tarjetas de red soportadas. Para consultar la lista de tarjetas de red compatibles, visite hardware.redhat.com. En CentOS 5 y Red Hat Enterprise Linux 5, la detección de las tarjetas de red es realizada o bien por el programa de instalación, o bien a través de kudzu, un servicio que inicia junto con el sistema y que se encarga de detectar y configurar los dispositivos de sustento físico (hardware) instalados. En términos generales, es innecesario configurar parámetro alguno mientras los dispositivos de red sean compatibles y exista un controlador para la versión del núcleo (kernel) ejecutado. Si acaso no fuese detectado el dispositivo de red debido a la ausencia de kudzu, es posible configurar todo manualmente. La marca de la tarjeta de red es lo que menos interesa, lo que es importante es que se determine con exactitud que circuito integrado auxiliar (chipset) utiliza la tarjeta de red. Esto puede determinarse examinando físicamente la tarjeta de red o bien examinando a detalle la salida en pantalla que se obtiene al ejecutar el siguiente mandato:
Lo anterior devuelve una salida similar a la siguiente (en el caso de una tarjeta 3Com 905 C)
De ser necesario, puede modificarse, con un editor de textos, el archivo /etc/modprobe.conf. Puede verificarse el módulo correspondiente a la tarjeta de red consultando el archivo anteriormente mencionado:
Si se realizó alguna edición de este archivo, deberá de ejecutarse el siguiente mandato, a fin de actualizar dependencias:
Si utiliza un núcleo de la serie 2.4.x o 2.6, la lista de módulos existentes en el sistema que se pueden utilizar para distintos circuitos integrados auxiliares de distintos modelos de tarjetas de red se puede obtener listando el contenido del directorio /lib/modules/[versión del núcleo]/kernel/drivers/net/. Ejemplo:
NetworkManager.Desde CentOS 5 y Red Hat Enterprise Linux 5, se incluye una implementación alternativa para la gestión de parámetros de red desde la interfaz de usuario. En CentOS y Red Hat Enterprise Linux 5 viene desactivada de modo predeterminado, por lo que permite trabajar normalmente. Sin embargo en CentOS 6 y Red Hat Enterprise Linux 6, este servicio viene activo, salvo que se haga la instalación mínima o la instalación básica de servidor. Si se desea impedir que NetworkManager gestione alguna interfaz de red en particular, y que se pueda iniciar junto con el servicio network, solo basta con modificar el parámetro NM_CONTROLLED del archivo de configuración de la interfaz deseada, dentro del directorio /etc/sysconfig/network-scripts/, y establecer no como valor de éste. Ejemplo:
Mientras esté establecido NM_CONTROLLED=no en la configuración de la interfaz de red, NetworkManager ignorará ésta por completo. Si va a prescindir del uso del modo gráfico, o bien se llevarán a cabo cambios poco frecuentes de la configuración de los dispositivos de red del sistema, también se puede desactivar por completo el servicio NetworkManager, y ahorrar alrededor de un de MB de RAM. El uso de NetworkManager solo tiene sentido en una computadora portátil que se conecta a múltiples redes inalámbricas, o bien un escritorio.
Asignación de parámetros de red.Nombre del anfitrión (HOSTNAME).Debe modificarse con un editor de textos el archivo /etc/hosts, y debe verificarse que este diferenciado el eco o retorno del sistema del nombre del sistema, el cual deberá estar asociado a una de las direcciones IP, específicamente la que esté asociado a dicho nombre en el servidor del sistema de nombres de dominio (DNS) si se cuenta con uno en la red local. Ejemplo:
Se debe establecer un nombre para el sistema. Este deberá ser un FQDN (acrónimo de Fully Qualified Domain Name o Nombre de Dominio Plenamente Calificado) resuelto por un servidor de nombres de domino (DNS) o bien. En el caso de sistemas sin conexión a red o sistemas caseros, sea resuelto de manera local en el archivo /etc/hosts. De tal modo, el nombre del anfitrión (hostname) del sistema se definirá dentro del archivo /etc/sysconfig/network del siguiente modo:
Dirección IP, máscara de subred y puerta de enlace.Debe modificarse con cualquier editor de textos, y verificar que sus parámetros de red sean los correctos, el archivo localizado en la ruta /etc/sysconfig/network-scripts/ifcfg-eth0. Ejemplo:
Los parámetros anteriores son proporcionados por el administrador de la red local en donde se localice la máquina que está siendo configurada, o bien definidos de acuerdo a una planificación previamente establecida. El administrador de la red deberá proporcionar una dirección IP disponible (IPADDR) y una máscara de la subred (NETMASK). Servidores de nombres.Hay dos parámetros a configurar: dominio de búsqueda predeterminado y al menos un servidor de nombres. En CentOS 6 y Red Hat Enterprise Linux 6, se pueden establecer añadiendo al archivo ifcfg-eth0, que se encontrará del directorio /etc/sysconfig/network-scripts/, el parámetro DOMAIN y los parámetro DNS1, DNS2 y DNS3. Ejemplo:
Lo anterior actualizará automáticamente el archivo /etc/resolv.conf con el contenido que corresponda. En CentOS 5 y Red Hat Enterprise Linux 5 (y versiones anteriores de éstos), debe modificarse con un editor de textos al archivo /etc/resolv.conf, donde se establecerán los servidores del sistema de resolución de nombres de dominio (DNS). Ejemplo:
Agregar rutas estáticos.Las rutas estáticas se pueden añadir utilizando el mandato route, siguiendo la siguiente sintaxis:
En el siguiente ejemplo se definirá la ruta estática hacia la red 192.168.3.0 con máscara 255.255.255.192, puerta de enlace a través de la dirección IP 172.16.1.36 y a través del dispositivo de red eth1:
Es un requisito que la puerta de enlace de destino sea alcanzable desde el dispositivo utilizado. Una ruta estática no puede ser establecida si no es posible alcanzar la puerta de enlace necesaria. Si se reinicia el servicio de red, los cambios se perderán. Si se requiere establecer las rutas estáticas adicionales para obtener conectividad con otras redes y que los cambios sean permanentes, se pueden generar archivos para cada interfaz que sea necesario, en donde se establecen los valores para puerta de enlace, red a la que se quiere acceder y la máscara de subred correspondiente. Los archivos se deben generar dentro del directorio /etc/sysconfig/network-scripts/ como route-[interfaz] y deben llevar el siguiente formato:
Por citar un ejemplo, imaginemos que nos encontramos dentro de la red 172.16.1.0 y se requiere establecer conectividad con las redes 192.168.2.0 y 192.168.3.0, con máscaras 255.255.255.192, a través de las puertas de enlace o enrutadores o encaminadores con dirección IP 192.168.2.1 y 192.168.3.1, correspondientemente para cada red citada, a través de la primera interfaz Ethernet del sistema (eth0). La configuración de /etc/sysconfig/network-scripts/route-eth0 sería la siguiente:
Función de Reenvío de paquetes para IP versión 4.Si dispone de al menos 2 dispositivos de red y se tiene planeado implementar un NAT o DNAT, se debe habilitar el reenvío de paquetes para IP versión 4. Esto se realiza editando el archivo /etc/sysctl.conf, y estableciendo 1 para activar, o bien dejar 0 para mantener inactivo:
Y cambiando net.ipv4.ip_forward = 0 por net.ipv4.ip_forward = 1:
Para aplicar el cambio, sin reiniciar el sistema, solo es necesario ejecutar lo siguiente:
Comprobaciones.Después de hacer configurado todos los parámetros de red deseados, solo deberá de ser reiniciado el servicio de red, ejecutando lo siguiente:
Basta solamente comprobar si hay realmente conectividad. Puede ejecutarse el mandato ping hacia cualquier dirección de la red local para tal fin.
Las interfaces y la información de las mismas se puede examinar utilizando:
Las rutas estáticas se pueden comprobar utilizando el siguiente mandato:
Para comprobar si hay resolución de nombres, se puede realizar una consulta hacia los servidores DNS definidos para el sistema, utilizando:
Alta de direcciones IP virtualesLas direcciones IP virtuales sirven para que el sistema responda para más de una dirección IP a través del mismo dispositivo de red. Son útiles en los casos en los cuales se tiene un servicio de hospedaje de páginas de Internet, y se desea que cada sitio tenga su propia dirección IP. También son útiles en los muros cortafuegos donde se quiere que un conjunto de equipos salgan hacia Internet enmascarados con una IP (una LAN, por ejemplo), y otro conjunto de equipos lo hagan con una dirección IP distinta (una DMZ, por ejemplo). Basta definir solamente la dirección IP, máscara de subred y el nombre del dispositivo. El archivo se genera igualmente con el nombre del dispositivo con el prefijo ifcfg-, dentro del directorio /etc/sysconfig/network-scripts/. Ejemplo del contenido del archivo /etc/sysconfig/network-scripts/ifcfg-eth0:0 que corresponde al primer dispositivo virtual del primer dispositivo ethernet:
La comprobación, al ejecutar el mandato ifconfig, deberá regresar algo como lo siguiente
La función Zeroconf.De modo predeterminado, y a fin de permitir la comunicación entre dos diferentes sistemas a través de un cable RJ45 cruzado (crossover), el sistema tiene habilitado Zeroconf, también conocido como Zero Configuration Networking o Automatic Private IP Addressing (APIPA). Es un conjunto de técnicas que automáticamente crean una dirección IP utilizable sin necesidad de configuración de servidores especiales. Permite a usuarios sin conocimientos de redes conectar computadoras, impresoras en red y otros artículos entre sí. Sin Zeroconf los usuarios sin conocimientos tendrían que configurar servidores especiales como DHCP y DNS para poder establecer conectividad entre dos equipos. Estando habilitado Zeroconf se mostrará un registro en la tabla de rutas estáticas para la red 169.254.0.0 al utilizar el mandato route -n, devolviendo una salida similar a la siguiente:
Si se desea desactivar Zeroconf, solo bastará añadir en el archivo /etc/sysconfig/network el parámetro NOZEROCONF con el valor yes:
Al terminar, solo hay que reiniciar el servicio de red para que surtan efecto los cambios y comprobar de nuevo con el mandato route -n que la ruta para Zeroconf ha desaparecido:
Una vez hecho lo anterior, existen dos servicios en el sistema en CentOS y Red Hat™ Enterprise Linux 5 y versiones posteriores, que se pueden desactivar puesto que sirven para establecer la comunicación a través de Zeroconf, estos son avahi-daemon y avahi-dnsconfd. Desactivar estos dos servicios ahorrará tiempo en el arranque y se consumirán algunos pocos menos recursos de sistema.
Muchas aplicaciones y componentes para el modo gráfico dependen de Zeroconf para su correcto funcionamiento. Por tanto, no es conveniente desactivar este soporte si se va a hacer uso del modo gráfico. Para más detalles acerca de Zeroconf, puede consultarla información disponible en: Ejercicios.Rutas estáticas.Este ejercicio considera lo siguiente:
Visualice desde pc2.dominio los registros de la tabla de rutas estáticas.
Obtendrá una salida similar a la siguiente:
Intente ejecutar ping hacia la dirección recién añadida en pc1.dominio.
El resultado esperado es que ping devuelva que hay 100% de pérdida de paquetes.
Proceda a añadir la ruta estática que corresponde especificando la red, mascará de subred y puerta de enlace necesarios para llegar hacia 10.3.2.1.
Visualice de nuevo los registros de la tabla de rutas estáticas.
Obtendrá una salida similar a la siguiente:
Intente ejecutar ping hacia la dirección recién añadida en pc1.dominio.
El resultado esperado es que ping responda al ping, obteniéndose una salida similar a la siguiente:
Reinicie el servicio de red, visualice de nuevo los registros de la tabla de rutas estáticas y compruebe que ya no hay respuesta al hacer ping hacia 10.3.2.1 porque el registro en la tabla de rutas estáticas fue eliminado al reiniciar el servicio de red.
Para hacer permanente el registro en la tabla de rutas estáticas utilice un editor de texto el archivo /etc/sysconfig/network-scripts/route-eth0, y ponga el siguiente contenido:
Al terminar reinicie el servicio de red.
Visualice nuevamente los registros de la tabla de rutas estáticas.
Lo anterior debe devolver una salida similar a la siguiente:
Intente ejecutar ping hacia la dirección recién añadida en pc1.dominio.
Reinicie el servicio de red, visualice de nuevo los registros de la tabla de rutas estáticas y compruebe de nuevo que hay respuesta al hacer ping hacia 10.3.2.1.
Ejercicio: Direcciones IP virtuales.Este ejercicio considera lo siguiente:
Visualice las interfaces de red activas en el sistema.
Lo anterior debe devolver una salida similar a la siguiente, donde se mostrará que solo están activas la interfaz eth0 y la correspondiente al dispositivo del retorno del sistema (loopback):
Utilice ping para comprobar si acaso hay alguna respuesta desde la interfaz virtual eth0:0.
Lo anterior debe devolver una salida similar a la siguiente:
Configure a través de ifconfig los parámetros de la interfaz virtual eth0:0. Si la sintaxis fue correcta, el sistema no deberá devolver mensaje alguno.
Utilice ping para comprobar que haya respuesta desde la interfaz virtual eth0:0.
Lo anterior debe devolver una salida similar a la siguiente:
Visualice las interfaces de red activas en el sistema.
Lo anterior debe devolver una salida similar a la siguiente, donde se mostrará que está activa la interfaz eth0:0 junto con la interfaz eth0 y la correspondiente al dispositivo del retorno del sistema (loopback):
Reinicie el servicio network.
Utilice el mandato ping para comprobar si aún hay respuesta desde la interfaz virtual eth0:0.
Lo anterior debe devolver una salida similar a la siguiente:
Visualice las interfaces de red activas en el sistema.
Lo anterior debe devolver una salida similar a la siguiente, donde se mostrará que ya no está activa la interfaz eth0:0, y solo se muestran activas la interfaz eth0 y la correspondiente al dispositivo del retorno del sistema (loopback):
Para hacer permanente la interfaz de red virtual en eth0:0 utilice un editor de texto el archivo /etc/sysconfig/network-scripts/ifcfg-eth0:0 y ponga el siguiente contenido (¡Respete mayúsculas y minúsculas!):
Reinicie el servicio de red.
Visualice las interfaces de red activas en el sistema.
Lo anterior debe devolver una salida similar a la siguiente, donde nuevamente se mostrará que está activa la interfaz eth0:0 junto con la interfaz eth0 y la correspondiente al dispositivo del retorno del sistema (loopback):
Utilice el mandato ping para comprobar que haya respuesta desde la interfaz virtual eth0:0.
Lo anterior debe devolver una salida similar a la siguiente:
La interfaz eth0:0 estará activa la siguiente vez que inicie el sistema operativo con la dirección IP y máscara de subred asignados. |
Comentarios Recientes