GNU/Linux >> Tutoriales Linux >  >> Linux

Diferencia entre los comandos 'ifconfig' e 'ip'

ifconfig es de net-tools , que no ha podido mantenerse completamente al día con la pila de red de Linux durante mucho tiempo. También sigue usando ioctl para la configuración de la red, que es una forma fea y menos poderosa de interactuar con el kernel.

Muchos cambios en el código de red de Linux y muchas características nuevas no son accesibles usando net-tools :enrutamiento de rutas múltiples, enrutamiento de políticas (consulte la RPDB). route le permite hacer cosas estúpidas como agregar múltiples rutas al mismo destino, con la misma métrica.

Además:

  • ifconfig no informa la dirección de hardware adecuada para algunos dispositivos.
  • No puedes configurar ipip , sit , gre , l2tp , etc. túneles estáticos en el kernel.
  • No puedes crear tun o tap dispositivos.
  • La forma de agregar varias direcciones a una interfaz determinada también tiene una semántica deficiente.
  • Tampoco puede configurar el sistema de control de tráfico de Linux usando net-tools tampoco.

Ver también ifconfig apesta.

EDITAR :Se eliminó la afirmación sobre net-tools cesando el desarrollo que por ahora olvidé de dónde obtuve para esta publicación. net-tools ' se ha trabajado desde iproute2 fue lanzado, aunque se trata principalmente de corrección de errores y mejoras y características menores, como la internacionalización.


ifconfig es un comando tradicional para mostrar información sobre las interfaces de red y cambiar algunas configuraciones. En particular, puede subir y bajar interfaces. Existe en la mayoría de las variantes de Unix.

En Linux, el ifconfig El comando no ha evolucionado en mucho tiempo. Todavía está perfectamente bien para lo que hace. Si estás usando ifconfig por algo, no hay razón para parar.

Linux también proporciona el ip comando de la suite de herramientas iproute2. El ip El comando combina varios comandos clásicos y más, incluido ifconfig , route y arp . ip puede hacer mucho más que ifconfig . Por otro lado, ip no siempre está presente, especialmente en sistemas integrados (y nunca en variantes de Unix que no sean Linux).

Analizando ifconfig La salida de un poco apesta. Analizando ip La salida de un poco apesta. No hay ganador allí.


Solo para agregar algunos bits a la respuesta de pilona. Alrededor de 2005, se introdujo un nuevo mecanismo para controlar la pila de red:los sockets de enlace de red.

Para configurar la interfaz de red iproute2 hace uso de ese mecanismo de socket de enlace de red full-duplex, mientras que ifconfig se basa en un ioctl llamada del sistema. Aquí hay 2 documentos principales sobre la motivación detrás de netlink y el uso de rtnetlink.


Linux
  1. Aprenda la diferencia entre los comandos "su" y "su -" en Linux

  2. ¿La diferencia entre los comandos Halt y Shutdown?

  3. ¿La diferencia entre [[ $a ==Z* ]] y [ $a ==Z* ]?

  4. ¿Diferencia entre Eot y Eof?

  5. ¿Diferencia entre [0-9], [[:digit:]] y D?

¿Cuál es la diferencia entre Linux y Unix?

Linux – ¿Diferencia entre Pts y Tty?

Diferencia entre rutas absolutas y relativas en Linux

diferencia entre netstat y ss en linux?

Diferencia entre ${} y $() en Bash

Diferencia entre comandos en bash script y comandos en terminal