Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: Honza 19. 11. 2013, 12:32:39

Název: Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 12:32:39
Zdravím,

mám takový problém, vůbec se mi nedaří nastavit DHCP na virtualu (virtualServer - VirtualHost).

Potřeboval bych aby se server a host chovali jako kdyby to byli reálné stroje. Server má dvě síťovky do eth0 jde kabel z internetu(modemu) a z eth1 jde kabel do switche(LAN).

Potřebuji aby na serveru běželo DHCP a navíc aby se sdílel internet do LAN.

Veřejná IP: 1.2.3.4
Maska: 255.255.252.0
Brána: 89.177.38.1
DNS1: 213.46.172.36
DNS2: 213.46.172.37

Předpokládám že tyto údaje nastavím na eth0

Od DHCP očekávám, že bude přidělovat toto:
IP range: 192.168.0.100 192.168.0.150
Maska: 255.255.255.0
Server bude mít pevnou IP: 192.168.0.1
Mac Serveru: 08:00:27:14:11:0e

Snad jsem na nic nezapomněl, případně doplním.

Předem děkuji za reakce
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 12:35:59
Zapomněl jsem doplnit, že to hodlám rozjet na Debianu 7.0 pomoci ISC DHCP - tedy pomoci dhcpd
Název: Re:Nastavení dhcpd
Přispěvatel: Petr Krčmář 19. 11. 2013, 12:42:55
Pochopil jsem, že server je vlastně router a DHCP server pro lokální síť. Ale chybí mi další kontext: kde je ten virtuál, co přesně nefunguje a jak jsi postupoval doteď?
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 12:56:40
Ano přesně tak, server bude zároveň i router. Virtual mi běží na mém osobním PC (virtualbox).
1. Nejprve jsem nainstaloval k serveru i hosta, toho jsem nechal tak jak je, měl už přednastaveno získávání IP adresy pomoci DHCP
2. Nastavil jsem síťovky server i host, kde server má na eth0 je zapojena jako síťový most s mojí fyzickou síťovkou a eth1 jako vnitřní síť pod názvem internet
U hosta jsem přidal jednu síťovou kartu eth0 a nastavil jí jako vnitřní síť pod názvem internet

3. Editoval jsem na serveru soubor /etc/dhcp/dhcpd.conf a vložil na konec souboru:

option domain-name "proweb";
option routers 192.168.0.1;
option domain-name-servers 213.46.172.36, 213.46.172.37;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
default-lease-time 3600;
max-lease-time 7200;

subnet 192.168.0.0 netmask 255.255.255.0 {
        range 192.168.0.100 192.168.0.200;
}

host server {
    hardware ethernet 08:00:27:14:11:0e;
    fixed-address 192.168.0.1;
}

4. spustil příkaz: dhcpd start

