ifconfig vs ip: Koja je razlika i poređenje mrežne konfiguracije


Distribucije zasnovane na Linuxu imaju skup naredbi koje pružaju način za konfiguriranje umrežavanja na jednostavan i moćan način putem komandne linije. Ovaj skup komandi je dostupan iz net-tools paketa koji je tu već duže vrijeme na gotovo svim distribucijama, a uključuje komande kao što su: ifconfig, route<, nameif, iwconfig, iptunnel, netstat, arp.

Ove naredbe su otprilike dovoljne za konfiguriranje mreže na način na koji bi svaki početnik ili stručnjak Linuxa poželio, ali zbog napretka u Linux kernelu u posljednjih nekoliko godina i neodrživosti ovog upakovanog skupa naredbi, one postaju zastarjele i sve moćnije pojavljuje se alternativa koja ima sposobnost da zameni sve ove komande.

Ova alternativa također postoji već neko vrijeme i mnogo je moćnija od bilo koje od ovih naredbi. Ostatak odjeljaka bi istaknuo ovu alternativu i uporedio je s jednom od naredbi iz paketa net-tools, tj. ifconfig.

ip – Zamjena za ifconfig

ifconfig postoji već duže vrijeme i mnogi ga još uvijek koriste za konfiguriranje, prikaz i kontrolu mrežnih sučelja, ali sada postoji nova alternativa na Linux distribucijama koja je mnogo moćnija od nje. Ova alternativa je ip komanda iz iproute2util paketa.

Iako ova komanda može izgledati malo složena na prvu stranicu, ali je mnogo šira u funkcionalnosti od ifconfig. Funkcionalno je organiziran na dva sloja mrežnog steka, tj. Layer 2 (Link Layer), Layer 3 (IP Layer >) i radi sve gore navedene komande iz paketa net-tools.

Dok ifconfig uglavnom prikazuje ili modifikuje interfejse sistema, ova komanda je sposobna za obavljanje sledećih zadataka:

  1. Prikaz ili izmjena svojstava interfejsa.
  2. Dodavanje, uklanjanje unosa ARP keša uz kreiranje novog statičkog ARP unosa za host.
  3. Prikaz MAC adresa povezanih sa svim interfejsima.
  4. Prikaz i modifikacija tabela rutiranja kernela.

Jedna od glavnih karakteristika koja ga odvaja od njegovog drevnog pandana ifconfig je da potonji koristi ioctl za mrežnu konfiguraciju, što je manje cijenjen način interakcije sa kernelom dok prvi koristi prednosti mehanizma netlink socketa za isti koji je mnogo fleksibilniji nasljednik ioctl-a za međukomunikaciju između kernela i korisničkog prostora koristeći rtnetlink (koji dodaje mogućnost manipulacije mrežnim okruženjem).

Sada možemo početi da ističemo karakteristike ifconfig i kako ih efikasno zamjenjuje naredba ip.

ip vs ifconfig komande

Sljedeći odjeljak ističe neke od ifconfig komandi i njihovu zamjenu pomoću ip komandi:

1. Prikaz svih mrežnih sučelja u Linuxu

Ovdje je jedna karakteristika koja razlikuje ip i ifconfig da dok ifconfig prikazuje samo omogućena sučelja, ip prikazuje sva sučelja bilo da su omogućena ili onemogućena.

ifconfig komanda
ifconfig

ip komanda
ip a

2. Dodavanje ili brisanje IP adrese u Linuxu

Naredba u nastavku dodjeljuje IP adresu 192.168.80.174 interfejsu eth0.

ifconfig – Dodaj/Ukloni IP adresu
ifconfig eth0 add 192.168.80.174

Sintaksa za dodavanje/uklanjanje interfejsa pomoću ifconfig komande:

ifconfig eth0 add 192.168.80.174
ifconfig eth0 del 192.168.80.174
ip – Dodaj/Ukloni IP adresu
ip a add 192.168.80.174 dev eth0

Sintaksa za dodavanje/uklanjanje interfejsa pomoću ip komande:

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

4. Dodajte MAC hardversku adresu mrežnom sučelju

