El comando ip en Linux: Uso, Opciones y Ejemplos

Artículos Guías Manuales Sistemas Linux Windows Binario 0

El comando ip en Linux es una herramienta potente y versátil para gestionar y configurar interfaces de red, rutas y túneles. Proporciona una alternativa más moderna y flexible al comando ifconfig, que ha sido tradicionalmente utilizado para estas tareas. A lo largo de este artículo, exploraremos cómo usar ip, sus opciones más comunes y algunos ejemplos prácticos.

¿Qué es el comando ip?

El comando ip es parte del paquete iproute2, que incluye diversas herramientas de red avanzadas. Su principal función es gestionar configuraciones de red de forma dinámica, lo que lo hace adecuado tanto para administradores de sistemas como para usuarios avanzados que necesitan interactuar con la red en Linux.

Funcionalidades principales del comando ip:

  • Ver y gestionar interfaces de red.
  • Mostrar y modificar rutas.
  • Configurar direcciones IP.
  • Manipular tablas de enrutamiento.
  • Crear túneles de red.

Uso general del comando ip

El comando ip sigue una estructura básica:

ip [opciones] [subcomando] [argumentos]

Por ejemplo, para ver todas las interfaces de red, el subcomando que usaríamos es addr (dirección) de la siguiente manera:

ip addr

Opciones comunes del comando ip

A continuación, se presentan algunas de las opciones más comunes:

1. ip addr o ip address

Este subcomando muestra la información sobre las interfaces de red y sus direcciones IP asociadas.

Ejemplo:

ip addr

Esto listará todas las interfaces de red con sus respectivas direcciones IP, máscaras de red, estado (UP/DOWN), etc.

2. ip link

Este subcomando se utiliza para ver y gestionar las interfaces de red. A diferencia de ip addr, que muestra información sobre direcciones IP, ip link se enfoca más en el estado físico de las interfaces.

Ejemplo:

ip link show

Esto muestra un listado de todas las interfaces de red, independientemente de si tienen una dirección IP asignada.

Para activar una interfaz:

ip link set dev eth0 up

Para desactivar una interfaz:

ip link set dev eth0 down

3. ip route

Este subcomando muestra y gestiona las tablas de enrutamiento del sistema. Es útil para verificar rutas predeterminadas y modificar rutas de red.

Ejemplo:

ip route show

Esto muestra la tabla de enrutamiento actual.

Para agregar una nueva ruta:

ip route add 192.168.1.0/24 via 192.168.1.1

Para eliminar una ruta:

ip route del 192.168.1.0/24 via 192.168.1.1

4. ip neigh

Este subcomando gestiona la tabla ARP (Address Resolution Protocol) en sistemas IPv4 y la tabla NDP (Neighbor Discovery Protocol) en sistemas IPv6. Estas tablas se encargan de resolver direcciones IP en direcciones MAC.

Ejemplo para ver la tabla ARP:

ip neigh

5. ip tunnel

Este comando permite configurar túneles de red. Se usa principalmente para configurar túneles IP sobre IP, útiles en conexiones VPN o en redes privadas.

Ejemplo para crear un túnel:

ip tunnel add tun0 mode gre remote 192.168.2.1 local 192.168.1.1 ttl 255

En este ejemplo, se crea un túnel GRE entre dos hosts, con las IP especificadas.

Ejemplos prácticos de uso

1. Asignar una dirección IP a una interfaz

Para asignar manualmente una dirección IP a una interfaz de red:

ip addr add 192.168.1.100/24 dev eth0

Este comando asigna la dirección IP 192.168.1.100 con una máscara de red de 24 bits a la interfaz eth0.

2. Eliminar una dirección IP de una interfaz

Para eliminar una dirección IP previamente asignada:

ip addr del 192.168.1.100/24 dev eth0

3. Mostrar el estado de todas las interfaces de red

Para listar todas las interfaces de red junto con sus direcciones IP:

ip -s link

Este comando proporciona detalles sobre el estado físico de las interfaces (en bytes enviados y recibidos).

4. Cambiar la MTU (Maximum Transmission Unit) de una interfaz

Para cambiar la MTU de una interfaz, por ejemplo, para eth0:

ip link set dev eth0 mtu 1400

5. Configurar una ruta por defecto

Para establecer una ruta predeterminada hacia una puerta de enlace:

ip route add default via 192.168.1.1

Este comando configura la IP 192.168.1.1 como la puerta de enlace predeterminada.

Conclusión

El comando ip en Linux es una herramienta esencial para gestionar configuraciones de red de manera flexible y avanzada. Ya sea para ver el estado de las interfaces, gestionar rutas o configurar túneles, ip proporciona un conjunto de funcionalidades robusto y actualizado en comparación con las herramientas más antiguas. Con su versatilidad y potencia, es indispensable para administradores de sistemas y usuarios que interactúan con redes en Linux.