Na routeru s Gentoo Linuxem zprovozněte DHCP server. Po otestování správnosti všechny konfigurační soubory zazálohujte do adresáře /home/zaloha_konfigurace/<vaše jméno>/. Na routeru budeme pracovat jako uživatel root, heslo je listicka.

Na routerech je anglická klávesnice a nejde přepnout na českou.

Návrh sítě

Pro síťovou kartu eth0 (ta bude připojena do internetu) použijte IPv4 adresu 10.200.1.x/24, kde x bude 51, 52, 53, 54 …​ , 61.

Pro síťovou kartu eth1 (to bude naše lokální síť) použijte IPv4 adresu z neveřejných IPv4 rozsahů podle vlastního uvážení, masku si zvolte pro jednoduchost 255.255.255.0 neboli prefix /24. Musíte se dohodnout a nesmíte použít stejnou síť mezi sebou.

rozsah použitelné adresy

10.0.0.0/8

10.0.0.1 až 10.255.255.254

172.16.0.0/12

172.16.0.1 až 172.31.255.254

192.168.0.0/16

192.168.0.1 až 192.168.255.254

Nesmíte použít sítě 10.200.1.0/24, 10.200.2.0/24, 10.1.0.0/24 a 10.5.0.0/24 protože jsou použity ve školní síti a dostali byste se do kolize.

Příkladem pro eth1 budiž síť 192.168.26.0/24

Příklad fyzického zapojení sítě (bílý RJ-45 je síť v učebně, žlutý RJ-45 je spojovací síť mezi routerem a testovacím počítačem)

IMG 2792

Místo žlutého kablíku RJ-45 si můžete představit celou velkou síť se switchem a kabeláží.

Příklad sítě, jak by to mohlo vypadat

sit s dhcp

Konfigurace sítě

Na Gentoo Linuxu se konfigurace sítě zapisuje do souboru /etc/conf.d/net. K editaci konfiguračních souborů můžete použít editor nano nebo editor Midnight Commanderu mcedit. mcedit se dá spustit buď z příkazové řádky mcedit jmeno_souboru, nebo tak, že stojíte na požadovaném souboru a zmáčkněte klávesu F4. V mceditu se ukládá klávesou F2, editor se opouští klávesou F10. Pokud něco zmastíte a chcete se vrátit, funguje Undo stisknutím klávesy Ctrl+u.

Příklad obsahu souboru /etc/conf.d/net
config_eth0="dhcp"                      (1)
config_eth1="192.168.26.1/24"
1 Konfigurace eth0 bude provedena centrálním dhcp serverem a nemusíte se s tím zabývat.

Ušetřil jsem vám práci, a na centrálním routeru gw jsem použil konfiguraci v dhcp pomocí host (viz zvýrazněné řádky):

Obsah souboru /etc/dhcpd.conf na centrálním routeru gw
# dhcpd.conf

authoritative;

default-lease-time 3600;
max-lease-time 86400;

option domain-name-servers 10.200.1.1;
option ntp-servers 10.200.1.1;

shared-network piskoviste {
    subnet 10.200.1.0 netmask 255.255.255.0 {
        range 10.200.1.100 10.200.1.254;
        option routers 10.200.1.1;
        option domain-name "pvc.lixis.cz";
        option domain-name-servers 10.200.1.1;
        option netbios-name-servers 10.200.1.1;
        option netbios-node-type 8;
        }
    subnet 10.200.2.0 netmask 255.255.255.0 {
        option routers 10.20.2.1;
        option domain-name "pvc.lixis.cz";
        option domain-name-servers 10.200.2.1;
        }
}
host gw1        { hardware ethernet 4c:5e:0c:73:c4:e7; fixed-address 10.200.1.2;  }
host rtr1       { hardware ethernet e0:d5:5e:a2:b7:c6; fixed-address 10.200.1.51; }
host rtr2       { hardware ethernet e0:d5:5e:a2:a5:15; fixed-address 10.200.1.52; }
host rtr3       { hardware ethernet e0:d5:5e:a2:b7:ac; fixed-address 10.200.1.53; }
host rtr4       { hardware ethernet e0:d5:5e:a2:b7:b4; fixed-address 10.200.1.54; }
host rtr5       { hardware ethernet e0:d5:5e:2a:a2:34; fixed-address 10.200.1.55; }
host rtr6       { hardware ethernet e0:d5:5e:a2:b6:96; fixed-address 10.200.1.56; }
host rtr7       { hardware ethernet e0:d5:5e:a2:b6:7b; fixed-address 10.200.1.57; }
host rtr8       { hardware ethernet e0:d5:5e:2a:bc:8f; fixed-address 10.200.1.58; }
host rtr9       { hardware ethernet e0:d5:5e:a2:b5:67; fixed-address 10.200.1.59; }
host rtr10      { hardware ethernet e0:d5:5e:2a:a2:80; fixed-address 10.200.1.60; }
host rtr11      { hardware ethernet e0:d5:5e:a2:b7:c8; fixed-address 10.200.1.61; }

Váš router dostane výchozí bránu 10.200.1.1 a ještě se nemusíte zabývat konfigurací dns, přepíše se vám korektně /etc/resolv.conf.

Pokud chceme restartovat ethernetová rozhraní, použijeme příkazy:

# /etc/init.d/net.eth0 restart
# /etc/init.d/net.eth1 restart
Po změně konfigurace ethernetu je nutné jej restartovat. Jinak se změna konfigurace neprojeví.

