ifconfig vs ip: Mikä on ero ja verrataan verkkoasetuksia


Linux-pohjaisissa jakeluissa on esillä joukko komentoja, jotka tarjoavat mahdollisuuden määrittää verkko helposti ja tehokkaasti komentorivin kautta. Nämä komentosarjat ovat saatavana net-tools-paketista, joka on ollut siellä pitkään melkein kaikissa jakeluissa, ja se sisältää komennot, kuten: ifconfig, reitti, nameif, iwconfig, iptunnel, netstat, arp.

Nämä komennot ovat melkein riittäviä verkon konfiguroinnissa tavalla, jonka kukaan aloittelija tai asiantuntija haluaa, mutta johtuen Linux-ytimen kehityksestä viime vuosina ja siitä, että tätä pakattua komentojoukkoa ei voida ylläpitää, ne ovat vanhentuneita ja tehokkaampia vaihtoehto, jolla on kyky korvata kaikki nämä komennot, on syntymässä.

Tämä vaihtoehto on ollut siellä jo jonkin aikaa ja on paljon tehokkaampi kuin mikään näistä komennoista. Loput osiot korostavat tätä vaihtoehtoa ja vertaavat sitä johonkin net-tools-paketin komennosta eli ifconfig.

ip - Korvaus ifconfigille

ifconfig on ollut siellä pitkään ja monet käyttävät sitä edelleen verkkoliitäntöjen määrittämiseen, näyttämiseen ja ohjaamiseen, mutta Linux-jakelussa on nyt uusi vaihtoehto, joka on paljon tehokkaampi kuin se. Tämä vaihtoehto on ip -komento iproute2util-paketista.

Vaikka tämä komento saattaa tuntua hieman monimutkaiselta aluksi, mutta se on paljon laajempi toiminnallisuus kuin ifconfig. Se on toiminnallisesti järjestetty kahdelle Networking Stack -kerrokselle eli kerrokselle 2 (linkkikerros), kerrokselle 3 (IP-kerros) ja se toimii kaikkien yllä mainittujen komentojen kanssa verkkotyökalupaketista.

Vaikka ifconfig näyttää enimmäkseen järjestelmän käyttöliittymiä, tämä komento pystyy suorittamaan seuraavat tehtävät:

  1. Käyttöliittymän ominaisuuksien näyttäminen tai muokkaaminen.
  2. ARP-välimuistimerkintöjen lisääminen ja poistaminen luomalla uusi staattinen ARP-merkintä isännälle.
  3. Näyttää kaikkiin liitäntöihin liittyvät MAC-osoitteet.
  4. Ytimen reititystaulukoiden näyttäminen ja muokkaaminen.

Yksi tärkeimmistä kohokohdista, joka erottaa sen muinaisesta vastaavastaan ifconfigista, on se, että jälkimmäinen käyttää ioctl: tä verkon määritykseen, mikä on vähemmän arvostettu tapa vuorovaikutuksessa ytimen kanssa, kun taas edellinen hyödyntää netlink-liitäntämekanismia samalla, mikä on paljon joustavampi seuraaja ioctl: stä ytimen ja käyttäjän tilan väliseen viestintään rtnetlink-tekniikkaa käyttäen (mikä lisää verkkoympäristön käsittelymahdollisuuden).

Voimme nyt alkaa korostaa ifconfigin ominaisuuksia ja miten ne korvataan tehokkaasti ip-komennolla.

ip vs ifconfig -komennot

Seuraava osa korostaa joitain ifconfig-komentoja ja niiden korvaamista ip-komentojen avulla:

Tässä erottava piirre ip: n ja ifconfigin välillä on se, että vaikka ifconfig näyttää vain käytössä olevat rajapinnat, ip näyttää kaikki käyttöliittymät riippumatta siitä, ovatko ne käytössä vai eivät.

$ ifconfig
$ ip a

Seuraava komento määrittää IP-osoitteen 192.168.80.174 käyttöliittymälle eth0 .

# ifconfig eth0 add 192.168.80.174