Nejsem moc zběhlý ani v sítích ani s OS Linux :( Takže se omlouvám pokud jsem tam nasekal nějaké fatálni chyby.
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 12:59:24
Ještě si vzpomínám, že jsem bezhlavě zkoušel zadávat příkazy:
route add -host 255.255.255.255 dev eth0
route add -host 255.255.255.255 dev eth1

nyní mi to u těchto příkazů píše, že soubor již existuje
Název: Re:Nastavení dhcpd
Přispěvatel: Ondřej Caletka 19. 11. 2013, 13:04:02
Píšeš tu o nějakém hostu, pak o nějakém serveru, pak o tvém osobním PC a virtualboxu. Není mi úplně jasné jestli je řeč o jednom fyzickém stroji (osobní PC) a v něm jednom virtuálu, nebo jde o jeden fyzický server a jedno osobní pc s virtuálem, nebo je to ještě úplně jinak. Zkus přiložit obrázek, jak to máš zapojeno, snad to z toho pochopíme.
Název: Re:Nastavení dhcpd
Přispěvatel: Petr Krčmář 19. 11. 2013, 13:05:44
Pořád je to hodně zmatené, zvlášť ta sekce o síťovkách. „Nastavil jsem síťovky server i host, kde server má na eth0 je zapojena jako síťový most“ je naprosto nepochopitelné. Zkus to nějak jednoduše vysvětlit/popsat.

Ale už jsem o kousek blíž. Chápu to tedy správně, že máš router, ten má dvě síťovky a do té jedné je připojená vnitřní síť s PC, na kterém běží VirtualBox?

Pokud to chápu dostatečně správně, tak se snažíš, aby si server sám sobě přiděloval pomocí DHCP IP adresu. To je nesmysl. Ta se konfiguruje staticky.

Druhý problém je v tom virtuálu. Tam máš nastaveno „vnitřní síť“, což je stav, kdy se virtuální síťový kabel připojený jen uvnitř VirtualBoxu a DHCP, routing i NAT si dělá VirtualBox uvnitř. Pokud chceš, aby i virtuál byl normálně na síti a dostal od toho routeru/serveru svoji IP adresu, tak musíš změnit nastavení na „síťový most“. Tím se virtuální kabel zapojí ven z VirtualBoxu do rozhraní, které je v bridge s eth0 (nebo co si nastavíš) na tvém PC.
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 13:34:10
Promiň zkusím to napravit
- fyzický PC mám jenom jeden (můj osobní pc)
- Na něm mi pod W7 běží virtualBox(virtualizační sw)
- v tomto SW mám nainstalované 2 virtuální mašiny (server a host)

K síťovým kartám:
virtuální server má 2 síťové karty eth0 a eth1
virtuální host má 1 síťovou kartu eth0

Jenomže tohle co vám tady popisuji je jenom nástin - v realu chci simulovat počítačovou síť, kde bude figurovat server(Firewall, DHCP, SSH, Proxy, zároveň bude i jako router) pod serverem bude LAN (switch) + několik hotů.
Zjednodušil jsem situaci pouze na server a jednoho hosta

S tím IP serveru to znamená nastavit to natvrdo v konfiguraci síťové karty, nikoli řešit pomoci DHCP?

Ok zkusím to předělat na síťový most



http://uloz.to/xAtwaYW4/zapojeni-jpg pardon ale nevím kam bych ho měl nahrát :( nikdy jsem nic podobného nepotřeboval
Název: Re:Nastavení dhcpd
Přispěvatel: Petr Krčmář 19. 11. 2013, 13:41:35
Výborně! To je přesně to, co bylo potřeba. Takže virtuální server se konfiguruje tak, že jedna jeho síťovka musí být puštěná v režimu síťového mostu, aby byla součástí fyzické sítě. Druhé rozhraní se nechá uvnitř VirtualBoxu ve vnitřní síti. Stejně tak virtuální host. Ty dvě síťovky (server a host) se musí ve VirtualBoxu vidět, ale nepotřebují ven do sítě.

Serveru se pak venkovní IP adresa přidělí ručně nebo DHCP klientem (aby si ji nabral od fyzického routeru venku) a vnitřní IP adresa (ta směrem k virtuálnímu hostovi) se nastaví ručně. Pak se na tu vnitřní (pozor, ne do fyzické sítě!) síťovku pustí jeho DHCP server.
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 13:59:51
Takže jsem to nastavil ve virtual boxu a v Debianu toto:
Server:
- venkovní IP jsem dostal od routeru 192.168.0.111
- vnitřní IP jsem nastavil na 192.168.0.1

Host:
- čeká na DHPC

To mám hotové.
V nastavení dhcpd.conf tedy musím změnit nastavení:

Kód: [Vybrat]
option domain-name "proweb";
option routers 192.168.0.1;
option domain-name-servers 213.46.172.36, 213.46.172.37; #### tohle taky nepotřebuji

option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
default-lease-time 3600;
max-lease-time 7200;

subnet 192.168.0.0 netmask 255.255.255.0 {
        range 192.168.0.100 192.168.0.200;
}

host server {         ################ Tohle teda můžu smazat, když už mám server nastaven ručně
    hardware ethernet 08:00:27:14:11:0e;
    fixed-address 192.168.0.1;
}

Zatím se tedy pokusím zprovoznit DHCP na virtuálním serveru
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 14:11:36
Navíc jsem zjistil, že jak jsem bezmyšlenkovitě zadával příkazy

route add -host 255.255.255.255 dev eth1
a
route add -host 255.255.255.255 dev eth0

tak mi to píše že tam mám konflikt

Nevíte jak z routovací tabulky umažu záznam a který z těch dvou to mý být ? Smazal bych ten s eth0
Název: Re:Nastavení dhcpd
Přispěvatel: Petr Krčmář 19. 11. 2013, 14:19:34
Ve dvou takhle připojených sítích nemůžou být stejné rozsahy (192.168.0.0/24), protože pak systém nebude vědět, do které sítě posílat pakety třeba pro 192.168.0.1. Kam takový provoz patří? Do eth0 nebo eth1? To se podle takhle nastaveného routingu nedá poznat.

Routy vůbec není třeba řešit, routovací tabulka se naplní daty sama, jakmile se přidělí adresy konkrétním rozhraním. Pokročilejší statický routing tu není potřeba.

Mimochodem: místo příkazů ifconfig, route a podobně doporučuji nainstalovat balíček iproute2 a používat univerzální příkaz ip. Routy se pak mažou asi takhle:

Kód: [Vybrat]
# ip route delete 192.168.1.0/24 dev eth0
Mimochodem, doporučuji si nastudovat něco o síťování na Linuxu, v každé rozumné příručce ty základy jsou. Nepůjdeš pak složitou cestou objevování něčeho, co ti může vysvětlit pět stránek v knížce.
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 14:31:35
Děkuji, na to smazání route jsem už přišel stačilo zapojit mozek a otevřít manuál, ale děkuji.
Virtuální síť už jsem změnil na jiné podsítě. Mockrát děkuji za rady jdu dál studovat DHCP
Název: Re:Nastavení dhcpd
Přispěvatel: j 19. 11. 2013, 15:05:08
Hele, a proc ten vitual nepustis do site naprimo? proc mu vyrabis jinej rozsah? Na neco to potrebujes?

Protoze ty bys uplne klidne moh mit

IP1 ... PC
IP2 ... virtual - server
IP3 ... virtual - klient

vsechny v jednom subnetu.
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 15:18:21
Potřeboval jsem vytvořit samostatnout síť, potřebuji tam zprovoznit dhcp server, což se mi nedaří, příjde mi že se ten dhcp snaží přiřadit IP na venkovní stranu sítě (směrem) k routeru. Jak vlastně to DHCP pozná na kterou síťovou kartu má rozdávat IP?

Chtěl jsem nasimulovat situaci, kdy z jedné srany serveru je internet a na druhé je LAN.
Název: Re:Nastavení dhcpd
Přispěvatel: j 19. 11. 2013, 15:35:05
Ok, takze ti jde o hrani si ...

Jinak je to zhruba nasledovne:

shared-network LAN {
  subnet 192.168.1.0 netmask 255.255.255.0 {
    pool {
      range 192.168.1.32 192.168.1.254;
    }
  }
}

Tohle by ti melo pokud si to dobre pamatuju stacit, aby dhcpko bezelo.

Ten stroj samo musi mit fixni aspon tu adresu, na ktery hodlas mit dhcp. Vyse uvedeny zaridi, ze bude pridelovat na ty sitovce, ktera ma IPcko v rozsahu 192.168.1.0/24. Na sitovce ktera ma jinou, by ti mel do logu zahlasit, ze pro ni nemas definovanej subnet, a tudiz ze "warning" tam nebude poslouchat.
Název: Re:Nastavení dhcpd
Přispěvatel: j 19. 11. 2013, 15:37:19
Jeste pripodotknu, ze takto to samo neprideli default routu a dalsi, to si pohledej v dokumentaci.
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 17:00:23
Pochopil jsem to tedy správně, že pokud budu chtít mít zapojený server takhle:
http://imagelink.cz/?v=zapojeni2.jpg (http://imagelink.cz/?v=zapojeni2.jpg)

Stačí mi tedy nastavit na eth0 údaje od poskytovatele
a na eth1 mít dhcp + routování kvůli internetu
Název: Re:Nastavení dhcpd
Přispěvatel: michal 19. 11. 2013, 17:40:35
ahoj ja si delal neco podobneho na pokusy, ale mel jsem  v tom virtualu 3 sitovky
1. je wifi meho noteboku, ktera se bridguje do virtualu (pomoci ni chytam internet)
2. je virtualni sitovka "internal network" kterou pouzivam na komunikaci mezi virtualnimi stroji mam na ni nastavenou statickou ip 10.0.0.1
3. je dratova sitovka meho nb je take nastavena na bridge a pouzivam ji k pripojovani fyzickych zarizeni (ktere pak dostanou adresu z meho virtualniho dhcp serveru) ma nastavenou statickou ip adresu 10.0.10.1

k nastaveni sitovek pouzivam systemd unit soubor tady je jeden z tech 3 na ukazku (umisteni /etc/systemd/system/lan.service ):
[Unit]
Description=lan sitovka
Wants=network.target
Before=network.target
BindsTo=sys-subsystem-net-devices-lan.device
After=sys-subsystem-net-devices-lan.device

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/ip link set dev lan up
ExecStart=/sbin/ip addr add 10.0.0.1/24 dev lan


ExecStop=/sbin/ip addr flush dev lan
ExecStop=/sbin/ip link set dev lan down

[Install]
WantedBy=multi-user.target


no muj /etc/dhcpd.conf ma nake veci navic, treba se ti budou hodit napriklad dokaze predat host name pocitace, kteremu pridelil adresu, dns serveru, pocitace prez nej muzou instalovat os (pomoci pxe), jsou tam rezervovane 2 adresy podle hardwarove adresy sitovky.


allow booting;
allow bootp;

ddns-update-style interim;
include "/etc/bind/rndc.key";

# DNS zones to update
zone 0.0.10.in-addr.arpa. {
primary 10.0.0.1;
key "rndc-key";
}

zone 10.0.10.in-addr.arpa. {
primary 10.0.0.1;
key "rndc-key";
}

zone magi.local. {
primary 10.0.0.1;
key "rndc-key";
}

option domain-name "magi.local";
option domain-name-servers 10.0.0.1, 8.8.8.8;
option subnet-mask 255.255.255.0;
option broadcast-address 10.0.0.255;


subnet 10.0.0.0 netmask 255.255.255.0 {
  range dynamic-bootp 10.0.0.50 10.0.0.250;
  filename "pxelinux.0";               
  option routers 10.0.0.1;
}

subnet 10.0.10.0 netmask 255.255.255.0 {
  range 10.0.10.50 10.0.10.250;
  option routers 10.0.10.1;
}

host pc1 {
hardware ethernet 08:00:27:1c:41:3e;
fixed-address 10.0.0.20;
}

host pc2 {
hardware ethernet 08:00:27:f7:e5:d7;
fixed-address 10.0.0.21;
}

no jeste doporucuji nastavit server tak aby neprideloval adresy na te bridgovane sitovce, z ktere chytas internet;)
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 21:15:16
Moc děkuji, už se mi podařilo rozchodit dhcp, byl to porod ale mám to :-D
Michal: myslíš že se dhcp bude snažit dávat IP i na eth0 (u mě síťovka chytající internet)?? Mám ji nastavenou staticky, takže snad to nebude blbnout.