Po nastavení ethernetu mi nahlásíte jakou síť používáte, já vám přidám na páteřním routeru routu na tuto vaši síť. Bez toho vám to nebude fungovat.

Chceme-li nastavit, aby ethernetová rozhraní startovala po startu systému, použijeme:

# rc-update add net.eth0 default
# rc-update add net.eth1 default

Toto je obvykle na routeru nastaveno.

Konfigurace DHCP serveru

Konfigurace DHCP serveru je ve dvou souborech. Soubor s programem se jmenuje dhcpd.

Na kterém rozhraní má DHCP poslouchat se nastavuje v /etc/conf.d/dhcpd. DHCP server musí poslouchat na lokální síti (eth1) a nesmí poslouchat na internetu (eth0), protože by byl v kolizi s DHCP serverem na routeru v učebně. Proto musíte odkomentovat v souboru /etc/conf.d/dhcpd řádek DHCP_IFACE="" a upravit ho na DHCP_IFACE="eth1". Pokud to neuděláte bude dhcp server poslouchat na všech ethernetech.

Obsah souboru /etc/conf.d/dhcpd
DHCPD_IFACE="eth1"
Kdo nenastaví správně, aby jeho dhcp server poslouchal na eth1 a bude troubit na eth0 do sítě počítačové učebny, dostane kuli.

Vlastní konfigurace DHCP serveru je na Gentoo Linuxu v souboru /etc/dhcp/dhcpd.conf. Aby počítače připojené k lokální síti správně fungovaly, musí obdržet od DHCP serveru minimálně:

  • IPv4 adresu

  • masku sítě

  • výchozí bránu (default gateway)

  • IPv4 adresu rekurzivního DNS serveru

Minimální konfigurace pro DHCP server může vypadat třeba takto:

Obsah souboru /etc/dhcp/dhcpd.conf
# konfigurace DHCP serveru dhcpd.conf

authoritative;                                  (1)
default-lease-time  3600;                       (2)
max-lease-time      84600;                      (3)
option domain-name-servers  10.200.1.1;         (4)
option ntp-servers          10.200.1.1;         (5)

subnet  192.168.26.0 netmask 255.255.255.0 {    (6)
    range   192.168.26.10 192.168.26.100;       (7)
    option routers  192.168.26.1;               (8)
}
1 Server je autoritativní na dané síti.
2 Obvyklá délka zápůjčky IP adresy v sekundách.
3 Maximální délka zápujčky IP adresy v sekundách.
4 IP adresa DNS serveru.
5 IP adresa NTP serveru (nepovinné).
6 Konfigurace sítě (síťová adresa a maska)
7 Rozsah přidělovaných IP adres (volíte si podle vašich potřeb).
8 Výchozí brána (default gateway) pro klientské počítače. Je to vždy IP adresa vašeho routeru na straně klientů (192.168.26.1).

Spustit dhcp server můžeme příkazem:

# /etc/init.d/dhcpd start

podobně zastavit ho můžeme příkazem:

# /etc/init.d/dhcpd stop

Restartovat dhcp server můžeme příkazem:

# /etc/init.d/dhcpd restart
Po každé změně konfigurace musíme dhcp server restartovat. Jinak se změna konfigurace neprojeví.

Pokud chceme, aby nám DHCP server startoval automaticky po startu systému, uděláme to příkazem.

# rc-update add dhcpd default

Testování

Připojíme si kabelem naši pracovní stanici do eth1 routeru a musí nám fungovat internet.

Pokud nám nefunguje připojení do internetu, otestujeme z klientského počítače nejprve zda dostal počítač IP adresu z našeho rozsahu (192.168.26.x).

Dále otestujeme jeho výchozí bránu.

Test default gw
$ ping 192.168.26.1

Pokud to nefunguje, je špatně zapojený kabel nebo špatně nastavená default gw v konfiguraci DHCP serveru.

Test spojení do internetu
$ ping 10.200.1.1

Pravděpodobně nené povoleno předávání paketů na routeru. Zkontrolujte, zda je v souboru /etc/sysctl.conf nastaveno:

/etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1

Pokud to tam není, je potřeba to do souboru /etc/sysctl.conf doplnit a restartovat celý router, anebo provést následující příkazy:

Ruční zapnutí předávání paketů
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding

Potom otestujeme DNS server:

Test DNS serveru
$ ping sspvc.lixis.cz

Pokud to nefunguje, je špatně nastaven DNS server v konfiguraci DHCP serveru.

Po každé opravě chyby musíme na routeru restartovat DHCP server a na stanici restartovat ethernetovou kartu (pokud to neumíte, tak restartujte počítač). Ethernetová karta se dá restartovat tak, že se nejprve zakáže a potom povolí.

Závěrečné testování

Závěrečné testování můžete provést tak, že restartujete váš router příkazem:

# reboot

a potom restartujete i testovací stanici. Pokud všechno funguje a můžete do internetu, tak vám gratuluji a máte jedničku. Takové řešení můžete odevzdat zákazníkovi a připravit fakturu na velké peníze.

Pokud něco nefunguje, zkuste to opravit a chybu se snažte objevit podle výše uvedeného postupu.

Konfigurační soubory, které jste změnili, nezapomeňte nahrát do adresáře /home/zaloha/<vaše_jméno>/.

Vypnutí routeru se dělá příkazem:

# halt -p

Poté, co jste router vypnuli, složte ho do krabice. Smotejte hezky kabely a vaše pracoviště uveďte do původního stavu. Kdo se na to vykašle, tak opět dostane kuli.