Gestionar Direccionamiento IP en Linux

CompTIABeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderá las habilidades fundamentales para gestionar el direccionamiento IP en un entorno Linux. Comenzará utilizando el comando moderno ip para inspeccionar las interfaces de red de su sistema. Después de esto, configurará manualmente una dirección IP estática, establecerá una puerta de enlace predeterminada (default gateway) para permitir la comunicación con redes externas y luego verificará su conexión utilizando la utilidad ping.

A continuación, explorará la configuración dinámica de IP liberando la dirección estática y utilizando el comando dhclient para obtener automáticamente una nueva dirección IP de un servidor DHCP. Para concluir el laboratorio, utilizará los comandos arp y traceroute para inspeccionar y verificar aún más su configuración de red, asegurándose de que todos los componentes funcionen correctamente.

Este es un Guided Lab, que proporciona instrucciones paso a paso para ayudarte a aprender y practicar. Sigue las instrucciones cuidadosamente para completar cada paso y obtener experiencia práctica. Los datos históricos muestran que este es un laboratorio de nivel intermedio con una tasa de finalización del 76%. Ha recibido una tasa de reseñas positivas del 97% por parte de los estudiantes.

Inspeccionar Interfaces de Red con ip a

En este paso, aprenderá cómo inspeccionar las interfaces de red en su sistema Linux. Antes de poder configurar una dirección IP, primero debe identificar el nombre de la interfaz de red que desea configurar. Cada conexión, ya sea por cable o inalámbrica, se gestiona a través de una interfaz de red.

El comando moderno y estándar para ver y manipular interfaces de red en Linux es ip. Lo usaremos con el argumento a (o address) para mostrar todas las interfaces de red y sus direcciones IP asignadas.

  1. Abra su terminal. Debería estar ya en el directorio ~/project.

  2. Para listar todas las interfaces de red y sus configuraciones actuales, ejecute el siguiente comando:

    ip a

    Verá una salida similar a la siguiente. Los detalles exactos, como los nombres de las interfaces (eth0, enp0s5), las direcciones IP y las direcciones MAC, variarán cada vez que inicie un nuevo entorno de laboratorio.

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether 00:16:3e:0f:23:a5 brd ff:ff:ff:ff:ff:ff
        altname enp0s5
        inet 172.16.50.11/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
           valid_lft 1892159972sec preferred_lft 1892159972sec
    3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
        link/ether 02:42:bb:cb:56:62 brd ff:ff:ff:ff:ff:ff
        inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
           valid_lft forever preferred_lft forever

Entendiendo la Salida:

  • 1: lo: Esta es la interfaz de loopback (loopback interface), una interfaz virtual que el sistema utiliza para comunicarse consigo mismo. Siempre tiene la dirección IP 127.0.0.1.
  • 2: eth0: Esta es su interfaz Ethernet (cableada) principal. Su interfaz podría tener un nombre diferente o mostrar un altname (nombre alternativo) como enp0s5. Esta es la interfaz con la que trabajaremos.
  • 3: docker0: Es posible que vea otras interfaces como docker0, que es utilizada por el motor de contenedores Docker. Puede ignorarla para los propósitos de este laboratorio.
  • inet 172.16.50.11/24: Esta es la dirección IPv4 asignada a su interfaz. La dirección que vea será diferente. Esta es la dirección que le permite conectarse a este laboratorio remoto.
  • link/ether ...: Esta es la dirección MAC de la interfaz, un identificador de hardware único.

Ahora que puede identificar su interfaz de red principal (eth0), está listo para aprender cómo configurarla.

Configurar una Dirección IP Estática Secundaria

En este paso, asignará manualmente una dirección IP estática adicional a su interfaz de red. Una IP estática es útil para servidores que necesitan ser alcanzables de manera consistente en la misma dirección.

Nota Importante: Dado que se encuentra en una sesión de laboratorio remota, no debe eliminar la dirección IP existente ni desactivar la interfaz de red. Hacerlo interrumpiría su conexión. En su lugar, agregaremos una segunda dirección IP a la interfaz, lo cual es una práctica común y segura.

  1. Asigne la nueva dirección IP estática 192.168.1.10 con una máscara de subred /24 a la interfaz eth0. Si su interfaz tiene un nombre diferente, use ese nombre en su lugar.

    sudo ip addr add 192.168.1.10/24 dev eth0

    Este comando agrega la nueva dirección sin afectar la existente. No produce ninguna salida si tiene éxito.

  2. Finalmente, verifique que se haya asignado la nueva dirección IP. Use el comando ip a nuevamente, especificando la interfaz eth0.

    ip a show eth0

    Ahora debería ver ambas direcciones IP, la dinámica original y la nueva IP estática, listadas para la interfaz eth0.

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether 00:16:3e:0f:23:a5 brd ff:ff:ff:ff:ff:ff
        altname enp0s5
        inet 172.16.50.11/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
           valid_lft 1892159595sec preferred_lft 1892159595sec
        inet 192.168.1.10/24 scope global eth0
           valid_lft forever preferred_lft forever
        inet6 fe80::216:3eff:fe0f:23a5/64 scope link
           valid_lft forever preferred_lft forever

    Observe que un segundo campo inet ahora muestra 192.168.1.10/24. Ha agregado con éxito una dirección IP estática temporal mientras mantiene su conexión activa.

