IP

Program IP slouží ke konfiguraci síťových rozhraní počítače, routovacích tabulek a bůh ví čeho ještě, ale pro základní použití by měl následující krátký popis postačovat. Dříve se ke konfiguraci ip rozhraní používal program ifconfig, proto jeho základní syntax popisuji v závěru. 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ů:

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

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.

PS: V minulosti byl pro konfiguraci síťových rozhraní používán program ifconfig společně s programem route. Tyto programy se doposud vyskytují ve starších verzích některých distribucí. Základní syntax je zhruba takto:
# ifconfig eth0 192.168.0.1 network 255.255.255.0 up
a
# route add -net 192.168.1.0 network 255.255.255.0 dev eth0


V Praze 5.12.2005.

Poslední změna: 16.3.2007.





Úvod

Akce

Fotky

Kukbuk

Linux

Webka



Slackware
   Linux
Rohloff
BMW Motorcycles

Webová kamera Hlásná Třebaň

Kontakt