Nyní řeším problém jak mám routovat z eth0 pakety na hosta
/proc/sys/net/ipv4/ip_forward mám nastaven na 1 ale to asi nestačí :-)

předpokládám správně že budu muset nějak nastavit routovací tabulku ?
Název: Re:Nastavení dhcpd
Přispěvatel: j 19. 11. 2013, 21:21:19
Hele, nemel by sis nekde neco precist? Bylo by to daleko efektivnejsi, nez z nas tady tahat krok za krokem jak co nastavit.

Pokud mas to co si tu popisoval, tak nikde nic nastavovat nemusis. nahod sem "ip ro ls".
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 21:45:54
Promiň ale nad DHCP sedím už dva dny, nedělám nic jiného. Přečetl jsem spousty návodů ale nic mi nejelo, konečně jsem rozchodil tu nejzákladnější věc, ale nejede mi u hosta internet zkoušel jsem vpisovat do route tabulky různé věci, nic ale nepomohlo.
Jestli by měl při správné konfiguraci DHCP net fungovat, ok děkuji za radu už vím kde mám hledat chybu.

Omlouvám se, jestli vypadám, že nic nečtu a nesháním info sám, sháním. Jenom už mě sere 2 dny nastavování DHCP, které se zdá (asi i je) banální věcí. Ano jsem uživatel Win o získání větších znalosti os Linuxu se snažím chvilku. Nečekal jsem že vyhořím na věci, která je v každém routeru a na venek se tváří easy.
Název: Re:Nastavení dhcpd
Přispěvatel: samalama 19. 11. 2013, 22:03:17
tak to sa budes "srat" este par tyzdnov (ak nie mesiacov) kym tomu "celemu" porozumies :)

