Ir al contenido principal

Iproute2 la Sustitución completa de ifconfig

Adios net-tools, Bienvenido iproute2



Un poco de historia
El aprender del pasado, nos prepara para el futuro


La mayoría de las distribuciones de Linux, y la mayoría de los UNIX, usan todavía algunas de ellas las venerables órdenes arp, ifconfig y route.


Aunque funcionan, muestran cierto comportamiento inesperado a partir de Linux 2.2. Por ejemplo, los túneles GRE son parte integral del enrutado hoy día, pero precisan herramientas completamente diferentes.


Los núcleos Linux 2.2 y superiores incluyen un subsistema de red completamente rediseñado. Este nuevo código de red proporciona a Linux un rendimiento y características con poca competencia en el panorama general de los SO.


En realidad, el nuevo código de enrutado, filtrado y clasificación tiene más posibilidades que el que proporcionan muchos enrutadores y cortafuegos dedicados y productos de control de trafico.


Actualmente las principales distribuciones de Linux, han sustituido la instalación predeterminada de estas aplicaciones en favor de la suite de iproute2, pero surge la pregunta..., por que iproute2?

Porque iproute2
El aprender del pasado, nos prepara para el futuro


El propósito de iproute2 es reemplazar el conjunto de herramientas que componen las net-tools y pasar a ser él quien se encargue de configurar las interfaces de red, la tabla de rutas y gestionar la tabla ARP.


Caso similar nos pasa con el comando netstat. Hoy comentaremos igualmente de de su sustituto ss, ya que netstat se dejó de desarrollar en 2001.


Para situarnos en contexto, netstat, ifconfig, route, arp forman parte de las comúnmente llamadas net-tools o herramientas de red. Este conjunto de herramientas lo forman estos comandos. Dichas herramientas han quedado obsoletas en favor de iproute2 desde hace algunos años.


Al día de hoy la mayoría de distribuciones traen iproute instalado por defecto.


Esta nueva infraestructura hace posible expresar claramente características que antes estaban más allá del alcance de Linux.


Un claro ejemplo de esta tendencia, es que Red Hat y su homologo CentOS nos instalan en forma predeterminada iptools en vez de net-tools.


Debian en su nueva versión continua con esta tendencia, llegando incluso a preparar un capitulo especial haciendo mención de este cambio.


"Tomado de la Página de Debian 9"


El paquete net-tools está obsoleto y ha sido reemplazado por iproute2


El paquete net-tools ya no es parte de las nuevas instalaciones por omisión, porque su prioridad se ha rebajado de importante a opcional. Se recomienda a los usuarios utilizar en su lugar el conjunto de herramientas más moderno iproute2 (que ha sido parte de las nuevas instalaciones desde hace ya varias publicaciones). Si quiere seguir utilizando los programas de net-tools puede instalarlo simplemente via


apt install net-tools


Aviso


Tenga en cuenta que el paquete net-tools puede llegar a desinstalarse durante la actualización si sólo se instaló para satisfacer una dependencia. Si depende de net-tools, debe recordar marcarlo como instalado manualmente antes de realizar la actualización haciendo lo siguiente:


apt-mark manual net-tools

Comandos equivalentes


A continuación se muestra un resumen de las órdenes net-tools, junto con la orden equivalente con iproute2:

Por función especifica

La siguiente tabla nos muestra su comando equivalente basado en la función operativa que deseamos realizar.

Una breve visión del comando IP

Un solo comando, para múltiples funciones




A continuación listaremos las que posiblemente podrían ser los comandos mas utilizados en un ambiente operacional comun:




Mostrar dispositivos de red y su configuración

ifconfig ifconfig -a

ip addr show o ip link show




Habilitar una interfaz de red
ifconfig ifconfig eth0 up

ip link set eth0 up




Deshabilitar una interfaz de red

ifconfig ifconfig eth0 down

ip link set eth0 down




Asignar una dirección IP

ifconfig ifconfig eth0 192.168.0.77

ip address add 192.168.0.77 dev eth0

El mismo comando con mascara de red y dirección de difusión
ifconfig eth0 192.168.0.77 netmask 255.255.255.0 broadcast 192.168.0.255

ip addr add 192.168.0.77/24 broadcast 192.168.1.255 dev eth0




Borrar una dirección IP (Esto solo es posible con ip)

ip addr del 192.168.0.77/24 dev eth0




Agregar interfaces alias
ifconfig eth0:1 10.0.0.1/8

ip addr add 10.0.0.1/8 dev eth0 label eth0:1




Protocolo ARP

Agregar una entrada a la tabla ARP

arp -i eth0 -s 192.168.0.1 00:11:22:33:44:55

ip neigh add 192.168.0.1 lladdr 00:11:22:33:44:55 nud permanent dev eth0




Apagar resolución ARP en un dispositivo
ifconfig -arp eth0

ip link set dev eth0 arp off

Analizando nuestra red con SS
ss el sustituto del nuestro viejo amigo netstat


También como parte de la suite de iproute2, y en sustitucion del clasico NETSTAT esta el comando SS