Establecer una Puerta de Enlace Predeterminada y Verificar la Conectividad con ping

En este paso, establecerá una puerta de enlace predeterminada y probará la conectividad de red. La puerta de enlace predeterminada (default gateway) es el router al que su sistema envía el tráfico cuando el destino se encuentra en otra red (como Internet).

Su sistema ya tiene una puerta de enlace predeterminada proporcionada por el entorno del laboratorio. Cambiarla o eliminarla rompería su conexión. Para practicar este comando de forma segura, agregaremos una nueva segunda ruta predeterminada con una métrica (metric) más alta. Una métrica más alta significa que tiene una prioridad menor, por lo que el sistema no la utilizará para tráfico real, manteniendo nuestra conexión segura.

  1. Agreguemos una ruta de puerta de enlace predeterminada para la red 192.168.1.0/24. Estableceremos la IP de la puerta de enlace en 192.168.1.1 y le daremos una metric de 200.

    sudo ip route add default via 192.168.1.1 dev eth0 metric 200
    • default: Especifica que esta es la ruta predeterminada.
    • via 192.168.1.1: La IP del router de la puerta de enlace.
    • dev eth0: La ruta es accesible a través de la interfaz eth0.
    • metric 200: Hace que esta ruta sea menos preferida que la ruta principal existente (que tiene una métrica más baja).
  2. Verifique que la ruta se ha agregado mostrando la tabla de enrutamiento.

    ip route

    La salida será compleja y variará, pero ahora debería incluir dos líneas que comienzan con default. Su puerta de enlace original tendrá una métrica más baja (por ejemplo, 100) y la nuestra tendrá una métrica de 200.

    default via 172.16.50.253 dev eth0 proto dhcp src 172.16.50.11 metric 100
    default via 192.168.1.1 dev eth0 metric 200
    172.16.50.0/24 dev eth0 proto kernel scope link src 172.16.50.11 metric 100
    192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10
    ... (pueden estar presentes otras rutas)
  3. Ahora, probemos la conectividad con ping. Envía una "solicitud de eco" ICMP a un host para ver si es alcanzable. Intentemos hacer ping a la puerta de enlace que acabamos de configurar para nuestra red imaginaria.

    ping -c 3 192.168.1.1

    Resultado Esperado: Se espera que este comando falle. Dado que agregamos la IP 192.168.1.10/24 a eth0, el sistema asume que 192.168.1.1 está en la misma red local. Intentará alcanzarla directamente, pero no existe ningún dispositivo con esa dirección, por lo que verá "Destination Host Unreachable" (Host de destino inalcanzable).

    PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
    From 192.168.1.10 icmp_seq=1 Destination Host Unreachable
    From 192.168.1.10 icmp_seq=2 Destination Host Unreachable
    From 192.168.1.10 icmp_seq=3 Destination Host Unreachable
    
    --- 192.168.1.1 ping statistics ---
    3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2039ms

    Este es el resultado correcto y esperado. Ha aprendido cómo agregar una ruta predeterminada y usar ping para realizar pruebas.

Revertir a una Dirección IP Dinámica usando dhclient

En este paso, eliminará las configuraciones estáticas que creó y luego usará dhclient para actualizar el arrendamiento de IP dinámico del servidor DHCP.

Primero, la herramienta dhclient, que forma parte del paquete isc-dhcp-client, puede que no esté instalada por defecto. Asegurémonos de que esté disponible.

  1. Actualice la lista de paquetes de su sistema e instale el cliente DHCP:

    sudo apt-get update
    sudo apt-get install -y isc-dhcp-client

    Ahora, eliminemos de forma segura la IP estática y la ruta que agregamos en los pasos anteriores sin interrumpir su conexión.

  2. Elimine la dirección IP estática de eth0:

    sudo ip addr del 192.168.1.10/24 dev eth0
  3. Elimine la ruta predeterminada estática que agregamos:

    sudo ip route del default via 192.168.1.1 dev eth0

    Ahora su configuración de red ha vuelto a su estado original. Para demostrar dhclient, solicitemos una actualización de la dirección IP del servidor DHCP.

  4. Primero, libere el arrendamiento DHCP actual.

    sudo dhclient -r eth0
  5. A continuación, solicite un nuevo arrendamiento del servidor DHCP.

    sudo dhclient eth0

    Es posible que vea el mensaje RTNETLINK answers: File exists. Esto es normal. Simplemente significa que dhclient está intentando agregar rutas que ya existen, por lo que no se necesitan cambios. Su conexión permanecerá estable.

  6. Verifique su configuración volviendo a ver la interfaz eth0.

    ip a show eth0

    La salida ahora debería mostrar solo su dirección IP dinámica original, probablemente en el rango 172.16.x.x o 172.17.x.x. La IP estática 192.168.1.10 debería haber desaparecido.

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        link/ether 00:16:3e:0f:23:a5 brd ff:ff:ff:ff:ff:ff
        altname enp0s5
        inet 172.16.50.11/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
           valid_lft 1892159460sec preferred_lft 1892159460sec
        inet6 fe80::216:3eff:fe0f:23a5/64 scope link
           valid_lft forever preferred_lft forever

    Ha limpiado con éxito su configuración estática y ha actualizado su arrendamiento de IP dinámico.

