Gdzie znajduje się oświadczenie o rezygnacji z ifconfig (w systemie Linux)?


41

Wiele osób twierdzi, że ifconfigpolecenie jest przestarzałe na korzyść tego ip(przynajmniej na Linuksie).

Jest to często wykorzystywane jako argumentacji przełączenia z ifconfigdo ip(patrz niektóre komentarz i odpowiedź powinienem zamknąć za pomocą ifconfig? ).

Gdzie możemy znaleźć oświadczenie na ten temat (tj. Gdzie jest powiedziane, że ifconfignie będzie obsługiwane w przyszłości)?


15
Na przykład strona podręcznika.
Michael Hampton

5
Bądź jak ja ... używaj ipconfig tak długo, jak możesz ... dopóki nie możesz . To samo dotyczy IPv6!
ewwhite

3
@ewwhite RHEL 7 domyślnie nawet nie instaluje narzędzi sieciowych. Powodzenia z tym.
Michael Hampton

4
@MichaelHampton Nie ma na mojej manstronie
Izkata

3
@ewwhite: Używasz systemu Windows?
slebetman

Odpowiedzi:


30

Oficjalne oświadczenie dotyczące planów na przestarzałych net-tools powstał na liście debian-devel na początku 2009 roku przez jednego z net-tools opiekunów. Zgodnie z ich stwierdzeniem od tego czasu narzędzia sieciowe prawie wcale nie były utrzymywane.

Luk Claes i ja, jako obecni opiekunowie narzędzi sieciowych, myśleliśmy o jego przyszłości. Net-tools od wielu lat stanowi kluczową część Debiana i innych dystrybucji opartych na Linuksie, ale pokazuje swój wiek.

Nie obsługuje wielu nowoczesnych funkcji jądra Linuksa, interfejs jest daleki od optymalnego i trudny w użyciu w automatyzacji, a także nie cieszył się dużą popularnością w ostatnich latach.

Z drugiej strony pakiet iproute, wprowadzony wokół linii jądra 2.2, ma zarówno znacznie lepszy i spójny interfejs, jest potężniejszy i ma prawie dziesięć lat, więc nikt nie powiedziałby, że nie został przetestowany.

Dlatego nasze plany obejmują całkowitą zamianę narzędzi sieciowych na iproute, być może prowadzącą do innych dystrybucji. Oczywiście większość ludzi i narzędzi używa i pamięta stary czcigodny interfejs, więc pierwszym krokiem byłoby napisanie opakowania, starając się być kompatybilnym z net-tools.

Jednocześnie uważamy, że większość pakietów korzystających z net-tools powinna zostać załatana, aby zamiast tego używać iproute, podczas gdy inne mogą przez pewien czas nadal używać wrapperów. Pakiet ifupdown jest oczywiście pierwszym kandydatem, ale wygląda na to, że wersja korzystająca z iproute jest dostępna w wersji eksperymentalnej od 2007 roku.

Pomysł pisania opakowań został ostatecznie porzucony jako niewykonalny i od tego czasu prawie wszystkie dystrybucje Linuksa przeszły na iproute2.


21

Strona man of ifconfigmówi:

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.

Arch Linux strona aktualności mówi:

Wycofanie narzędzi sieciowych

2011-06-08 - Tom Gundersen

W kwietniu minęła dziesiąta rocznica ostatniego wydania narzędzi sieciowych. Postanowiliśmy spojrzeć na to jako okazję do wycofania narzędzi sieciowych i zapewnienia alternatywnych i lepiej utrzymanych rozwiązań dla funkcjonalności narzędzi sieciowych. Ma to kilka konsekwencji, ale większość ludzi nie powinna tego zauważyć.

net-tools nadal będzie w repozytoriach, więc skrypty na nim oparte powinny nadal działać.

A Linux Foundation mówi to samo:

net-tools
Przez Linux Foundatio ... - 19 listopada 2009 - 10:23

networking

Przegląd

Zbiór programów, które tworzą podstawowy zestaw dystrybucji sieciowej NET-3 dla systemu operacyjnego Linux. Ten pakiet zawiera arp (8), nazwę hosta (1), ifconfig (8), ipmaddr, iptunnel, mii-tool (8), nameif (8), netstat (8), plipconfig (8), rarp (8), route (8) i slattach (8).

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

Należy pamiętać, że większość programów narzędzi sieciowych jest już nieaktualna:

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

Prawdopodobnie chcesz przejrzeć stronę iproute2.

Nie jestem jednak pewien, dlaczego Ubuntu nie zawiera informacji o wycofaniu.


Nie mówisz w jakiej dystrybucji. Ubuntu wciąż ma prawdziwą stronę podręcznika dla iconfig.
Andrew Schulman,

@AndrewSchulman, zaktualizowałem moją odpowiedź o link do strony man.
Pytanie Przepełnienie

1
Zostało jednak wycofane w górę. Nie wiadomo, kiedy to ostatecznie zadziała administracyjnie. Wydaje się, że niektóre aktualizacje podsystemu zajęły drugie miejsce w zmianach w domyślnym menedżerze okien (Unity) od kilku lat - co dziwne, dokładnie zero osób, których osobiście znam, w tym ja. Ale w końcu narzędzia sieciowe znikną; nic nie jest pisane przeciwko jego bibliotekom.
zxq9

