Skip to main content

Command Palette

Search for a command to run...

Guía del Comando ip en Linux

Published
•5 min read•View as Markdown

1. Introducción

El comando ip en Linux se utiliza para administrar interfaces de red, direcciones IP, rutas y más. Es una herramienta fundamental para la gestión de redes y la solución de problemas de conectividad.


2. Cómo Usar la Ayuda de ip

Antes de memorizar comandos, es importante saber cómo obtener ayuda en tiempo real:

Mostrar ayuda general

ip --help

Salida esperada:

Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { address | addrlabel | fou | help | ... | route | rule | xfrm }
       OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] }

Explicación: Muestra los objetos disponibles que se pueden administrar con ip.

Ver ayuda sobre un objeto específico

ip address help

Salida esperada:

Usage: ip address { COMMAND | help }
       ip address add [ address ] dev IFNAME
       ip address del [ address ] dev IFNAME
       ip address show [ dev IFNAME ]

Explicación: Muestra las opciones y comandos disponibles dentro de un objeto en particular.

Buscar ejemplos en man

man ip | grep -A5 -i examples

Salida esperada:

EXAMPLES
       ip addr show
              Display the current IP addresses assigned to all interfaces.
       ip route add 192.168.1.0/24 via 192.168.1.1
              Add a static route.

Explicación: Extrae ejemplos de uso directamente desde man ip.


3. Objetos Más Usados en ip

Ver Interfaces de Red

ip link show

Salida esperada:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
    link/ether 00:1a:4b:16:01:22 brd ff:ff:ff:ff:ff:ff

Explicación:

  • LOOPBACK: La interfaz lo (loopback) es utilizada internamente por el sistema para comunicarse consigo mismo.

  • BROADCAST: La interfaz soporta envío de paquetes a todas las máquinas en la red.

  • MULTICAST: Soporta comunicación con múltiples destinos a la vez.

  • UP: Indica que la interfaz está activa.

  • LOWER_UP: La capa de enlace está operativa.

  • mtu 1500: El Maximum Transmission Unit (MTU) es el tamaño máximo en bytes de un paquete de red.


Ver Direcciones IP Asignadas

ip address show

Salida esperada:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
    inet6 fe80::1a4b:16ff:fe01:22/64 scope link

Muestra las direcciones IP asignadas a cada interfaz.

Explicación:

  • inet 192.168.1.100/24: Dirección IPv4 asignada a la interfaz eth0 con máscara /24 (255.255.255.0).

  • brd 192.168.1.255: Dirección de broadcast, usada para enviar paquetes a todos los dispositivos en la subred.

  • scope global: Indica que la dirección IP es válida en toda la red.

  • scope link: En IPv6, scope link significa que la dirección es válida solo en el enlace local.

Ver Rutas Configuradas en el Sistema

ip route show

Salida esperada:

default via 192.168.1.1 dev eth0 proto dhcp metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100

Muestra la tabla de rutas del sistema, indicando por dónde pasan los paquetes de red.

Explicación:

  • default via 192.168.1.1 dev eth0: Indica que la ruta por defecto (para tráfico que no tiene una ruta específica) se enviará al gateway 192.168.1.1 a través de eth0.

  • proto dhcp: La ruta fue configurada dinámicamente por DHCP.

  • metric 100: Indica la prioridad de la ruta (valores menores tienen mayor prioridad).

  • 192.168.1.0/24 dev eth0: Ruta específica para la subred 192.168.1.0/24, accesible directamente a través de eth0.

  • proto kernel: Esta ruta fue añadida automáticamente por el kernel cuando se configuró la dirección IP.

  • scope link: Indica que los paquetes pueden enviarse directamente a otros hosts en la misma subred sin necesidad de pasar por un gateway.

  • src 192.168.1.100: La dirección IP de origen utilizada en paquetes salientes.


4. Configuración de Direcciones y Rutas

Agregar una Dirección IP a una Interfaz

sudo ip address add 192.168.1.150/24 dev eth0

Verificación:

ip address show eth0

Salida esperada:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
    inet 192.168.1.150/24 scope global eth0

Lógica de la Tabla de Rutas

Cada paquete enviado desde el sistema sigue esta lógica:

  1. Busca una ruta específica en la tabla.

  2. Si no la encuentra, usa la ruta por defecto (default via).

  3. Elige la interfaz de red y el gateway adecuado.

  4. Si el destino está en la misma subred (scope link), envía el paquete directamente.

  5. Si no, lo reenvía al gateway.

Ejemplo:

ip route get 8.8.8.8

Salida esperada:

8.8.8.8 via 192.168.1.1 dev eth0 src 192.168.1.100

Explicación:

  • El sistema enviará paquetes a 8.8.8.8 pasando por 192.168.1.1.

  • Usará la interfaz eth0.

  • La dirección IP de origen será 192.168.1.100.


Agregar una Ruta Estática

sudo ip route add 10.10.10.0/24 via 192.168.1.1

Verificación:

ip route show

Salida esperada:

10.10.10.0/24 via 192.168.1.1 dev eth0

Explicación: Agrega una ruta para que el tráfico hacia 10.10.10.0/24 pase por 192.168.1.1.


5. Solución de Problemas de Enrutamiento

Verificar Rutas Configuradas

ip route list

Salida esperada:

default via 192.168.1.1 dev eth0 proto dhcp
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100

Explicación: Lista todas las rutas del sistema.

Forzar el Uso de una Ruta Específica

ip route get 8.8.8.8

Salida esperada:

8.8.8.8 via 192.168.1.1 dev eth0 src 192.168.1.100

Explicación: Muestra qué ruta tomarán los paquetes para alcanzar 8.8.8.8.

Reiniciar la Interfaz de Red

sudo ip link set eth0 down
sudo ip link set eth0 up

Verificación:

ip link show eth0

Salida esperada:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500

Explicación: Desactiva y reactiva la interfaz eth0 para resetear la conexión.


6. Conclusión

35 views