Práctica sobre instalación e configuración de servizos de configuración dinámica de sistemas
Sumario
- 1 Servidor DHCP en Windows Server 2019
- 2 Servidor DHCP en Ubuntu 20.04
- 3 Servidor DHCP en pfSense
- 4 Servicio DHCP cun router
- 5 Servidor DHCP con Cisco Packet Tracer
- 6 Configuración DHCP en clientes
- 7 Ampliación
- 8 Referencias
- 9 Créditos
Servidor DHCP en Windows Server 2019
Prerrequisitos
Contar cunha instalación de Windows Server 2019. Tes unha guía de instalación paso a paso, e podes facelo nun entorno virtualizado con VirtualBox, VMWare, KVM, Hyper-V ou calquer outro hypervisor.
Con interfaz gráfica
Con PowerShell
1. Instalar o rol de DHCP Server
Install-WindowsFeature -Name 'DHCP' –IncludeManagementTools
Pode ser convinte facer un reinicio:
Restart-Computer -Force
2. Engadir o DHCP Scope:
Add-DhcpServerV4Scope -Name "DHCP Scope" -StartRange 192.168.1.150 -EndRange 192.168.1.200 -SubnetMask 255.255.255.0
3. Engadir opción en DHCP: Servidor DNS e Porta de enlace:
Set-DhcpServerV4OptionValue -DnsServer 192.168.1.10 -Router 192.168.1.1
4. Fixar a duración da concesión:
Set-DhcpServerv4Scope -ScopeId 192.168.1.10 -LeaseDuration 1.00:00:00
5. Reiniciar o servizo DHCP:
Restart-service dhcpserver
Reserva de ip
Realizaremos a reserva de IP para un equipo concreto (habitual por exemplo nun servidor que necesita dun enderezo IP fixo) evitando a asignación aleatoria dun enderezo IP dentro dun rango.
Executaremos con permisos de administrador en PowerShell:
Add-DhcpServerv4Reservation -ScopeId @red -IPAddress @ip_fija -ClientId “@mac” - Description “Nombre para la Reserva”
Por exemplo:
Add-DhcpServerv4Reservation -ScopeId @red -IPAddress @10.0.2.0 -ClientId 08-00-27-84-A7-03 - Description “Reserva Cliente W7”
Con liña de comandos
Reserva de ip
Executaremos con permisos de administrador en cmd:
> netsh dhcp server scope <ScopeID> add reservedip <ReservedIP> <MAC_Address> <ClientName> <ClientComment>
Por exemplo:
> netsh dhcp server scope 10.1.2.0 add reservedip 10.1.2.5 000102A3D474 faisca-w10 "Portatil de casa"
Comprobación do funcionamento e troubleshooting
Usando tcpdump
Usando tcpdump desde o servidor podense capturar os catro paquetes que corresponden a una concesión:
- DISCOVER
- OFFER
- REQUEST
- ACK
Accedendo a Concesiones de direcciones
No menú Concesiones de direcciones poderemos ver asignacións realizadas:
Administración de DHCP Server con Windows Admin Center
Pódense facer configuracións e administración do servidor DHCP con Windows Admin Center
Podes tamén mediante extensións do Windows Admin Center xestionar outras configuracións do servidor.
Aquí podes consultar os pasos para instalar o Windows Admin Center e conectar á consola
Servidor DHCP en Ubuntu 20.04
Con webmin
Poder seguir esta guía paso a paso ou ler a documentación oficial de webmin
Con liña de comandos
Conforme a documentación oficial de Ubuntu.
1. Para instalar dhcpd:
sudo apt install isc-dhcp-server Nota: as mensaxes dhcpd son enviadas a syslog. Podes mirar ahí para atopar mensaxes de diagnóstico
2. Para configurar /etc/dhcp/dhcpd.conf:
sudo nano /etc/dhcp/dhcpd.conf
# minimal sample /etc/dhcp/dhcpd.conf default-lease-time 600; max-lease-time 7200; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.150 192.168.1.200; option routers 192.168.1.254; option domain-name-servers 192.168.1.1, 192.168.1.2; option domain-name "mydomain.example"; }
Algunhas normas de configuración deste ficheiro son:
- Co signo # comenza un comentario ata o final da liña.
- Non é case-sensitive: non se distinguen entre maiúsculas e minúsculas.
- Incluirá parámetros e declaracións
Os parametros:
- indican cómo facer unha tarefa, se debe realizarse ou non ou os parámetros de configuración que se enviarán o cliente
- se comezan coa palabra option, denominanse opcións e controlan as opcións de DHCP.
- se se especifican fóra de calquera declaración son de ámbito global e afectan a todas as declaracións; en caso contrario son de ámbito específico
- Todos os parametros deben acabar con punto e coma (;).
As declaracións:
- describen a topoloxía da rede e os clientes,e proporcionan enderezos que poden asignarse a clientes ou aplican un grupo de parámetros a un grupo de declaracións.
- definen un ámbito mediante chaves { e } non finalizan en punto e coma.
Podes consultar listaxe de parámetros e opcións.
3. Pode ser necesario especificar as interfaces as que dhcpd debe escoitar en /etc/default/isc-dhcp-server:
sudo nano /etc/default/isc-dhcp-server
INTERFACESv4="eth4"
4. Para reiniciar o servizo dhcpd :
sudo systemctl restart isc-dhcp-server.service
Comprobación do funcionamento e troubleshooting
Comprobamos a concesión no servidor executando o comando:
Get-DHCPServerv4scope | Get-DHCPServerv4Lease
No ficheiro /var/lib/dhcp/dhclient.leases quedará rexistrada toda a información da concesion.
tail -f /var/lib/dhcp/dhclient.leases
Atoparase o enderezo IP, a máscara, os tempos (renovación, liberacion e expiración), etc.
Un posible output:
lease { interface "ra0"; fixed-address 192.168.1.106; option subnet-mask 255.255.255.0; option dhcp-lease-time 86400; option routers 192.168.1.1; option dhcp-message-type 5; <span style='color: rgb(255, 0, 0);'>option dhcp-server-identifier <span style='color: rgb(102, 102, 204);'>192.168.1.1;</span></span> option domain-name-servers 208.67.222.222,208.67.220.220; option dhcp-renewal-time 43200; option dhcp-rebinding-time 75600; option host-name "vivek-desktop"; renew 0 2007/12/9 05:17:36; rebind 0 2007/12/9 15:06:37; expire 0 2007/12/9 18:06:37; } lease { interface "ra0"; fixed-address 192.168.1.106; option subnet-mask 255.255.255.0; option routers 192.168.1.1; option dhcp-lease-time 86400; option dhcp-message-type 5; option domain-name-servers 208.67.222.222,208.67.220.220; option dhcp-server-identifier 192.168.1.1; option dhcp-renewal-time 43200; option dhcp-rebinding-time 75600; option host-name "vivek-desktop"; renew 0 2007/12/9 06:11:22; rebind 0 2007/12/9 16:13:50; expire 0 2007/12/9 19:13:50; }
No ficheiro de rexistro syslog do servidor (/var/log/syslog) pódese atopar información:
tail -f /var/log/syslog
Pódese renovar a concesión de rede no cliente utilizando dhclient e ver como cambiar a información de syslog e dhclient.leases no servidor.
Unha opción que pode ser interesante é filtrar a través da configuración de rsyslogd o log de syslog para rexistrar só a información de DHCP.
Servidor DHCP en pfSense
Podes atopar guías en inglés 2 e castelán, ou a documentación oficial onde atopar información sobre coo levar a cabo a configuración.
Servicio DHCP cun router
tp-link N-750 Wireless Dual Band Gigabit
Caso habitual para os nosos dispositivos domésticos. As opciones de configuración cambiarán entre distintas marcas e modelos de pero serán semellantes.
Neste caso amosase a configuración DHCP dun router tp-link N-750 Wireless Dual Band Gigabit.
Pódese facer asignación estática na seguinte pantalla:
Co firmware de Tp-link instalado polo fabricante non é posible configurar rangos de exclusión para a asignación dinámica de enderezos; pero é posible realizala instalando unha versión de firmware OpenWRT e conectarnos a través de telnet para facer esa configuración.
Podes probar o funcionamento co simulador do fabricante.
OpenWRT
Pódese configurar servidor DHCP en OpenWRT para proporcionar:
Servidor DHCP con Cisco Packet Tracer
- https://eclassvirtual.com/configuracion-de-servidores-dns-y-dhcp-en-packet-tracer/
- https://www.youtube.com/watch?v=l8FAx4T7AaA
- https://www.computernetworkingnotes.com/ccna-study-guide/
Configuración DHCP en clientes
Windows 7,8 y 10
Coa combinación de teclas Windows + R introducimos:
ncpa.cpl
Facemos clic co botón dereito na rede a que estamos conecectados e pulsamos en Propiedades, onde faremos doble clic en Protocolo de Internet Versión 4 (TCP/IPv4)
Para configuración por DHCP deixamos marcadas as opcións:
- Obtener una dirección IP automáticamente
- Obtener la dirección del servidor DNS automáticamente
Podemos comprobar o funcionamento accedendo a liña de comando coa combinación de teclas Windows + R e introducindo:
cmd
Executamos o comando:
C:/> ipconfig /all
Se o funcionamento e o esperado, teremos un enderezo ip asignado polo servidor DHCP.
Comprobación do funcionamento e troubleshooting
Executamos para renovar a ip
ipconfig /renew
E posteriormente comprobamos sefoi asignada:
ipconfig /all
Ubuntu
Por liña de comandos
1. Averiguamos o nome dos adaptadores
Pódese facer con calquera dos seguintes comandos:
- ls /sys/class/net/
- cat /etc/network/interfaces
- ip a
- ip link show
- netstat -I
2. Configuramos a IP
Boa práctica. É recomendable respaldar a configuración orixinal cp /etc/netplan/00-installer-config.yaml /root/00-installer-config.yaml.org
Editamos o ficheiro:
nano -c /etc/netplan/00-installer-config.yaml
2.a Para ip estática:
network: version: 2 renderer: networkd #se utilizamos NetworkManager cambiamolo por este ethernets: enp0s3: #nome da nosa tarxeta dhcp4: no dhcp6: no addresses: [192.168.100.16/24] gateway4: 192.168.100.100 nameservers: addresses: [192.168.100.12,8.8.8.8]
2.b Para ip dinámica:
network: version: 2 renderer: networkd #se utilizamos NetworkManager cambiamolo por este ethernets: enp0s3: #nome da nosa tarxeta dhcp4: yes dhcp6: yes
Nota. En ocasións pode aparecer unha líña máis, parecida a esta: renderer: networkd Esto indicará que o demo systemd-networkd é o encargado de administrar a rede. Nembargantes, se realizas esta tarefa nun sistema de escritorio, aparece NetworkManager, porque este é o programa que ofrece os servizos de detección e configuración automáticas na interfaz gráfica.
3. Aplicamos os cambios:
netplan apply
4. E reiniciamos a rede con algúns dos seguintes comandos:
- sudo systemctl restart networking
- sudo service network-manager restart
- sudo systemctl restart NetworkManager.service
- sudo nmcli networking off # ou on
- sudo ip link set enp0s3 down # ou up
- sudo nmtui (e seguindo pasos)
Ou instalando ifupdown:
$ sudo apt update && sudo apt install ifupdown -y
E executando:
$ sudo ifdown -a && sudo ifup -a
5. Comprobamos o funcionamento
# IP e máscara de subrede ip a
# Porta de enlace route
# DNS cat /etc/resolv.conf
Por intefaz gráfica
- Facemos clic na icona de rede da parte superior dereita
- Cableado conectada
- Configuración de red cableada.
- Facemos clic na icona da roda na opción Cableado
- Seleccionamos a lapela Ajustes de IPv4
Para configuración mediante DHCP:
- seleccionamos método Automático:
Para configuración manual:
- seleccionamos método Manual e introducimos valores nos campos
Comprobación do funcionamento e troubleshooting
Co comando dhclient podemos pedir un enderezo ip o servidor dhcp: sudo dhclient [-4|-6] [-r] [interfaz]* -4 e -6 para indicar protocolo IPv4 ou IPv6. Por defecto tómase IPv4 con -r a operación libera o enderezo. Por defecto a omisión indica que a operación e renovar o enderezo E posible indicara interfaz concreta. Por defecto a omisión indica que a operación se executará para todas
Por exemplo dhclient eth0 -v
E comprobamos que foi asignado co comando: ip a
Ampliación
- Implementar un servidor axente DHCP Relay
- Configuración de DHCP Failover protocol
- DHCP Snooping
- Ataques DHCP 2
- Uso de vagrant / docker para xerar os escenarios
- Teoría de DHCPV6 e SLAAC
- DHCPv6 e SLAAC con CPT
- Ataques con Cain
Referencias
Servidor DHCP en Windows Server 2019
Servidor DHCP en Ubuntu 20.04
Con webmin
Con liña de comandos
Servidor DHCP en pfSense
Servidor DHCP con Cisco Packet Tracer
Cliente Ubuntu
Créditos
- Daniel Allegue Paspatty e Guillermo J. Otero Matey, alumnos do Ciclo Medio de Sistemas Microinformáticos e Redes no curso académico 2020/2021, quenes compartiron o seu traballa con licencia Reconocimiento-NoComercial 4.0 Internacional