GNU/Linux >> Znalost Linux >  >> Linux

Rozdíl mezi příkazy 'ifconfig' a ​​'ip'

ifconfig je z net-tools , který dlouho nebyl schopen plně držet krok s linuxovým síťovým stackem. Také stále používá ioctl pro konfiguraci sítě, což je ošklivý a méně výkonný způsob interakce s jádrem.

Mnoho změn v síťovém kódu Linuxu a mnoho nových funkcí není přístupných pomocí net-tools :vícecestné směrování, směrování zásad (viz RPDB). route umožňuje dělat hloupé věci, jako je přidávání více tras do stejného cíle se stejnou metrikou.

Navíc:

  • ifconfig nehlásí pro některá zařízení správnou hardwarovou adresu.
  • Nelze konfigurovat ipip , sit , gre , l2tp atd. statické tunely v jádře.
  • Nemůžete vytvořit tun nebo tap zařízení.
  • Způsob přidávání více adres do daného rozhraní má také špatnou sémantiku.
  • Nemůžete také nakonfigurovat systém řízení provozu Linux pomocí net-tools buď.

Viz také ifconfig naštve.

UPRAVIT :Odstraněno tvrzení o net-tools vývoj ustává, že už jsem zapomněl, kde jsem se k tomuto příspěvku dostal. net-tools ' se pracuje od iproute2 byl vydán, i když jde většinou o opravy chyb a drobná vylepšení a funkce, jako je internacionalizace.


ifconfig je tradiční příkaz pro zobrazení informací o síťových rozhraních a změnu některých nastavení. Zejména to může přinést rozhraní nahoru a dolů. Existuje ve většině unixových variant.

V systému Linux ifconfig velení se dlouho nevyvíjelo. Na to, co dělá, je stále naprosto v pořádku. Pokud používáte ifconfig kvůli něčemu není důvod přestat.

Linux také poskytuje ip příkaz ze sady nástrojů iproute2. ip command kombinuje několik klasických příkazů a další, včetně ifconfig , route a arp . ip dokáže mnohem více než ifconfig . Na druhou stranu ip není vždy přítomen, zejména na vestavěných systémech (a nikdy na jiných unixových variantách než Linux).

Analýza ifconfig Výstup je trochu na hovno. Analýza ip Výstup je trochu na hovno. Neexistuje žádný vítěz.


Jen abych přidal pár kousků k odpovědi od pilony. Kolem roku 2005 byl představen nový mechanismus pro ovládání síťového zásobníku – netlink sockets.

Konfigurace síťového rozhraní iproute2 využívá tento plně duplexní mechanismus síťového soketu, zatímco ifconfig spoléhá na ioctl systémové volání. Zde jsou 2 hlavní články o motivaci netlinku a využití rtnetlinku.


Linux
  1. Naučte se rozdíl mezi příkazy „su“ a „su -“ v Linuxu

  2. linux rozdíl mezi sudo crontab -e a jen crontab -e

  3. Jaký je rozdíl mezi „vyhledat“ a „najít“ v Linuxu?

  1. Rozdíl mezi příkazy „su“ a „su -“ v Linuxu

  2. Rozdíl mezi příkazy zastavení a vypnutí?

  3. Rozdíl mezi Eot a Eof?

  1. Rozdíl mezi [0-9], [[:digit:]] a D?

  2. Linux – rozdíl mezi Pts a Tty?

  3. Rozdíl mezi absolutní a relativní cestou v Linuxu