Diferencia entre revisiones de «DHCP»
Línea 66: | Línea 66: | ||
Aquestes serien les opcions bàsiques, però hi ha més. Anem a observar un exemple un poc més avançat: | Aquestes serien les opcions bàsiques, però hi ha més. Anem a observar un exemple un poc més avançat: | ||
=== host === | |||
<pre class="code"> | <pre class="code"> | ||
ddns-update-style none; | ddns-update-style none; | ||
Línea 121: | Línea 122: | ||
* '''host''': Es pot donar configuracions específiques a una '''MAC''' en concret, com en l'exemple, una IP fixa. | * '''host''': Es pot donar configuracions específiques a una '''MAC''' en concret, com en l'exemple, una IP fixa. | ||
=== pools === | |||
Un altre exemple: | Un altre exemple: | ||
<pre class="code"> | <pre class="code"> | ||
Línea 210: | Línea 212: | ||
} | } | ||
</pre> | </pre> | ||
=== shared-network === | |||
En el cas de que en un mateix domini de col·lisió (un mateix switch) tinguen que conviure varies xarxes IP distintes, el servidor DHCP ha de saber-ho i cal fer un '''shared-network''', per exemple: | En el cas de que en un mateix domini de col·lisió (un mateix switch) tinguen que conviure varies xarxes IP distintes, el servidor DHCP ha de saber-ho i cal fer un '''shared-network''', per exemple: | ||
<pre class="code"> | <pre class="code"> | ||
Línea 224: | Línea 226: | ||
</pre> | </pre> | ||
El nom de la xarxa compartida eixirà en els missatges de log. | El nom de la xarxa compartida eixirà en els missatges de log. | ||
=== group === | |||
Pot ser que alguns clients de diferents xarxes o pools tinguen característiques comuns. Es poden declarar grups que, a una serie de hosts li aplique unes característiques determinades. | |||
== Enllaços == | == Enllaços == |
Revisión del 20:39 21 mar 2019
Isc DHCP
De la web oficial:
All IP devices need addresses, and ISC DHCP is the classic way to provide them. ISC DHCP is open source software that implements the Dynamic Host Configuration Protocol for connection to an IP network. It offers a complete solution for implementing DHCP servers, relay agents, and clients for small local networks to large enterprises. ISC DHCP solution supports both IPv4 and IPv6, and is suitable for use in high-volume and high-reliability applications. DHCP is available for free download under the terms of the ISC License, a BSD style license. (nb ISC DHCP will move to the MPL 2.0 license beginning with ISC DHCP 4.4.0)
ISC is developing a new DHCP server, Kea, which we intend to eventually replace ISC DHCP in most server implementations. We recommend that new implementers considering using Kea, and implement ISC DHCP only if Kea does not meet their needs. The Kea distribution does not currently include either a client or a relay.
En ubuntu, Debian i derivades es considera el servidor estàndard per a DHCP.
Preparació
El primer que cal fer és instal·lar el servidor:
$ sudo apt install isc-dhcp-server
Una vegada instal·lat, es pot configurar la targeta per la que donarà direccions IP. Aquesta ha de tindre una direcció estàtica.
Per a que done servei DHCP per aquesta targeta, cal que estiga donada d'alta en el fitxer /etc/default/isc-dhcp-server com a interficie que té eixida de servici DHCP.
Per reiniciar el servei o conprovar si funciona correctament, es pot fer de varies maneres:
$ sudo service isc-dhcp-server [restart,start,stop,status] $ sudo systemctl restart isc-dhcp-server.service
Per detectar problemes de configuració o monitoritzar es pot utilitzar algun d'aquests comandaments:
$ journalctl -u isc-dhcp-server -b -e $ journalctl -u isc-dhcp-server -b -f $ dhcpdump -i <nom del nic>
Configuració
Abans de res, cal anar a /etc/default/isc-dhcp-server per indicar quines són les targetes de xarxa per les que dona servei DHCP.
El fitxer principal és /etc/dhcp/dhcpd.conf. Ací tenim una configuració bàsica:
default-lease-time 600; max-lease-time 7200; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option routers 192.168.1.254; option domain-name-servers 192.168.1.1, 192.168.1.2; option domain-name "mydomain.example"; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.100; range 192.168.1.150 192.168.1.200; }
Anem a repassar les diferents opcions que es veuen en aquest exemple:
- default-lease-time: Aquesta opció indica el temps que el servidor DHCP oferirà als clients per a que tornen a preguntar la IP. És el temps de concessió.
- max-lease-time: Els clients poden mantindre una IP més temps del recomanat en l'opció anterior, però mai passar-se d'aquest màxim.
- option subnet-mask: Aquesta opció global indica la màscara que donarà als clients. No obstant es pot ignorar si és indicada en una subxarxa.
- option broadcast-address: La direcció de broadcast per a tots els clients.
- option routers: La porta d'enllaç per defecte dels clients. És l'equivalent a gateway en /etc/network/interfaces
- option domain-name-servers: Llista de DNS que tindran els clients.
- option domain-name: El nom de domini assignat a la xarxa que està donant servei.
- subnet: Declaració d'una subnet en al que indica un rang d'IPs (range) i moltes altres possibles opcions per als clients que es configuren dins d'aquesta subnet.
Aquestes serien les opcions bàsiques, però hi ha més. Anem a observar un exemple un poc més avançat:
host
ddns-update-style none; log-facility local7; subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option domain-name-servers 194.168.4.100; option ntp-servers 192.168.1.1; option netbios-name-servers 192.168.1.1; option netbios-node-type 2; default-lease-time 86400; max-lease-time 86400; host bla1 { hardware ethernet DD:GH:DF:E5:F7:D7; fixed-address 192.168.1.2; } host bla2 { hardware ethernet 00:JJ:YU:38:AC:45; fixed-address 192.168.1.20; } } subnet 10.152.187.0 netmask 255.255.255.0 { option routers 10.152.187.1; option subnet-mask 255.255.255.0; option broadcast-address 10.152.187.255; option domain-name-servers 194.168.4.100; option ntp-servers 10.152.187.1; option netbios-name-servers 10.152.187.1; option netbios-node-type 2; default-lease-time 86400; max-lease-time 86400; host bla3 { hardware ethernet 00:KK:HD:66:55:9B; fixed-address 10.152.187.2; } }
Com podem veure, es poden configurar moltes subnets amb IPs distintes. En aquest cas, pot ser que el servidor tinga 2 targetes de xarxa, una amb la configuració de la xarxa 192.168.1.0/24 i l'altra amb 10.152.187.0/24.
Amés, apareixen opcions noves:
- option ntp-servers: Indica el servidor de Temps ntp
- option netbios-name-servers: El servidor de noms de netbios en cas de servir a clients Windows o Samba.
- option netbios-node-type: El tipus de servidor netbios.
- host: Es pot donar configuracions específiques a una MAC en concret, com en l'exemple, una IP fixa.
pools
Un altre exemple:
ddns-update-style none; # option definitions common to all supported networks... option domain-name "example.org"; option domain-name-servers 8.8.8.8, 8.8.4.4; default-lease-time 600; max-lease-time 7200; log-facility local7; host client1 { hardware ethernet 00:16:3e:6f:13:49; fixed-address 192.168.200.80; } subnet 192.168.200.0 netmask 255.255.255.0 { #range 192.168.200.2 192.168.200.50; option routers 192.168.200.1; default-lease-time 6000; max-lease-time 72000; option domain-name-servers 172.27.111.6; pool { range 192.168.200.2 192.168.200.50; allow known-clients; } pool { range 192.168.200.51 192.168.200.75; allow unknown-clients; default-lease-time 600; max-lease-time 7200; option domain-name-servers 8.8.8.8; } } subnet 10.10.0.0 netmask 255.255.0.0 { range 10.10.1.0 10.10.4.231; option routers 10.10.0.100; }
En aquest utilitza Pool per a donar una configuració diferent als clients desconeguts.
Solució del simulacre:
ddns-update-style none; # option definitions common to all supported networks... option domain-name "example.org"; option domain-name-servers 8.8.8.8, 8.8.4.4; default-lease-time 600; max-lease-time 7200; log-facility local7; host client7 { hardware ethernet 00:16:3e:91:56:aa; } subnet 10.0.0.0 netmask 255.255.255.0 { option routers 10.0.0.1; pool { range 10.0.0.101 10.0.0.150; allow known-clients; default-lease-time 60000; option domain-name-servers 172.27.111.6; } pool { range 10.0.0.5 10.0.0.100; allow unknown-clients; } } host client3 { hardware ethernet 00:16:3e:da:15:1; } subnet 10.0.1.0 netmask 255.255.255.0 { option routers 10.0.1.2; pool { range 10.0.1.101 10.0.1.150; allow known-clients; default-lease-time 60000; option domain-name-servers 172.27.111.6; } pool { range 10.0.1.5 10.0.1.100; allow unknown-clients; } } host client1 { hardware ethernet 00:16:3e:bc:df:07; } subnet 10.0.2.0 netmask 255.255.255.0 { option routers 10.0.2.2; pool {range 10.0.2.101 10.0.2.150; allow known-clients; default-lease-time 60000; option domain-name-servers 172.27.111.6; } pool {range 10.0.2.5 10.0.2.100; allow unknown-clients; } }
En el cas de que en un mateix domini de col·lisió (un mateix switch) tinguen que conviure varies xarxes IP distintes, el servidor DHCP ha de saber-ho i cal fer un shared-network, per exemple:
shared-network switch1 { subnet 192.168.1.0 netmask 255.255.255.0 { # Subxarxa del clients 1 range 192.168.1.100 192.168.1.150; # Rang de IPs option routers 192.168.1.1; # IP del firewall } subnet 192.168.11.0 netmask 255.255.255.0 { # Subxarxa dels clients 11 range 192.168.11.100 192.168.11.150; # Rang de IPs } }
El nom de la xarxa compartida eixirà en els missatges de log.
group
Pot ser que alguns clients de diferents xarxes o pools tinguen característiques comuns. Es poden declarar grups que, a una serie de hosts li aplique unes característiques determinades.
Enllaços
Manual de DHCP de Ubuntu Manual Oficial DHCP en Alpine Manual en castellà
acf-dhcp
En Alpine recomanen instal·lar aquest.
apk add acf-dhcp
La configuració és igual a la del ISC
rc-service dhcpd start rc-update add dhcpd
Per al relay:
apk add dhcrelay
La configuració és en /etc/conf.d/dhcrelay Sols cal informar de les targetes on dona servei i de la IP del servidor DHCP.
rc-service dhcrelay start rc-update add dhcrelay