Dov'è la dichiarazione di deprecazione di ifconfig (su Linux)?


41

Molte persone affermano che il ifconfigcomando è deprecato a favore di ipquello (almeno su Linux).

Questo è spesso usato come argomento per passare da ifconfiga ip(vedi qualche commento e risposta di Dovrei smettere di usare Ifconfig? ).

Dove possiamo trovare una dichiarazione a riguardo (ovvero dove si afferma che ifconfignon sarà supportato in futuro)?


15
La pagina man, per esempio.
Michael Hampton

5
Sii come me ... usa ipconfig il più a lungo possibile ... finché non puoi . Stessa cosa per IPv6!
ewwhite,

3
@ewwhite RHEL 7 non installa nemmeno net-tools per impostazione predefinita. Buona fortuna.
Michael Hampton

4
@MichaelHampton Non sulla mia manpagina
Izkata,

3
@ewwhite: usi Windows?
slebetman,

Risposte:


30

La dichiarazione ufficiale relativa ai piani per gli obsoleti strumenti di rete è stata fatta nella mailing list debian-devel all'inizio del 2009 da uno dei manutentori degli strumenti di rete. Fedele alla loro affermazione, net-tools non è stato quasi più mantenuto da allora.

Luk Claes e io, in quanto attuali manutentori degli strumenti di rete, abbiamo pensato al futuro. Net-tools è stata una parte fondamentale di Debian e di qualsiasi altra distribuzione basata su Linux per molti anni, ma sta mostrando la sua età.

Non supporta molte delle moderne funzionalità del kernel Linux, l'interfaccia è tutt'altro che ottimale e difficile da usare nell'automazione, e inoltre, non ha avuto molto amore negli ultimi anni.

Dall'altro lato, la suite iproute, introdotta attorno alla linea del kernel 2.2, ha un'interfaccia molto migliore e coerente, è più potente e ha quasi dieci anni, quindi nessuno direbbe che non è stato testato.

Quindi, i nostri piani sono di sostituire completamente net-tools con iproute, forse aprendo la strada per altre distribuzioni da seguire. Naturalmente, la maggior parte delle persone e degli strumenti usa e ricorda la vecchia interfaccia venerabile, quindi il primo passo sarebbe scrivere involucri, cercando di essere compatibile con net-tools.

Allo stesso tempo, crediamo che la maggior parte dei pacchetti che usano net-tools dovrebbero essere patchati per usare invece iproute, mentre altri possono continuare a usare i wrapper per qualche tempo. Il pacchetto ifupdown è ovviamente il primo candidato, ma sembra che una versione che utilizza iproute sia disponibile in versione sperimentale dal 2007.

L'idea di scrivere wrapper è stata infine abbandonata come impraticabile, e da allora quasi tutte le distribuzioni Linux sono passate a iproute2.


21

La pagina man di ifconfigdice:

IFCONFIG(8)           Linux System Administrator's Manual          IFCONFIG(8)

NAME
       ifconfig - configure a network interface

SYNOPSIS
       ifconfig [-v] [-a] [-s] [interface]
       ifconfig [-v] interface [aftype] options | address ...

NOTE
       This  program  is obsolete!  For replacement check ip addr and ip link.
       For statistics use ip -s link.

La pagina di notizie di Arch Linux dice:

Deprecazione degli strumenti di rete

08/06/2011 - Tom Gundersen

Questo aprile ha segnato il decimo anniversario dell'ultima versione di net-tools. Abbiamo deciso di considerare questo come un'opportunità per deprecare gli strumenti di rete e fornire soluzioni alternative e meglio mantenute per la funzionalità degli strumenti di rete. Ciò ha alcune conseguenze, ma la maggior parte delle persone non dovrebbe accorgersene.

net-tools continuerà ad essere nei repository, quindi gli script su cui fare affidamento dovrebbero ancora funzionare.

E Linux Foundation dice più o meno la stessa cosa:

net-tools
di Linux Foundatio ... - 19 novembre 2009 - 10:23

networking

Panoramica

Una raccolta di programmi che formano il set di base della distribuzione di rete NET-3 per il sistema operativo Linux. Questo pacchetto include arp (8), hostname (1), ifconfig (8), ipmaddr, iptunnel, mii-tool (8), nameif (8), netstat (8), plipconfig (8), rarp (8), route (8) e doghe (8).

Maintainers: Bernd Eckenfels, Phil Blundell
Current Version: net-tools 1.60 (see upstream git for updates)

Tieni presente che la maggior parte dei programmi di net-tools ora sono obsoleti:

program   obsoleted by
arp       ip neigh
ifconfig  ip addr
ipmaddr   ip maddr
iptunnel  ip tunnel
route     ip route
nameif    ifrename
mii-tool  ethtool

Probabilmente vorrai rivedere la pagina iproute2.

Non sono sicuro del motivo per cui Ubuntu non rechi la nota sulla deprecazione.


Non dici in quale distro. Ubuntu ha ancora una vera pagina man per iconfig.
Andrew Schulman,

@AndrewSchulman, ho aggiornato la mia risposta con un link alla pagina man.
Domanda Overflow

