Porady Admina: ifconfig
Ostatnia aktualizacja: 15 lutego 2024, 12:43
W dzisiejszym wpisie z cyklu Porady Admina zajmę się poleceniem ifconfig.
Polecenie ifconfig służy do konfigurowania lub przeglądania konfiguracji interfejsu sieciowego.
W niektórych systemach Linux polecenie ifconfig zostało zastąpione przez polecenie ip.
ifconfig oznacza „interface configuration”.
ifconfig jest częścią pakietu net-tools.
Opcje
-a : wyświetla wszystkie aktualnie dostępne interfejsy, nawet jeśli są wyłączone
-s : wyświetla krótką listę (np. netstat -i)
-v : będzie bardziej szczegółowe w przypadku niektórych warunków błędu
– interface : Nazwa interfejsu. Zwykle jest to nazwa sterownika, po którym następuje numer jednostki, np. eth0 dla pierwszego interfejsu Ethernet. Jeśli Twoje jądro obsługuje interfejsy aliasów, możesz je określić za pomocą składni takiej jak eth0:0 dla pierwszego aliasu eth0. Możesz z nich skorzystać, aby przypisać więcej adresów. Aby usunąć interfejs aliasu, użyj ifconfig eth0:0 down. Notatka: dla każdego zakresu (tj. tej samej sieci z kombinacją adresu/maski sieci) usuwane są wszystkie aliasy, jeśli usuniesz pierwszy (podstawowy).
– up : Flaga ta powoduje aktywację interfejsu. Jest to domyślnie określone, jeśli jest to adres przypisany do interfejsu; możesz stłumić to zachowanie podczas korzystania z interfejsu aliasu dodając – do aliasu (np. eth0:0-). Jest on również tłumiony podczas korzystania z protokołu IPv4 0.0.0.0, ponieważ jądro będzie go używać do niejawnego usuwania interfejsów aliasów.
– down : Ta flaga powoduje zamknięcie sterownika tego interfejsu.
[-]arp : Włącz lub wyłącz użycie protokołu ARP na tym interfejsie.
[-]promisc : Włącz lub wyłącz tryb rozwiązły interfejsu. Jeśli ta opcja jest zaznaczona, wszystkie pakiety na sieć zostaną odebrane przez interfejs.
[-]allmulti : Włącz lub wyłącz tryb all-multicast. Jeśli ta opcja jest zaznaczona, wszystkie pakiety multiemisji w sieci zostaną odebrane przez interfejs.
mtu N : Ten parametr ustawia maksymalną jednostkę transferu (MTU) interfejsu.
dstaddr addr : Ustaw zdalny adres IP dla łącza punkt-punkt (takiego jak PPP). To słowo kluczowe jest teraz przestarzałe; zamiast tego użyj słowa kluczowego pointopoint.
netmask addr : Ustaw maskę sieci IP dla tego interfejsu. Ta wartość domyślnie odpowiada zwykłej klasie A, B lub C maska sieci (wyprowadzona z adresu IP interfejsu), ale można ją ustawić na dowolną wartość.
add addr/prefixlen : Dodaj adres IPv6 do interfejsu.
del addr/prefixlen : Usuń adres IPv6 z interfejsu.
tunnel ::aa.bb.cc.dd : Utwórz nowe urządzenie SIT (IPv6-in-IPv4), tunelując do podanego miejsca docelowego.
irq addr : Ustaw linię przerwań używaną przez to urządzenie. Nie wszystkie urządzenia mogą dynamicznie zmieniać swoje ustawienie IRQ.
io_addr addr : Ustaw adres początkowy w przestrzeni we/wy dla tego urządzenia.
mem_start addr : Ustaw adres początkowy pamięci współdzielonej używanej przez to urządzenie. Tylko kilka urządzeń tego potrzebuje.
media type : Ustaw port fizyczny lub typ nośnika, który będzie używany przez urządzenie. Nie wszystkie urządzenia mogą zmienić to ustawienie oraz te, które mogą różnić się obsługiwanymi wartościami.
[-]broadcast [addr] : Jeśli podano argument adresu, ustaw adres rozgłoszeniowy protokołu dla tego interfejsu. W przeciwnym razie ustaw (lub wyczyść) flagę IFF_BROADCAST dla interfejsu.
[-]pointopoint [addr] : To słowo kluczowe włącza tryb punkt-punkt interfejsu, co oznacza, że jest to interfejs bezpośredniego połączenia między dwiema maszynami, gdzie nikt inny go nie słucha. Jeżeli podany jest również argument adresu, ustaw adres protokołu drugiej strony linkującej, podobnie jak robi to przestarzałe słowo kluczowe dstaddr.
hw class address : Ustaw adres sprzętowy tego interfejsu, jeśli sterownik urządzenia obsługuje tę operację.
multicast : Ustaw flagę multiemisji w interfejsie. Zwykle nie powinno to być potrzebne jako sterowniki samodzielnie ustawić flagę.
address : Adres IP, który ma zostać przypisany do tego interfejsu.
txqueuelen length : Ustaw długość kolejki transmisji urządzenia. Przydatne jest ustawienie małych wartości w przypadku wolniejszych urządzeń z dużym opóźnieniem (łącza modemowe, ISDN), aby zapobiec nadmiernemu zakłócaniu szybkiego przesyłania masowego ruchu interaktywnego, takiego jak telnet.
name newname : Zmień nazwę tego interfejsu na newname. Najpierw należy wyłączyć interfejs.
Składnia
ifconfig
Skrócony przykładowy wynik:
eth0 Link encap:Ethernet
lo Link encap:Local Loopback
wlan0 Link encap:Ethernet
– eth0 jest pierwszym interfejsem Ethernet. Ten typ interfejsu to zazwyczaj karta sieciowa podłączona do sieci kablem kategorii 5.
– lo to interfejs pętli zwrotnej. Jest to specjalny interfejs sieciowy, za pomocą którego system komunikuje się sam ze sobą.
– wlan0 to nazwa pierwszego interfejsu sieci bezprzewodowej w systemie.
Przykłady
Przeglądanie konfiguracji wszystkich interfejsów
ifconfig -a
Przeglądanie konfiguracji konkretnego interfejsu, wlan0
ifconfig wlan0
Włączanie i wyłączanie interfejsu. Aby włączyć nieaktywny interfejs, podaj ifconfig nazwę interfejsu, po której następuje słowo kluczowe np. wlan0
sudo ifconfig wlan0 up
Aby wyłączyć wybrany intefejs, np. wlan0
sudo ifconfig wlan0 down
ifconfig można użyć do ręcznego skonfigurowania interfejsu sieciowego. Zwykle jest to niepotrzebne, ponieważ konfiguracja ta jest często obsługiwana przez skrypt podczas uruchamiania systemu.
Aby przypisać statyczny adres IP do interfejsu, określ nazwę interfejsu i adres IP. Przykładowo, aby przypisać adres IP 66.77.888.11 do interfejsu wlan0
sudo ifconfig wlan0 66.77.888.11
Aby przypisać maskę sieci do interfejsu, na przykład, aby skonfigurować interfejs eth1 do używania maski sieci 255.255.255.0
sudo ifconfig eth1 netmask 255.255.255.0
Aby przypisać adres rozgłoszeniowy do interfejsu, na przykład, aby skonfigurować interfejs wlan1 do używania adresu rozgłoszeniowego 188.88.88.88
sudo ifconfig wlan1 broadcast 188.88.88.88
Więcej informacji o ifconfig uzyskasz poleceniami:
man ifconfig
sudo ifconfig --help