Verificar la Configuración de Red con arp y traceroute

En este paso final, aprenderá a usar arp y traceroute para inspeccionar su configuración de red.

Primero, asegurémonos de que las herramientas necesarias estén instaladas. arp se encuentra en net-tools, y traceroute está en su propio paquete.

  1. Instale net-tools y traceroute:

    sudo apt-get update
    sudo apt-get install -y net-tools traceroute

Usando arp para Ver la Caché ARP

El Protocolo de Resolución de Direcciones (ARP) mapea una dirección IP a una dirección MAC física en una red local. Los resultados se almacenan en la caché ARP.

  1. Para poblar su caché ARP, primero encuentre la IP de su puerta de enlace predeterminada en la tabla de enrutamiento.

    ip route | grep default

    La salida le mostrará la IP de la puerta de enlace. Tenga en cuenta que la dirección IP variará.

    default via 172.16.50.253 dev eth0
    default via 172.16.50.253 dev eth0 proto dhcp src 172.16.50.11 metric 100
  2. Ahora, haga ping a esa IP de la puerta de enlace (por ejemplo, 172.16.50.253 en el ejemplo anterior) para generar tráfico.

    ping -c 1 <your-gateway-ip>
  3. Muestre la caché ARP usando arp -a.

    arp -a

    Verá la IP y la dirección MAC de su puerta de enlace. También podría ver una entrada <incomplete> para la dirección 192.168.1.1 a la que intentamos hacer ping anteriormente, lo cual es normal.

    ? (192.168.1.1) at <incomplete> on eth0
    _gateway (172.16.50.253) at ee:ff:ff:ff:ff:ff [ether] on eth0

    Esto confirma que su sistema resolvió la IP de la puerta de enlace a una dirección MAC.

Usando traceroute para Rastrear Rutas de Red

El comando traceroute muestra la secuencia de routers ("saltos" o hops) que toman los paquetes para llegar a un destino.

  1. Rastreamos la ruta a un dominio público como google.com.

    traceroute google.com

    El comando imprimirá la ruta. Nota: En muchos entornos de nube, el primer salto que muestra traceroute puede ser una dirección IP interna y no la misma que la puerta de enlace predeterminada en su tabla de enrutamiento. Este es un comportamiento normal.

    traceroute to google.com (142.250.189.174), 30 hops max, 60 byte packets
     1  10.220.9.2 (10.220.9.2)  0.345 ms  ...
     2  11.73.5.1 (11.73.5.1)  1.978 ms ...
     3  ...
     8  sfo03s24-in-f14.1e100.net (142.250.189.174)  3.001 ms ...
    • El primer salto es un router dentro de la red del proveedor del laboratorio.
    • Los saltos subsiguientes muestran la ruta a través de Internet hasta el destino final.
    • Pueden aparecer asteriscos (* * *) si un router en la ruta no responde a las sondas de traceroute, lo que podría deberse a un firewall u otra política de red.

¡Felicitaciones! Ahora ha aprendido a inspeccionar, configurar estáticamente y configurar dinámicamente el direccionamiento IP en un sistema Linux, así como a utilizar herramientas clave como ping, arp y traceroute para verificar y solucionar problemas de su red.

Resumen

En este laboratorio, aprendió las habilidades fundamentales para administrar el direccionamiento IP en un entorno Linux. Comenzó inspeccionando las interfaces de red y sus configuraciones actuales utilizando el comando ip a para identificar interfaces de destino como eth0. Luego practicó la asignación manual de una dirección IP estática y una máscara de subred con ip addr add, seguida de la configuración de una puerta de enlace predeterminada usando ip route add para permitir la comunicación con redes externas. Para contrastar con la configuración manual, también aprendió cómo obtener automáticamente una dirección IP, máscara de subred y puerta de enlace de un servidor DHCP utilizando el comando dhclient.

Además, exploró herramientas esenciales de verificación y solución de problemas de red. Utilizó el comando ping para confirmar la conectividad básica de red tanto a la puerta de enlace predeterminada como a hosts externos. Para obtener una visión más profunda de la capa de red, examinó la caché del Protocolo de Resolución de Direcciones (ARP) con el comando arp para ver los mapeos de IP a dirección MAC. Finalmente, utilizó traceroute para rastrear la ruta de red salto a salto hasta un destino, verificando su configuración de enrutamiento.