ifconfig – polecenie konfigurujące interfejsy sieciowe w systemach Unix i Linux.
ifconfig po raz pierwszy pojawił się w systemach uniksowych jako część pakietu narzędzi TCP/IP w 4.2BSD.
Skrypty startowe systemu operacyjnego wykorzystują ifconfig do włączania interfejsów sieciowych podczas uruchomienia oraz wyłączania w trakcie zamykania.
We współczesnych dystrybucjach Linuksa ifconfig jest narzędziem przestarzałym – nie współpracuje w pełni z nowszymi wersjami jądra[1]. Z tej racji został wyparty z konfiguracji sieci przez program ip z pakietu Iproute2.
Użytkowanie programu
Zwykle prawo do wykorzystania polecenia ifconfig ma tylko superużytkownik (root).
Jeśli argumenty nie zostaną podane, to polecenie ifconfig wyświetla status aktywnych interfejsów sieciowych:
brama:~# ifconfig
Kiedy pojawi się pojedynczy argument interface, to wyświetlany jest status interfejsu przypisanego do tej nazwy (np. eth0, ppp0):
brama:~# ifconfig eth0
Jeżeli wykorzystana zostanie opcja -a, to wyświetlony zostanie status wszystkich interfejsów a nawet tych, które są nieaktywne:
Kolejne sekcje opisują kolejne interfejsy sieciowe. Każdy interfejs posiada pewne opcje wspólne związane z protokołami (np. adres IP) oraz opcje specyficzne związane z danym rodzajem urządzenia sieciowego (np. adres MAC). Większość interfejsów wiąże się z określonymi urządzeniami (karta sieciowa, modem, itp.). Niektóre z nich są całkowicie wirtualne, co znaczy, że ich istnienie sprowadza się wyłącznie do pracy odpowiedniego modułu programowego w jądrze systemu. Przykładem może być tutaj urządzenie loopback, które pozwala na komunikację sieciową wewnątrz pojedynczego komputera pozbawionego Internetu.
Znaczenie poszczególnych informacji:
eth0 Link encap:Ethernet HWaddr 00:C0:DF:01:AE:3E – pierwsza karta sieciowa Ethernet, adres MAC,
UP BROADCAST RUNNING MULTICAST – dodatkowe opcje interfejsu,
MTU:1500 Metric:1 – (ang. max transfer unit) maksymalny rozmiar pakietu,
RX packets:169989 errors:0 dropped:0 overruns:0 frame:0 – liczba odebranych, błędnych, pominiętych (np. na skutek braku pamięci) i zgubionych (ze względu na przeciążenie) pakietów.
Interrupt:10 Base address:0x2000 – przerwanie oraz zakres pamięci wykorzystywany przez szynę PCI,
lo Link encap:Local Loopback – urządzenie loopback,
... – - jak wyżej,
ppp0 Link encap:Point-to-Point Protocol – pierwsze połączenie PPP z ISP
inet addr:172.28.125.14 P-t-P:172.28.4.5 Mask:255.255.255.255 – adres IP przydzielony przez IPCP lokalnej maszynie, adres IP routera, przez który ISP łączy komputer z Internetem, maska sieciowa,
... – - jak wyżej.
W Linuksie na ogół nie używa się ifconfig do ręcznej konfiguracji sieci. Pomocą służą tu skrypty ifup, ifdown oraz pliki konfiguracyjne w katalogu: