IP – konfigurace síťových rozhraní

Program IP slouží ke konfiguraci síťových rozhraní počítače s operačním systémem Linux. V Slackware Linuxu je program ip obsažen v balíčku iproute2.Základní syntaxe příkazu se skládá z několika slov, kdy první je vždy ip. Druhé slovo upřesňuje co chceme provádět a může kromě jiných nabývat těchto tvarů:

  • link – zařízení,
  • address – adresa,
  • route – routování,
  • neighbour, rule, maddress, mroute, tunnel – další info v manuálu k programu ip.

Třetí slovo určuje akci, kterou budeme provádět a nabývá hodnot:

  • add – přidat,
  • delete – vymazat,
  • show (list) – ukázat, zobrazit,
  • set – nastavit,
  • flush – vyčistit, obvykle to znamená vymazat vše najednou.

Možná jsou tam i nějaké další, ale já jsem si vystačil s těmito. Celý příkaz může vypadat například takto:
# ip link show eth0
přičemž to „eth0“ tam být nemusí, v tom případě se zobrazí základní informace o všech síťových rozhraních v počítači.

Pro zobrazení podrobnějších informací se používá parametr -s. Příkaz pak vypadá takhle:
# ip -s link show eth0

To co se mi nejvíce líbí na programu ip je, že je možné jednotlivá slova v programu zkracovat, podobně jako v bashi. Takže příkaz
# ip address list
který vypíše ip adresy jednotlivých rozhraní, je možné zadat jednoduše takto:
# ip a l
– rychlé, účinné.

Příklady použití

1. Výpis seznamu síťových zařízení:
# ip link list nebo také
# ip link show a zkráceně by to vypadalo takto:
# ip l l popřípadě
# ip l sh

2. Zapnutí (vypnutí) zařízení sl0:
# ip link set sl0 down pro zapnutí zadáme
# ip link set sl0 up zkráceně to již uvádět nebudu, ponechám vám prostor k pokusům.

3. Výpis nastavení zařízení:
# ip address list eth0 vypíše nastavní eth0, nezadáme-li místo eth0 nic, vypíše nastavení všech zařízení.

4. Nastavení ip adresy:
# ip address add 192.168.100.1/24 brd + dev eth0 nastaví ip adresu 192.168.100.1 s maskou 255.255.255.0 (v binární formě 24) pro zařízení eth0, broadcast nastaví na implicitní hodnotu, v tomto případě tedy 255.255.255.255. Místo znaménka plus můžeme zadat jinou než implicitní hodnotu broadcastu, např.:
# ip address add 192.168.100.1/28 brd 192.168.100.68 dev eth0 nastaví ip adresu 192.168.100.1 s maskou 255.255.255.248 (binárně 28) a broadcast nastaví na 192.168.100.68, přestože správně má broadcast pro ip adresy z uvedeného rozsahu vymezeného maskou 255.255.255.248 hodnotu 192.168.100.15 .

5. Vymazání nastavení rozhraní:
# ip address flush eth0 vymaže nastavení rozhraní eth0. Tentokrát je nezbytné uvedení rozhraní, kterého se příkaz týká.

6. Nastavení hodnoty MTU:
Hodnota MTU udává maximální velikost paketů, které jsou po daném zařízení přenášeny. V určitých případech má smysl její změna. Zde to uvádím pouze jako příklad nastavení jednoho z mnoha dostupných parametrů rozhraní.
# ip link set eth0 mtu 1000 Nastavení MTU na hodnotů 1000B.

7. Zobrazení routovacích pravidel:
# ip route list vypíše routovací pravidla. Připomínám možnost zkrácení příkazu na:
# ip r l

8. Nastavení implicitní brány (gateway):
# ip route add default via 192.168.100.254 nastaví adresu výchozí brány na adresu 192.168.100.254 .

9. Zadání routovacího pravidla:
# ip route add 192.168.200.0 via 192.168.222.1 znamená, že vše pro síť 192.168.200.0 bude odesíláno přes vzdálené rozhraní 192.168.222.1 .

10. Změna MAC adresy:
# ip link set address 00:11:22:33:44:55 dev eth0 změní MAC adresu síťového rozhraní eth0 na zadanou hodnotu. Pozor! Kdo neví co dělá, ať tohle raději nedělá.

Nastavení síťového rozhraní krok za krokem

Mějme běžný PC s jedinou síťovou kartou připojený k firewallu s adresou 192.168.100.254. Adresa přidělená našemu počítači je 192.168.100.1 v třídě C, takže s maskou 255.255.255.0 – binárně 24. V podstatě nejběžnější stav, pominu-li DHCP. Síťové rozhraní je funkční a v systému je označeno jako eth0.

Nastavíme ip adresu, masku sítě a broadcast:
# ip address add 192.168.100.1/24 brd + dev eth0

Zapneme rozhraní:
# ip link set eth0 up

Nastavíme výchozí bránu:
# ip route add default via 192.168.100.254

A je to 🙂 Všechna takto provedená nastavení jsou platná do restartu stroje. Má-li být nastavení trvalé, použijte script netconfig (v Slackware Linuxu) nebo můžete přímo editovat soubor/etc/rc.d/rc.inet1.conf a /etc/hostname. Další informace o programu ip najdete v manuálu. Je to zajímavé čtení čítající několik desítek stran.

V Praze 5.12.2005.

Příspěvek byl publikován v rubrice Linux se štítky a jeho autorem je michal. Můžete si jeho odkaz uložit mezi své oblíbené záložky nebo ho sdílet s přáteli.