ifconfig
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
edytujZwykle 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:
brama:~# ifconfig -a
Jeżeli komputer posiada połączenie z Internetem poprzez protokół PPP oraz siecią lokalną opartą na Ethernecie, to efekt działania polecenia ifconfig przybiera następujący wygląd:
brama:~# ifconfig eth0 Link encap:Ethernet HWaddr 00:C0:DF:01:AE:3E inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:169989 errors:0 dropped:0 overruns:0 frame:0 TX packets:166048 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:22121102 (21.0 MiB) TX bytes:169321645 (161.4 MiB) Interrupt:10 Base address:0x2000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:12746 errors:0 dropped:0 overruns:0 frame:0 TX packets:12746 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2400551 (2.2 MiB) TX bytes:2400551 (2.2 MiB) ppp0 Link encap:Point-to-Point Protocol inet addr:172.28.125.14 P-t-P:172.28.4.5 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:11489 errors:231 dropped:0 overruns:0 frame:0 TX packets:10447 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:10934194 (10.4 MiB) TX bytes:892596 (871.6 KiB)
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,
- inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 – adres IP przypisany karcie, adres broadcast, maska sieciowa,
- 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.
- TX packets:166048 errors:0 dropped:0 overruns:0 carrier:0 – wysłane pakiety,
- collisions:0 txqueuelen:100 – kolizje, długość kolejki,
- RX bytes:22121102 (21.0 MiB) TX bytes:169321645 (161.4 MiB) – odebrane i wysłane bajty,
- 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
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:
/etc/network
lub
/etc/sysconfig/network
Zobacz też
edytujPrzypisy
edytuj- ↑ iproute2 - Introduction. Linux Foundation, 2009-11-19. [dostęp 2010-05-20]. (ang.).