Uso avanzado del comando ip en Linux para configuración de red

El comando ip en Linux es una herramienta poderosa y versátil para la administración de redes. Unifica y reemplaza funcionalidades de comandos tradicionales como ifconfig y route, ofreciendo un control más granular sobre la configuración de red. Su sintaxis general es:

ip [opciones] objeto { comando | ayuda }

Donde objeto define el aspecto de la red que se va a gestionar, como enlaces, direcciones IP o rutas. Este artículo explora los comandos más esenciales agrupados por su función principal.

Gestión de interfaces de red con ip link

El objeto link se ocupa de los aspectos de nivel de enlace de datos de las interfaces, como el estado, la dirección MAC y el MTU. Permite visualizar y modificar estos parámetros físicos.

Para ver el estado de todas las interfaces:

$ ip link show

<p>Si se desea información más detallada, incluyendo estadísticas de tráfico, se utiliza el indicador <code>-s</code>:</p>
<code>$ ip -s link show enp0s3</code>
<p>Para activar o desactivar una interfaz:</p>
<code>$ sudo ip link set enp0s3 down
$ sudo ip link set enp0s3 up</code>
<p>También es posible modificar parámetros como el nombre lógico de la interfaz. Esto requiere que la interfaz esté previamente desactivada:</p>
<code>$ sudo ip link set enp0s3 down
$ sudo ip link set enp0s3 name eth-primary
$ sudo ip link show</code>
<p>Para cambiar el valor de MTU:</p>
<code>$ sudo ip link set eth-primary mtu 9000</code>

<h2>Configuración de direcciones IP con ip address</h2>
<p>El objeto <code>address</code> (o su abreviatura <code>addr</code>) permite administrar las direcciones de protocolo asignadas a las interfaces de red (capa 3 del modelo OSI).</p>
<p>Para listar todas las direcciones IP configuradas en el sistema:</p>
<code>$ ip addr show</code>
<p>Para ver las direcciones de una interfaz específica:</p>
<code>$ ip addr show dev enp0s3</code>
<p>Asignar una nueva dirección IP a una interfaz:</p>
<code>$ sudo ip addr add 10.0.2.15/24 dev enp0s3</code>
<p>Se puede crear una interfaz virtual (alias) con su propia dirección, etiquetada:</p>
<code>$ sudo ip addr add 192.168.55.1/24 boradcast + dev enp0s3 label enp0s3:virtual</code>
<p>El comando anterior asigna la dirección <code>192.168.55.1</code> a la interfaz <code>enp0s3</code>, creando una entrada virtual etiquetada como <code>enp0s3:virtual</code>. La opción <code>broadcast +</code> calcula automáticamente la dirección de difusión.</p>
<p>Eliminar una dirección asignada:</p>
<code>$ sudo ip addr del 192.168.55.1/24 dev enp0s3</code>

<h2>Manipulación de la tabla de enrutamiento con ip route</h2>
<p>El objeto <code>route</code> se utiliza para visualizar y modificar la tabla de rutas del kernel, determinando cómo se enruta el tráfico de red.</p>
<p>Para mostrar la tabla de enrutamiento actual:</p>
<code>$ ip route show</code>
<p>Agregar una ruta para acceder directamente a una red a través de una interfaz local:</p>
<code>$ sudo ip route add 172.16.10.0/24 dev enp0s3</code>
<p>Agregar una ruta estática hacia una red remota a través de una puerta de enlace (router):</p>
<code>$ sudo ip route add 192.168.100.0/24 via 10.0.2.2 dev enp0s3</code>
<p>Configurar la ruta por defecto (default gateway):</p>
<code>$ sudo ip route add default via 10.0.2.2</code>
<p>Eliminar una ruta específica de la tabla:</p>
<code>$ sudo ip route del 172.16.10.0/24</code>
<p>Estos comandos proporcionan un control preciso y programático sobre la configuración de red, siendo la herramienta preferida en entornos modernos y scripts de automatización en sistemas Linux.</p>

Etiquetas: linux redes comandos ip configuración de red enrutamiento

Publicado el 7-1 01:42