Naredba ispod postavlja hardversku adresu za interfejs eth0 na vrijednost specificiranu u naredbi. Ovo se može provjeriti provjerom vrijednosti HWaddr u izlazu naredbe ifconfig.

ifconfig – Dodaj MAC adresu

Evo sintakse za dodavanje MAC adrese pomoću ifconfig komande:

ifconfig eth0 hw ether 00:0c:29:33:4e:aa
ip – Dodajte MAC adresu

Evo sintakse za dodavanje MAC adrese pomoću ip komande:

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

4. Podešavanje drugih konfiguracija mrežnog interfejsa

Osim postavljanja IP adrese ili Hardverske adrese, druge konfiguracije koje se mogu primijeniti na sučelje uključuju:

  1. MTU (maksimalna jedinica prijenosa)
  2. Multicast flag
  3. Dužina reda za prijenos
  4. Promiskuitetni mod
  5. Omogućite ili onemogućite sve multicast modove
ifconfig – Druge mrežne konfiguracije
ip – Druge mrežne konfiguracije

a. Postavite MTU vrijednost na 2000.

ifconfig eth0 mtu 2000
ip link set dev eth0 mtu 2000

b. Omogućite ili onemogućite multicast zastavicu.

ifconfig eth0 multicast
ip link set dev eth0 multicast on

c. Postavljanje dužine reda za prijenos.

ifconfig eth0 txqueuelen 1200
ip link set dev eth0 txqueuelen 1200

d. Omogućavanje ili onemogućavanje promiskuitetnog načina rada.

ifconfig eth0 promisc
ip link set dev eth0 promisc on

e. Omogućite ili onemogućite sve multicast modove.

ifconfig eth0 allmulti
ip link set dev eth0 allmulti on

5. Omogućavanje ili onemogućavanje mrežnog interfejsa

Naredbe u nastavku omogućavaju ili onemogućuju određeni mrežni interfejs.

ifconfig – Onemogući/Omogući mrežni interfejs

Naredba ispod onemogućava interfejs eth0 i potvrđuje se izlazom ifconfig koji podrazumevano prikazuje samo one interfejse koji su otvoreni.

ifconfig eth0 down

Da ponovo omogućite interfejs, samo zamijenite dolje sa gore.

ifconfig eth0 up
ip – Onemogući/Omogući mrežni interfejs

Naredba ispod ip je alternativa za ifconfig da onemogući određeni interfejs. Ovo se može potvrditi izlazom naredbe 'ip a' koja podrazumevano prikazuje sva sučelja, gore ili dolje, ali naglašava njihov status zajedno s opisom.

ip link set eth0 down

Da ponovo omogućite interfejs, samo zamijenite dolje sa gore.

ip link set eth0 up

6. Omogućite ili onemogućite upotrebu ARP protokola

Naredbe u nastavku omogućavaju ili onemogućuju ARP protokol na određenom mrežnom sučelju.

ifconfig – Omogući/onemogući ARP protokol

Naredba omogućava korištenje ARP protokola sa interfejsom eth0. Da biste onemogućili ovu opciju, samo zamijenite arp sa -arp.

ifconfig eth0 arp
ip – Omogući/onemogući ARP protokol

Ova komanda je ip alternativa za omogućavanje ARP-a za interfejs eth0. Da onemogućite, samo zamijenite uključeno sa isključeno.

ip link set dev eth0 arp on

Zaključak

Stoga smo istakli karakteristike naredbe ifconfig i kako se one mogu uraditi korištenjem naredbe ip. Trenutno, Linux distribucije pružaju korisniku obje komande tako da ih može koristiti u skladu sa svojim potrebama. Dakle, koja je naredba po vama zgodna i koju biste radije koristili? Navedite ovo u svojim komentarima.

Ako želite saznati više o ove dvije naredbe, trebali biste proći kroz naše prethodne članke koji pokazuju neke praktične primjere ifconfig i ip naredbe na detaljniji način.

Ne propustite: 15 “ifconfig” primjera za konfiguraciju mrežnog sučelja u Linuxu

Ne propustite: 10 primjera naredbi “ip” za konfiguriranje mrežnog sučelja u Linuxu