ip

Wyświetla i konfiguruje interfejsy sieciowe, adresy, trasy i sąsiadów (następca ifconfig/route).

ip to scyzoryk do sieci w Linuksie z pakietu iproute2. Jednym poleceniem podejrzysz i ustawisz interfejsy, adresy IP, trasy routingu oraz tablicę sąsiadów (ARP/NDP). To następca starych ifconfig, route i arp, których na nowoczesnych dystrybucjach często już nawet nie ma. Cała filozofia opiera się na obiektach: mówisz czym chcesz zarządzać (addr, link, route, neigh), a potem co z tym zrobić (show, add, del).

Składnia i najważniejsze opcje

Ogólny schemat wygląda tak: ip [OPCJE] OBIEKT POLECENIE [PARAMETRY]

  • addr (skrót a) — zarządzanie adresami IP przypisanymi do interfejsów.
  • link (skrót l) — stan i konfiguracja warstwy łącza: włączanie/wyłączanie kart, MTU, MAC.
  • route (skrót r) — tablica routingu, czyli gdzie pakiety mają iść.
  • neigh (skrót n) — tablica sąsiadów (odpowiednik ARP).
  • -br — wersja skrócona, jedna linia na interfejs; idealna do szybkiego rzutu oka i skryptów.
  • -j — wyjście w formacie JSON, do parsowania np. przez jq.
  • -s — statystyki (pakiety, błędy); podany dwa razy (-s -s) pokazuje więcej liczników.
  • -4 / -6 / -c — filtruj tylko IPv4, tylko IPv6 lub włącz kolorowanie wyniku.

Przykłady użycia

  • ip addr show — pokazuje wszystkie interfejsy wraz z przypisanymi adresami; najczęstsza komenda na start.
  • ip -br -c addr — zwięzła, kolorowa lista interfejsów i ich IP; tu zwykle szukasz swojego adresu.
  • ip addr add 192.168.1.50/24 dev eth0 — dokleja adres IP do karty eth0 (ulatnia się po restarcie).
  • ip route — wyświetla tablicę routingu; szukaj wpisu default via ..., to twoja brama.
  • ip route add default via 192.168.1.1 — ustawia bramę domyślną dla całego ruchu wychodzącego.
  • ip link set eth0 up — podnosi (aktywuje) interfejs; down robi odwrotnie.

Częste błędy i pułapki

Najboleśniejsza pułapka: zmiany przez ip są ulotne. Po reboocie albo restarcie usługi sieciowej znikają. Trwałą konfigurację trzymasz w NetworkManagerze (nmcli), netplan (Ubuntu) albo plikach /etc/network/interfaces — zależnie od dystrybucji. ip świetnie nadaje się do testów i diagnostyki, gorzej do produkcji „na stałe”.

Druga sprawa: większość operacji add/del/set wymaga roota, więc szykuj sudo. Uważaj też z ip link set ... down i zmianą trasy domyślnej, gdy pracujesz przez SSH — potrafisz odciąć sam siebie od maszyny. I nie myl ip addr (adresy IP) z ip link (warstwa łącza, MAC, MTU) — to częsta wpadka juniorów.

Powiązane komendy: ifconfig, route, arp, nmcli, ss, ping, traceroute, ethtool.