aby ti isiel net na hostovy, tak virtual server musi nat-ovat virtualnu lan, alebo fyzicky router (tvoja brana do netu) musi nat-ovat virtualnu lan a zaroven musi vediet, kam ju ma routovat (teda cez virtual server)...
Název: Re:Nastavení dhcpd
Přispěvatel: Honza 19. 11. 2013, 22:33:56
Moc ti děkuji, internet funguje :-) Stačil jeden příkaz v iptables
Název: Re:Nastavení dhcpd
Přispěvatel: michal 19. 11. 2013, 23:05:49
ahoj supr takze iptables uz vysvetlovat nemusim;)
jeste k tomu dhcpd serveru

hned na zacatku manualovych stranek se doctes:

The names of the network interfaces on which dhcpd should listen for broadcasts may be specified on the command line. This should be done on systems where dhcpd is unable to identify non-broadcast interfaces, but should not be required on other systems. If no interface names are specified on the command line dhcpd will identify all network interfaces which are up, eliminating non-broadcast interfaces if possible, and listen for DHCP broadcasts on each interface.

tzn standartne, pokud nic nespecifikujes, tak ti server prideluje adresy na vsech sitovkach tzn vsichni kdo se pripoji do stejne site, jakou ma  tva bridgovana sitovka (ta co ti dava internet), maji sanci ze dostanou adresu od tveho serveru a dost pravdepodobne jim prestane jit internet jakmile se s te site odpojis.

sitovky na kterych se bude "naslouchat" se daji nadefinovat treba ve spoustecim souboru dhcpd4
prvni zkopiruj puvodni spousteci soubor:
cp etc/systemd/system/multi-user.target.wants/dhcpd4.service etc/systemd/system/mujdhcpd.service
a do lajny execstart dopln nazvy sitovek v mem pripade drat a lan:
ExecStart=/usr/sbin/dhcpd lan drat -4 -q -pf /run/dhcpd4.pid
pak zastav dhcpd server
systemctl stop dhcpd4
reloadni unit soubory:
systemctl daemon-reload
a nastartuj dhcpd server:
systemctl start mujdhcpd