|
||||||||||||||||||||||||||||||||||||||||||||||||
Menu
Distributions (131)
Software (10844)
|
Linux v příkazech - konfigurace sítěPočítačové sítě nabývají stále většího významu. Pojďme se tedy
podívat, jak si můžeme nakonfigurovat vlastní síťové zařízení.
Little known fact about Middle Earth: The Hobbits had a very sophisticated computer network! It was a Tolkien Ring... NICAby byla komunikace s ostatními zařízeními vůbec možná, je obvykle nutné mít v počítači nějaké síťové zařízení. V našem případě se bude jednat o libovolnou síťovou kartu (NIC – Network Interface Card). Síťové karty jsou linuxovým jádrem obvykle dobře podporované, takže předpokládám, že budeme konfigurovat kartu, kterou systém "vidí" a má pro ni zaveden funkční ovladač. AdresováníVe všech komunikačních protokolem bývá nejdůležitější způsob adresování. V tomto článku se budeme bavit o protokolu TCP/IP a tam jsou v podstatě dvě možnosti:
Statická konfigurace znamená, že IP adresa (a ostatní potřebné údaje) je přiřazena stroji více méně manuálně a daný počítač ji bude mít stále stejnou. Při správě více počítačů je ovšem efektivnější dynamická konfigurace – klient se nakonfiguruje tak, aby získával (půjčoval si) potřebné údaje přes DHCP (Dynamic Host Configuration Protocol)) nebo BOOTP (Bootstrap Protocol), takže v případě potřeby můžete změnit některé údaje jednoduše (a pouze) na serveru. (neberu v úvahu různé dirty tricks ;-)) Statická konfiguracePokud tedy počítač nezískává potřebné údaje přes DHCP, nezbývá než vše nastavit manuálně. Různé distribuce tuto činnost různě ulehčují a nabízí všemožné postupy a prostředky, jak této konfigurace dosáhnout. My si představíme pouze ten nejzákladnější postup prakticky bez použití dalších "pomocníků". Nastavení hostnameKaždý počítač obvykle mívá nějaké jméno, inspiraci, jak toho jméno zvolit, můžete najít v RFC 1178, RFC 2100 a nebo v článku na root.cz (především diskuze je dost inspirativní).
Jestliže tedy už máme zvolené jméno, použijeme příkaz
root@localhost:~# hostname hippo root@localhost:~#
Název se v tomto případě okamžitě nezměnil, protože je nutné, aby si změny
všimly jednotlivé procesy (konkrétně shell), např. resetováním služby. Vhodné také
je uložit název počítače do konfiguračního souboru, protože po restartu
počítače by bylo hostname opět původní. Jak se název počítače při startu
nastavuje, a které (resp. a jestli) používá konfigurační soubory opět závisí na distribuci,
např. Debian používá soubor Nastavení IP adresy
Ať už máme IP adresu z privátního rozsahu
(viz RFC 1918)
nebo veřejnou, je potřeba ji zařízení přiřadit. V minulosti se na to používal
program root@hippo:~# ip addr add 192.168.0.2/24 brd + dev eth0 root@hippo:~# ip link set eth0 up
Tímto jsme zařízení eth0 (první síťová karta) přiřadili IP adresu 192.168.0.2
a síťovou masku 255.255.255.0 (v příkladu je zapsána úsporně – číslo
znamená počet jedniček v binárním zápisu). Následuje adresa pro broadcasty (pokud ji
nenapíšete přímo, ale pomocí Pokud chcete jednomu síťovému zařízení přiřadit více adres, můžete jednoduše opakovat první příkaz nahoře. Pokud vás několik adres na jedné NIC přestane bavit, jednoduše adresu zase smažte: root@hippo:~# ip addr add 192.168.1.2/24 brd + dev eth0 root@hippo:~# ip addr del 192.168.1.2/24 dev eth0 Pokud se vám defaultní název zařízení eth0 z nějakého důvodu nelíbí, není problém přiřadit tomuto zařízení jiný název:
root@hippo:~# ip link set eth0 name JmenoSitovky
Nastavení můžeme zkontrolovat zobrazením stavu zařízení: root@hippo~# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:04:75:c4:66:6f brd ff:ff:ff:ff:ff:ff inet 192.168.0.2/24 brd 192.168.0.255 scope global eth0 Deaktivace rozhraní se dá provést takto:
root@hippo:~# ip link set eth0 down
V případě, že chcete zařízení nakonfigurovat znovu, měli byste ho vyčistit příkazem:
root@hippo:~# ip addr flush dev eth0
Nastavení směrování
Další krok v naší konfiguraci je nastavení cest, kterými se mají packety
ubírat k cíli. Protože je naše síť jednoduchá, nastavíme pouze implicitní
směrování na gateway. Opět nepoužijeme zastaralý příkaz
root@hippo:~# ip route add default via 192.168.0.254
Vlastní routovací tabulku si můžeme nechat zobrazit příkazem: root@hippo:~# ip route list 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.2 127.0.0.0/8 dev lo scope link default via 192.168.0.254 dev eth0
V praxi se dá také použít zkráceně ekvivalentní Nastavení DNSProtože by bylo opravdu nepraktické a nepohodlné pamatovat si jednotlivé IP adresy serverů, existuje možnost přiřazení číselným adresám jejich jmenný ekvivalent (a v případě potřeby naopak :o)).
Poměrně jednoduchý způsob je ukládání jmen do souboru
Typický příklad souboru
127.0.0.1 hippo localhost
192.168.0.254 gw
Kvůli výše zmíněné nepraktičnosti a složitosti existují místo distribuce seznamu
adres servery DNS (Domain Name System), které tato jména
uchovávají a poskytují odpovědi na dotazy. V linuxu adresu DNS nastavíme do
souboru Uvést si můžeme okomentovaný příklad: search jmeno-domeny.cz # název domény, kterou chcete prohledávat nameserver 192.168.100.254 # primární DNS nameserver 192.168.100.252 # sekundární DNS nameserver 172.16.20.254 # záložních DNS můžete mít definováno i více
Použití těchto dvou souborů ovšem závisí na nastavení, konkrétně na Dynamická konfiguraceJak už bylo řešeno výše, dynamická konfigurace klientů může významným způsobem zjednodušit a zefektivnit správu větší sítě. V následujících příkladech se podíváme na konfiguraci klientů přes DHCP (více o DHCP viz RFC 2131).
Samotných klientů existuje více, my se podíváme na nejběžnější programy –
Programy na získání potřebných údajů pro konfiguraci sítě se obvykle používají v distribučních startovacích skriptech – my se ovšem podíváme pouze na základní použití bez pomoci různých skriptů závislých na zvolené distribuci.
Nejprve se tedy podíváme na program Podívejme se ale na okomentovaný příklad konfiguračního souboru: timeout 60; # timeout :o), klient bude zkoušet navazovat komunikaci 60s retry 60; # pokud neuspěje, po 60 sekundách to zkusí znovu reboot 10; # po 10 sekundách klient vzdá použití staré adresy a # začne nově hledat reject 192.168.0.3; # odmítne danou IP interface "eth0" { # nastavení pro zařízení eth0 send host-name "hippo"; # send znamená, že je serveru poslána # daná položka s danou hodnotou, # více viz man dhcp-options send dhcp-client-identifier 00:0c:29:05:24:51; send dhcp-lease-time 3600; supersede domain-name "moje-domena.cz"; # pouzije domain-name, at # server předá cokoli prepend domain-name-servers 127.0.0.1; # toto se pouzije do doby, # než server dodá # odpovídající hodnotu request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers; # požadované údaje (DHCP server # toto posílá implicitně) require subnet-mask, domain-name-servers, host-name; # údaje, které server musí # zaslat, aby byl požadavek # uznán platným script "/sbin/dhclient-script"; # cesta ke konfiguračnímu skriptu }
Další program, který lze použít je root@hippo~# pump -i eth0 root@hippo~# pump -i eth0 status Device eth0 IP: 192.168.0.2 Netmask: 255.255.255.0 Broadcast: 192.168.0.255 Network: 192.168.0.0 Boot server 192.168.0.254 Next server 192.168.0.254 Gateway: 192.168.0.254 Domain: localdomain Nameservers: 192.168.100.254 Renewal time: Fri Jul 23 19:32:16 2004 Expiration time: Fri Jul 23 19:47:16 2004
Z výpisu je patrné, jaká je funkce příkazu
Program
domainsearch "my.own.org own.org at.work.com" # nastaví vlastní domainsearch,
# ignoruje serverem
# vrácené hodnoty
retries 3 # pokusí se kontaktovat DHCP server celkem 4x
timeout 60 # po 60 sekundách vzdá komunikaci
device eth0 { # konfigurujeme zařízení eth0
nodns # zakáže modifikaci
Nezapomínejte na bezpečnostKdyž se bavíme o sítích, musím zdůraznit bezpečnost. Nezapomínejte, v jaké síti jste připojeni a co od ní můžete a nemusíte čekat. I když slouží stroj pouze na testování, měl by být adekvátně zabezpečen proti útoku zvenčí.
Zdroje
Za konzultace bych chtěl poděkovat Honzovi Houšťkovi.
|
Search Software
Search Google
|
||||||||||||||||||||||||||||||||||||||||||||||
©Pavel Kysilka - 2003-2024 | maillinuxsoft.cz | Design: www.megadesign.cz |