¿Debo dejar de usar Ifconfig?

171

Con los servidores que montan tarjetas Infiniband, cuando uso el ifconfigcomando, aparece esta advertencia:

Ifconfig uses the ioctl access method to get the full address 
information, which limits hardware addresses to 8 bytes.
Because Infiniband address has 20 bytes, only the first 8 bytes 
are displayed correctly.
Ifconfig is obsolete! For replacement check ip.

¿Debo dejar de usar ifconfig? ¿Está en desuso a favor del ipcomando? ¿O se actualizará en un futuro próximo?

Nota: Esta pregunta y sus respuestas están relacionadas con las distribuciones "principales" de GNU / Linux . No debe suponerse que la información se aplica a todas las distribuciones, y especialmente a otros sistemas operativos.

Zhen
fuente
23
Cuanto antes cambie, mejor. Me llevó meses reemplazar la memoria muscular de ifconfig. Sin embargo, hace que las operaciones en Windows sean aún más divertidas. " ip add-no, espera, no es eso ifcon, -NO, argh ipconfig"
Charles
77
Tal vez un alias ayudará a: alias ipconfig='echo ipconfig is deprecated, use ip instead'. Por supuesto, estableces alias más sensatos.
ott--
98
ifconfig¿es obsoleto? Debo haber estado viviendo en una cueva
wim
26
Me parece curioso que un comando llamado "ip" tenga la capacidad de realizar operaciones a nivel de enlace.
James O'Gorman
12
Solo está en desuso en ciertos sistemas operativos. Si usa cosas fuera de Linux, creo que ifconfig todavía está en uso. No veo tal advertencia en FreeBSD, por ejemplo.
Stefan Lasiewski

Respuestas:

154

Citando el sitio web de Thomas Pircher ( cc-by-sa ):

ifconfig vs ip

El comando /bin/ipha estado presente por algún tiempo. Pero la gente continúa usando el comando anterior /sbin/ifconfig. Seamos claros: ifconfigno desaparecerá rápidamente, pero su versión más nueva ip, es más poderosa y eventualmente lo reemplazará.

La página de manual de ippuede parecer intimidante al principio, pero una vez que se familiarice con la sintaxis del comando, es una lectura fácil. Esta página no presentará las nuevas características de ip. Más bien se cuenta con una comparación lado a lado si ifconfigy ippara obtener una visión rápida de la sintaxis del comando.

Mostrar dispositivos de red y configuración

ifconfig

ip addr show
ip link show

Habilitar una interfaz de red

ifconfig eth0 up
ip link set eth0 up

Una interfaz de red está deshabilitada de manera similar:

ifconfig eth0 down
ip link set eth0 down
Fel
fuente
50
Es interesante cómo en cada caso de uso que mencionó, el comando ip es más largo y complejo. Probablemente sea la razón principal por la que la gente todavía usaifconfig
TheLQ
22
@TheLQ: ipproporciona muchas, muchas más funciones. Por supuesto que es más complejo. De todos modos, muchos comandos se pueden acortar. por ejemplo, ip addr showse puede acortar a ip a, ip link showa ip l, ip link set eth0 upa , ip l set eth0 upetc. Esto trae ipa la par con ifconfig.
BatchyX
16
Solo recuerda, el mundo entero no es una máquina Linux. Solaris, AIX, HP-UX, todos los BSD y SCO (no es que a nadie le importen ) todos usan ifconfig. Si quieres ser un Unix administrador (no sólo un Linux admin) que debe asegurarse de que está al menos familiarizados con ifconfig y su sintaxis básica ...
voretaq7
99
Tu primer ejemplo lo responde. ¿Por qué ejecutar 2 comandos cuando 1 lo hace?
ott--
66
@ott ip addr showcasi incluye la salida de ip link show.
nyuszika7h
40

Sí, ifconfigestá en desuso a favor de iproute2 (el ipcomando) en Linux .

Del mismo modo, los comandos arp, routey netstattambién están en desuso.

Sin embargo, iproute2 es específico de Linux, cuando algunos otros Unix usan ifconfig, por lo que puede ser útil saber / recordar cómo funciona si alguna vez vas a usar otro Unix ...

Para aprender la "nueva forma", le sugiero que mire esos 3 enlaces:

Según el último enlace, ifconfigno se ha mantenido durante más de 15 años :

Excepto por la masa de parches que Debian acumuló, el paquete de herramientas de red no ha visto ningún desarrollo posterior después de la versión 1.60, lanzada en algún momento alrededor del 15 de abril de 2001.

Totor
fuente
99
ifconfigfue desarrollado por BSD en el pasado. Linux usó esencialmente la pila IP de BSD (al igual que Windows y otros de la época, por qué ipconfigsigue siendo similar ifconfig). En el Kernel 2.4, Linux comenzó a diferir mucho de la pila de BSD, eso fue a principios de 2001. No es casualidad que ifconfigen Linux no se haya mantenido bien desde entonces.
Chris S
3
¿¡10 años!? Es hora de lanzar un proyecto "guardar ifconfig" en GitHub, supongo.
kenchilada
20

ifconfig está en desuso durante muchos años, es hora de cambiar, especialmente en un caso como el suyo

Sven
fuente
1
También me gusta su acortamiento de comando cisco-esque. "ip a" = "show de direcciones ip"
Coops
55
meh Hay suficientes scripts y otras herramientas que están construidas sobre ifconfig, que no siento la necesidad de cambiar hasta que desaparezca ...
Jason Antman
10
Nunca he oído hablar de ip. Acabo de probarlo en un servidor FreeBSD y dice ip: Command not found.. Tal vez ifconfigsolo está en desuso en Linux.
ctype.h
2
@ ctype.h: De hecho, solo está en desuso en Linux. El lanzamiento de ifconfig dirigido a Linux data de 1999. ipya era la opción recomendada para los núcleos 2.4.
BatchyX
5

ipha sido el reemplazo por ifconfigun tiempo, probablemente en algún momento ifconfigse actualizará, sin embargo, no esperaría y aprendería a trabajar iptambién. Es compatible con todos los distri de Linux

Destello
fuente
8
ip ha sido el reemplazo de ifconfig en Linux , como una elección hecha por algunas distribuciones.
Kaz
Parece extremadamente improbable que ifconfig pueda ser totalmente compatible con Linux. comandos como ifconfig eth0 192.168.0.7/24no tienen un significado claro: ej. si eth0ya tiene 2 direcciones IP (dos en él, no una, un alias como eth0: 1).
Jasen