Cómo usar el comando ip para administrar redes en Linux
La parte más fundamental de la administración y resolución de problemas de Linux es verificar la configuración de IP de un sistema para asegurarse de que el sistema tenga una IP válida y sea accesible en la red local.
El comando ip en Linux es una herramienta poderosa que no solo muestra la dirección IP actual de un sistema, sino que también le permite ver y administrar la configuración actual de las interfaces de red, direcciones IP, rutas y tablas ARP.
Veamos algunos de los casos de uso comunes del comando ip en Linux.
Encuentra la dirección IP en Linux
Para encontrar la dirección IP de su sistema Linux, use el comando ip seguido de dirección , dirección o una opción:
ip address
Esto mostrará la configuración de todas las interfaces de red, incluidas sus direcciones IP.
En el siguiente ejemplo, puede ver que el sistema tiene tres interfaces de red: lo (dirección de bucle invertido), ens33 y ens37 . La salida incluye la siguiente información:
- Información de la capa 1, como la capacidad de la interfaz y el estado de conectividad de la capa física, la MTU, el estado operativo de la interfaz (p. ej., ARRIBA o ABAJO) y la longitud de la cola de transmisión (qlen).
- Información de capa 2 como la dirección MAC de la interfaz.
- La información de la capa 3 incluye la dirección IP y su tipo (direccionamiento IP dinámico o direccionamiento IP estático).
Para mostrar información breve sobre las interfaces de red, use el comando ip con la opción –brief de la siguiente manera:
ip --brief address show
Para mostrar solo la información de la dirección IPv4, use el siguiente comando:
ip -4 addr
Para averiguar la información de la dirección IP de una interfaz de red en particular, utilice la siguiente sintaxis:
ip address show dev [interface]
Por ejemplo, para ver la dirección IP de una interfaz de red ens33 , el comando sería:
ip address show dev ens33
Ver y cambiar la dirección MAC
Usando el comando ip, también puede ver y cambiar la dirección MAC de su sistema.
Para ver la dirección MAC de su sistema Linux, use el siguiente comando:
ip --brief link show
Para ver la dirección MAC de una interfaz en particular, use:
ip --brief link show dev [interface]
Para cambiar la dirección MAC, primero desactive la interfaz:
sudo ip link set dev [interface] down
Luego use el siguiente comando para cambiar la dirección MAC de su interfaz:
sudo ip link set dev [interface] address [new-mac-adddress]
Después de eso, abre la interfaz:
sudo ip link set dev [interface] up
Ver estadísticas de interfaz de red
Usando el comando ip, también puede ver las estadísticas de una interfaz de red. Use el siguiente comando ip para ver las estadísticas de todas las interfaces de red en su sistema:
ip -s link
La salida incluye estadísticas como bytes/paquetes transmitidos y recibidos, errores, paquetes descartados, multidifusión, etc. Para mostrar las estadísticas de una interfaz en particular, use la siguiente sintaxis:
ip -s link show dev [interface]
Modificar las propiedades del enlace usando ip
Para abrir una interfaz, use el siguiente comando ip:
sudo ip link set [interface] up
Para desactivar la interfaz, ejecute:
sudo ip link set [interface] down
También puede cambiar la MTU (unidad máxima de transmisión) de una interfaz usando el siguiente comando:
sudo ip link set mtu [number] dev [interface]
Por ejemplo, para establecer la MTU de una interfaz de red ens33 en 8000 , el comando sería:
sudo ip link set mtu 8000 dev ens33
Agregar/eliminar dirección IP en Linux
Para agregar una dirección IP a una interfaz de red, use la siguiente sintaxis:
ip addr add [ip-address] dev [interface]
Para agregar una dirección IP 192.168.42.140/24 a la interfaz de red ens33 , el comando sería:
ip addr add 192.168.42.140/24 dev ens33
Utilice la siguiente sintaxis de comandos para eliminar la dirección IP de una interfaz:
ip addr del [ip-address] dev [interface]
Para eliminar la dirección IP 192.168.42.140/24 de la interfaz ens33 , el comando sería:
ip addr del 192.168.42.140/24 dev ens33
Ver la tabla de enrutamiento en Linux
El comando ip route se usa para ver y modificar las rutas en un sistema Linux. Para mostrar la tabla de enrutamiento de su sistema, use el comando ip route sin ninguna opción:
ip route
Cada línea en la salida representa una ruta configurada. Una ruta consta de una dirección de red de destino, un siguiente salto (es decir, la dirección IP del enrutador), una interfaz a través de la cual se enviará el paquete y la métrica (un valor que se utiliza para determinar la ruta preferida cuando hay varias rutas). disponibles para el destino). En este caso, se prefiere la ruta con la métrica más baja.
En el ejemplo anterior, las dos primeras entradas representan la ruta predeterminada, que se utiliza cuando no hay otra ruta disponible para la dirección de destino. 192.168.42.2 y 192.168.10.1 son las direcciones IP del enrutador. Los dev ens33 y ens37 indican la interfaz que se utilizará para enviar los paquetes al enrutador. Los campos de proto dhcp indican que la ruta predeterminada se aprende de DHCP.
La segunda entrada representa la dirección APIPA (direccionamiento IP privado automático) 169.254.0.0/16 . Cuando un host no puede obtener una dirección IP de un servidor DHCP, se asigna una dirección IP aleatoria de esta red. Les permite comunicarse con otros hosts en la subred que tampoco pudieron obtener la dirección IP.
Las entradas tercera y cuarta muestran las direcciones de red de las redes locales a las que está conectado el sistema. 192.168.10.0 es la red a la que está conectada la interfaz ens37 , mientras que 192.168.42.0 es la red a la que está conectada ens33 .
El campo src indica la dirección IP de la interfaz utilizada como dirección de origen al enviar paquetes a través de esta ruta.
Modificar la tabla de enrutamiento usando ip
Para agregar manualmente una ruta, use el comando ip route seguido de la dirección de la red de destino y la IP de la puerta de enlace:
sudo ip route add [network-id] via [gateway-ip]
Por ejemplo, para agregar una ruta que envíe todo el tráfico destinado a la red 192.168.20.0 a la puerta de enlace en 192.168.10.16 , usaría el siguiente comando:
sudo ip route add 192.168.20.0/24 via 192.168.10.16
Use el siguiente comando para agregar una ruta predeterminada:
sudo ip route add default via [ip-address] dev [interface]
Por ejemplo, para agregar la ruta predeterminada que dirige el tráfico al enrutador en 192.168.10.1 a través de ens33 , el comando sería:
sudo ip route add default via 192.168.10.1 dev ens33
ip route get [ip-address]
Para eliminar una entrada de la tabla de enrutamiento, use la siguiente sintaxis:
sudo ip route delete [network-address] via [gateway-ip]
También puede ver la ruta que tomará una dirección usando la siguiente sintaxis:
ip route get [ip-address]
Administrar tabla vecina en Linux
Puede usar el comando ip neigh en Linux para ver y modificar la tabla de vecinos, también conocida como tabla ARP. Para ver las entradas de la tabla de vecinos actuales, use el siguiente comando:
ip neigh show
Para agregar una nueva entrada en la tabla de vecinos, use la siguiente sintaxis:
sudo ip neigh add [ip-address] lladdr [mac-address] dev [interface]
Para eliminar una entrada de la tabla de vecinos, utilice la siguiente sintaxis:
sudo ip neigh del [ip-address] dev [interface]
Agregar color a la salida del comando ip
Para que la salida sea más fácil y rápida de entender, puede agregar color a la salida del comando ip usando la opción -c :
ip -c a
Gestión de redes y direcciones IP en Linux
El comando ip en Linux es una herramienta útil para administrar y solucionar problemas de conexiones de red. Desde ver las interfaces de red y modificar las propiedades de los enlaces hasta encontrar las direcciones IP y administrar las rutas, el comando ip le permite realizar varias tareas de administración del sistema a través de la línea de comandos.
Deja una respuesta