Ifconfig
Z Wikipedii
ifconfig to polecenie konfigurujące interfejsy sieciowe w systemach Unix i Linux.
Ifconfig jest używany do konfigurowania (a później opiekowania się) rezydującymi w jądrze interfejsami sieciowymi. Każde urządzenie wykorzystywane przez komputer do komunikacji sieciowej jest reprezentowane w systemie przez fragment jądra (moduł) udostępniający interfejs sieciowym. Niektóre jego funkcje są wspólne dla wszystkich interfejsów, a inne specyficzne dla danego typu urządzenia. Poprzez interfejs sieciowy znajdujący się w jądrze systemu możliwe jest obsługiwanie urządzeń z poziomu oprogramowania.
Odpowiednie skrypty wykorzystują ifconfig do "podniesienia" (uruchomienia) interfejsów sieciowych podczas bootowania systemu operacyjnego. Podczas dalszej pracy komputera polecenie to okazuje się potrzebne tylko przy debugowaniu lub tuningowaniu konfiguracji sieciowej. Podczas wyłączania systemu kolejny zestaw skryptów wykorzystuje ifconfig do "upuszczenia" (wyłączenia) interfejsów sieciowych. Dzieje się tak zawsze, jeżeli system jest prawidłowo zamykany.
[edytuj] Użytkowanie programu
Zwykle prawo do wykorzystania polecenia ifconfig ma tylko superużytkownik (root). Aby w konsoli przejść ze zwykłego użytkownika na roota należy wpisać polecenie su:
zwykly_uzytkownik@brama:~$ su
oraz podać hasło (jak zwykle w Uniksie i Linuksie symbole * nie pokazują się podczas wpisywania hasła). Przejście na roota sygnalizowane jest zmianą znaku zachęty w konsoli (#)
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 – ilość 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
Polecenia ifconfig nie używa się do ręcznej konfiguracji sieci. Pomocą służą tu skrypty ifup, ifdown oraz pliki konfiguracyjne w katalogu:
/etc/network
lub
/etc/sysconfig/network