Syntaksi käyttöliittymän lisäämiseen/poistamiseen ifconfig-komennolla:

# ifconfig eth0 add 192.168.80.174
# ifconfig eth0 del 192.168.80.174
# ip a add 192.168.80.174 dev eth0

Syntaksi käyttöliittymän lisäämiseen/poistamiseen ip-komennolla:

# ip a add 192.168.80.174 dev eth0
# ip a del 192.168.80.174 dev eth0

Alla oleva komento asettaa liitännän eth0 laitteisto-osoitteen komennossa määritettyyn arvoon. Tämä voidaan tarkistaa tarkistamalla HWaddr -arvo ifconfig-komennon lähdössä.

Tässä syntaksi MAC-osoitteen lisäämiseen ifconfig-komennolla:

# ifconfig eth0 hw ether 00:0c:29:33:4e:aa

Tässä syntaksi MAC-osoitteen lisäämiseen ip-komennolla:

# ip link set dev eth0 address 00:0c:29:33:4e:aa

IP-osoitteen tai laitteisto-osoitteen asettamisen lisäksi muita asetuksia, joita voidaan käyttää käyttöliittymässä, ovat:

  1. MTU (suurin siirtoyksikkö)
  2. Monilähetyslippu
  3. Lähetysjonon pituus
  4. Näkyvä tila
  5. Ota käyttöön tai poista käytöstä kaikki ryhmälähetystila

# ifconfig eth0 mtu 2000
# ip link set dev eth0 mtu 2000
# ifconfig eth0 multicast
# ip link set dev eth0 multicast on
# ifconfig eth0 txqueuelen 1200
# ip link set dev eth0 txqueuelen 1200
# ifconfig eth0 promisc
# ip link set dev eth0 promisc on
# ifconfig eth0 allmulti
# ip link set dev eth0 allmulti on

Alla olevat komennot ottavat käyttöön tai poistavat tietyn verkkoliitännän käytöstä.

Alla oleva komento poistaa käyttöliittymän eth0 käytöstä, ja se tarkistetaan ifconfig-lähdöllä, joka näyttää oletusarvoisesti vain ne käyttöliittymät, jotka ovat päällä.

# ifconfig eth0 down

Ota käyttöliittymä uudelleen käyttöön korvaamalla se alaspäin ylöspäin.

# ifconfig eth0 up

Alla oleva ip-komento on vaihtoehto, jos ifconfig poistaa tietyn käyttöliittymän. Tämä voidaan varmistaa ip a -komennon avulla, joka näyttää oletusarvoisesti kaikki rajapinnat joko ylös tai alas, mutta korostaa niiden tilan kuvauksen kanssa.

# ip link set eth0 down

Ota käyttöliittymä uudelleen käyttöön korvaamalla vain alaspäin ylös.

# ip link set eth0 up

Alla olevat komennot ottavat ARP-protokollan käyttöön tai poistavat sen käytöstä tietyssä verkkoliitännässä.

Komento mahdollistaa ARP-protokollan käytön rajapinnan eth0 kanssa. Voit poistaa tämän vaihtoehdon käytöstä korvaamalla arp: llä -arp .

# ifconfig eth0 arp

Tämä komento on ip-vaihtoehto ARP: n ottamiseksi käyttöön liitännälle eth0. Poista käytöstä korvaamalla vain tilalla off.

# ip link set dev eth0 arp on

Johtopäätös

Siksi olemme korostaneet ifconfig-komennon ominaisuuksia ja kuinka ne voidaan tehdä ip-komennolla. Tällä hetkellä Linux-jakelut antavat käyttäjälle molemmat komennot, jotta hän voi käyttää kätevästi. Joten mikä komento on mielestäsi kätevä, jota haluat käyttää? Mainitse tämä kommenteissasi.

Jos haluat oppia lisää näistä kahdesta komennosta, sinun tulee käydä läpi edelliset artikkelit, joissa on käytännön esimerkkejä ifconfig- ja ip-komennoista yksityiskohtaisemmin.