1
Tuttavia è stato deprecato a monte. Non si sa quando alla fine funzionerà a livello amministrativo. Alcuni aggiornamenti del sottosistema sembrano aver preso una seconda posizione rispetto alle modifiche al window manager predefinito (Unity) per alcuni anni - che, stranamente, esattamente zero persone che conosco personalmente usano, incluso me stesso. Ma alla fine i net-tools spariranno; nulla di nuovo viene scritto contro le sue biblioteche.
zxq9,

@AndrewSchulman, ho annullato la tua dichiarazione su Ubuntu poiché non intendevo dirlo.
Domanda Overflow

10

Questo è un problema specifico della distro. net-tools è stato deprecato da quasi tutte le principali distro (o distro upstream), quindi in effetti l'intera comunità sta passando da ifconfig a ip - ma il cambiamento è lento, poiché alcune distribuzioni hanno una durata di conservazione estremamente lunga (RHEL, per esempio).

È meno probabile trovare un annuncio di deprecazione rispetto a un elemento nelle note di rilascio di una versione principale per una distribuzione che affermi qualcosa come "A partire da FooLinux v2.0 net-tools è stato deprecato a favore del comando 'ip'". (Se la distribuzione ha versioni importanti, vale a dire. Gentoo e Arch sono eccezioni interessanti che gestiscono questo genere di cose attraverso annunci di notizie che appaiono come avvisi di amministrazione all'interno del sistema e talvolta sui loro siti Web: https://www.archlinux.org/ news / deprecation-of-net-tools / .)

Puoi trovare molte chiacchiere sulla morte (lenta) di net-tools in bug tracker e roadmap di sviluppo, anche:

È del tutto possibile che una distribuzione da qualche parte possa decidere di rimanere con net-tools e adottarne la manutenzione come progetto per animali domestici, ma ciò è improbabile poiché il risultato finale richiederebbe notevoli sforzi per mantenere un set di strumenti contro cui nessuno scrive altri software. A meno che quella distribuzione non sia di proprietà di Apple, ovviamente. ;-)

Alla fine, la vera lezione è leggere le note di rilascio . Linux è un obiettivo mobile, soprattutto se stai gestendo più di una singola distribuzione in una sola volta, quindi non ignorare i documenti o supporre che qualcosa nella versione X sia la stessa di X-1.


1
@BrianKnoblauch Non pensarci troppo. Vi è una complessa combinazione di ragioni politiche, commerciali e (effettive) tecniche che alcune cose cambiano così velocemente e altre così lentamente. Devo solo accettare che le cose esplodano periodicamente su di noi e prestiamo attenzione a rilasciare le note ogni tanto. :-)
zxq9

1
La manutenzione di @R include sempre almeno il packaging rispetto a qualsiasi utility di base inclusa nella distribuzione (il che significa eventualmente porting o patching di altri pacchetti upstream non correlati che includi anche per lavorare entro i vincoli di un sistema che include roba obsoleta) - per non parlare del patching di sicurezza (considera il dilemma crescente di Apple). I vecchi pacchetti diventano tarbabie nel tempo, specialmente quelli che meno ti aspetti. La distinzione di Bastiat tra ciò che viene visto e ciò che non si vede è qui marginalmente istruttiva, così come l'affermazione di Heinlein secondo cui "Non esiste un pranzo gratis".
zxq9

2
Questo non è corretto: qualsiasi distribuzione che utilizza un kernel attualmente gestito può avere interfacce di rete configurate che non funzionano con ifconfig .
mikemaccana,

1
@ zxq9 Ho capito che hai menzionato che si trattava di un problema specifico della distribuzione. Ho dimostrato che non si tratta di un problema specifico di distro; tutte le distribuzioni Linux usano lo stesso kernel, non una singola distribuzione utilizzerà un kernel in grado di esprimere tutti i suoi concetti di rete in modo tale che ifconfig mostrerà correttamente le interfacce di rete configurate.
mikemaccana,

1
@ zxq9 Tutte le distribuzioni Linux usano il kernel Linux, dove ioctlsono implementate le reti . Hai frainteso e pensato che intendessi la versione del kernel. Tutte le distro Linux mantenute (ad es. Usano un kernel di età inferiore ai 10 anni) hanno il problema che ifconfig non può rappresentare, ad es. Un ip virtuale su una VLAN su una scheda di rete collegata (che è più popolare di quanto si pensi). Dal momento che influenza tutte le distribuzioni Linux mantenute, ancora una volta, non è un problema specifico per la distribuzione.
mikemaccana,

2

ifconfignon fa parte di Linux. È uno strumento disponibile nella maggior parte delle distribuzioni basate su Linux. Dovrai fare riferimento alla documentazione specifica per la distribuzione per scoprire perché è obsoleta.


4
Non fa parte di Linux ora . Ha iniziato la sua vita in Linux quando Linux ha utilizzato lo stack IP BSD (ifconfig fa parte dello stack IP BSD). Linux ha scritto il proprio stack IP intorno al 2001 e ha scritto il proprio ifconfig come parte di net-tools per la compatibilità.
Chris S,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.