@AndrewSchulman, wycofałem twoje stwierdzenie dotyczące Ubuntu, ponieważ nie to chciałem powiedzieć.
Pytanie Przepełnienie

10

Jest to problem związany z dystrybucją. net-tools jest przestarzałe przez prawie każdą większą dystrybucję (lub dystrybucję w górę), więc w efekcie cała społeczność przechodzi z ifconfig na ip - ale zmiana jest powolna, ponieważ niektóre dystrybucje mają bardzo długi okres trwałości (Na przykład RHEL).

Jest mniej prawdopodobne, że znajdziesz informację o wycofaniu niż pozycję w informacjach o wydaniu dużej wersji dystrybucji dla czegoś takiego jak: „W wersji FooLinux v2.0 narzędzia sieciowe zostały wycofane na korzyść polecenia„ ip ”. (Jeśli dystrybucja ma główne wydania, to znaczy. Gentoo i Arch są interesującymi wyjątkami, które radzą sobie z tego rodzaju sprawami poprzez ogłoszenia, które pojawiają się jako powiadomienia administratora w systemie, a czasem na ich stronach internetowych: https://www.archlinux.org/ news / deprecation-of-net-tools / .)

W trackerach błędów i planach deweloperów można znaleźć dużo gadania na temat (powolnego) upadku net-tools, a także:

Jest całkiem możliwe, że gdzieś dystrybucja może zdecydować się pozostać przy użyciu narzędzi sieciowych i przyjąć ich utrzymanie jako swój ulubiony projekt, ale jest to mało prawdopodobne, ponieważ końcowy wynik wymagałby znacznego wysiłku w utrzymaniu zestawu narzędzi, przeciwko którym nikt nie pisze innego oprogramowania. Oczywiście, chyba że ta dystrybucja jest własnością Apple. ;-)

Ostateczną lekcją jest przeczytanie informacji o wersji . Linux jest ruchomym celem, szczególnie jeśli zarządzasz więcej niż jedną dystrybucją jednocześnie, więc nie lekceważ dokumentów i nie zakładaj, że coś w wersji X jest takie samo jak w X-1.


1
@BrianKnoblauch Nie myśl o tym zbyt mocno. Istnieje złożona mieszanka powodów politycznych, biznesowych i (faktycznych) technicznych. Niektóre rzeczy zmieniają się tak szybko, a inne tak wolno. Musisz tylko zaakceptować, że co jakiś czas coś nas wysadzi i co jakiś czas zwracaj uwagę na informacje o wydaniu. :-)
zxq9

1
@R Maintenance zawsze zawiera co najmniej pakiet w stosunku do wszystkich podstawowych narzędzi, które zawiera twoja dystrybucja (co ostatecznie oznacza przenoszenie lub łatanie innych, niepowiązanych wcześniejszych pakietów, które również włączasz do pracy w ramach ograniczeń systemu, który zawiera nieaktualne rzeczy) - nie wspominając już o łataniu zabezpieczeń (rozważ rosnący dylemat Apple'a). Stare paczki z czasem stają się tarbabies, szczególnie te, których się najmniej spodziewasz. Rozróżnienie Bastiata między tym, co jest widziane, a tym, czego nie widać, jest tu pouczające peryferyjnie, podobnie jak twierdzenie Heinleina, że ​​„nie ma czegoś takiego jak darmowy lunch”.
zxq9

2
Jest to niepoprawne: każda dystrybucja korzystająca z aktualnie obsługiwanego jądra może mieć skonfigurowane interfejsy sieciowe, które nie działają z ifconfig .
mikemaccana

1
@ zxq9 Rozumiem, że wspomniałeś, że był to problem związany z dystrybucją. Pokazałem, że nie jest to kwestia specyficzna dla dystrybucji; wszystkie dystrybucje Linuksa używają tego samego jądra, ani jedna dystrybucja nie użyje jądra, które może wyrazić wszystkie swoje koncepcje sieciowe w taki sposób, że ifconfig poprawnie wyświetli skonfigurowane interfejsy sieciowe.
mikemaccana

1
@ zxq9 Wszystkie dystrybucje Linuksa używają jądra Linux, czyli tam, gdzie ioctlsą implementowane sieci . Źle zrozumiałeś i pomyślałeś, że mam na myśli wersję jądra. Wszystkie utrzymywane dystrybucje Linuksa (np. Używają jądra młodszego niż 10 lat) mają problem z tym, że ifconfig nie może reprezentować, np. Wirtualnego adresu IP w sieci VLAN na połączonej karcie sieciowej (która jest bardziej popularna niż myślisz). Ponieważ dotyczy wszystkich utrzymywanych dystrybucji Linuksa, po raz kolejny nie jest to problem specyficzny dla dystrybucji.
mikemaccana,

2

ifconfignie jest częścią Linuksa. To narzędzie jest dostępne w większości dystrybucji opartych na systemie Linux. Będziesz musiał zapoznać się z dokumentacją dotyczącą konkretnej dystrybucji, aby dowiedzieć się, dlaczego jest przestarzała.


4
To nie jest częścią Linux teraz . Życie zaczęło się w Linuksie, gdy Linux używał stosu BSD IP (ifconfig jest częścią stosu BSD IP). Linux napisał swój własny stos IP około 2001 roku i napisał własny ifconfig jako część net-tools dla kompatybilności.
Chris S
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.