El comando SS forma parte del paquete IPROUTE2 y se usa para mostrar las estadísticas de los sockets. Estos sockets pueden ser de tipo TCP, UDP, PACKET, DCCP, RAW, UNIX, etc.

Esta herramienta es capaz de sacar mucha mas información sobre TCP y sus estados que otras herramientas del estilo.

Podremos sacar información sobre cosas como:


Información sobre los sockets TCP y UDP con muchísimo detalle.


Las conexiones establecidas por SSH, FTP, HTTP, HTTPS…


Conexiones a nuestro X server.


Filtrar por estado (SYN-RECV, SYN-SENT,TIME-WAIT) direcciones y puertos.


Saber cuales son los sockets TCP que se encuentran en estado FIN-WAIT-1.

Algunos ejemplos simples:

Mostrando el Estado de los Sockets

[soporte@server ~]$ ss -s

Mostrar los sockets en escucha, esto puede resultar ser una lista bastante larga, recomendamos complementarla con el comando more|less:

[soporte@server ~]$ ss -l | less

Mostrando los id de los procesos

[soporte@server ~]$ ss -pl

Mostrando sockets por tipo

TCP: ss -t -a

[soporte@server ~]$ ss -t -a

o solo los ipv4...

[soporte@server ~]$ ss -4 -t -a

UDP: ss -u -a

UNIX: ss -x -a


Conclusión


IPROUTE2 es una evolución sumamente ventajosa, en el manejo de networking en los Linux Modernos, sobre todo ahora que forma parte predeterminada de la suite de herramientas que nos proporciona Linux.

IPROUTE2 saca ventaja de todas las características modernas de los Kernel de Linux, permitiendo simplificar en pocos comandos (realmente dos ip y ss), la mayoría de las actividades que tradicionalmente teníamos que ejecutar en el entorno operacional de nuestras instalaciones.

Próximamente describiremos en profundidad y en forma separada estos comandos.

No olvide si este articulo le es provechoso, dejar sus comentarios, y compartir a traves de las redes sociales, simplemente pulsando sobre el icono de la red de su preferencia.

Comentarios

Entradas más populares de este blog

Selfies en 3D llegan a Venezuela y hasta las podrás imprimir en plástico

La empresa 3DUP lanzó al mercado venezolano las líneas de impresoras 3D,  Cube3  y CubePro  de 3D Systems Corporation, a través de las cuales se podrán imprimir modelos, diseños o escaneos en 3D. De igual manera, también está disponible el servicio de selfie3D y el servicio de modelado 3D. La impresora Cube3 tiene dos cabezales de impresión y es única en su clase, posee una amplia combinación de materiales ABS, PLA y una variedad de 18 colores. Es el equipo más fácil de utilizar en el mercado y tiene un software de construcción apto para Windows y Mac; además cuenta con conexión wifi. La nueva CubePro, impresora 3D de calidad profesional ofrece el mayor volumen de impresión entre las impresoras de su clase, sus versiones cuentan con uno, dos o tres cabezales de impresión. Además, posee una amplia combinación de materiales ABS, PLA y Nylon con una variedad de 25 colores, cuenta con una cámara calefaccionada y cerrada para optimizar los trabajos de impresión 3D. P...

Solución al problema “sudo: command not found” en Linux

Al instalar una distribución GNU/Linux, lo primero que se suele hacer es ejecutar los siguientes comandos de actualización del sistema: Terminal 1 2 sudo apt - get update sudo apt - get upgrade Sin embargo, en Debian nos encontraremos con el problema de que el comando sudo  no se encuentra. Esto depende de cómo hayamos realizado el proceso de instalación, ya que si se especifica una contraseña para el usuario  root  durante la instalación,  sudo  no será instalado por defecto. Por el contrario, si no se especifica una contraseña, sí se instalará. En caso de obtener el error  “sudo: command not found” , debemos realizar los siguientes pasos para solucionar esta situación. 1. Cambiar al usuario root Desde la terminal, introducimos el comando  su  para hacer el login con el usuario  root . Pedirá una contraseña, que será la que hayamos especificado en el proceso de instalación...

CÓMO RECUPERAR UN ARCHIVO DE VÍDEO EN LINUX

Paso 1:   Com probam os  que existe información en el archivo Parece lógico, pero por si acaso, lo incluyo como primer paso. Como veis, en mi caso el archivo ocupa 271,1MB (lo que significa que  la información está ahí, pero no podemos verla porque se ha guardado de forma incorrecta ). A continuación,  instalamos  Untrunc . Os indico  cómo hacerlo en los próximos pasos , es muy sencillo. Las instrucciones detalladas se encuentran en el  Readme  del  repositorio de Ponchio . Leedlas si usáis otro SO que no sea Ubuntu. Paso 2: Instalamos una serie de librerías  Libav  con el comando: Terminal Shell 1 sudo apt - get install libavformat - dev libavcodec - dev libavutil - dev Si usas otro SO que no sea Ubuntu (o una versión antigua de este), quizás debas instalar manualmente Libav. Paso 3: Descargamos el código fuente de  Untrunc , desde Github: Terminal ...