DHCP EN LINUX
Instalar el cliente DHCP: apt-get install dhcp3-cliente Suele venir instalado por defecto.
Instalar el servidor DHCP: apt-get install dhcp3-server
Archivos que intervienen en la configuración del DHCP en GNU/Linux:
Dentro de este archivo (/etc/dhcp3/dhcpd.conf ) hay varias sentencias:
Declaraciones: Describen redes, maquinas o grupos de maquinas con un rango de direcciones IP que se pueden editar
Parámetros: Pueden ser locales o globales que pertenezcan a un conjunto de declaraciones.
Tipos de Parámetros:
Formato: option <nombre_parametros> [valores]:
Estructura del archivo dhcpd.conf: Parámetros globales: Declaracion1 { [Parámetros locales relativa la Declaracion1] [Sub-declaracion anidada a la Declaracion1] };
Significado de los parámetros:
El archivo de configuración del servidor DHCP esta almacenado en : /etc/dhcp3/dhcpd.conf
# # Sample configuration file for ISC dhcpd for Debian # # Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as # configuration file instead of this file. # # $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $ #
# The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddns-update-style none;
# option definitions common to all supported networks... option domain-name "example.org"; option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600; max-lease-time 7200;
# If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. #authoritative;
# Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7;
# No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology.
#subnet 10.152.187.0 netmask 255.255.255.0 { #}
# This is a very basic subnet declaration.
#subnet 10.254.239.0 netmask 255.255.255.224 { # range 10.254.239.10 10.254.239.20; # option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; #}
# This declaration allows BOOTP clients to get dynamic addresses, # which we don't really recommend.
#subnet 10.254.239.32 netmask 255.255.255.224 { # range dynamic-bootp 10.254.239.40 10.254.239.60; # option broadcast-address 10.254.239.31; # option routers rtr-239-32-1.example.org; #}
# A slightly different configuration for an internal subnet. #subnet 10.5.5.0 netmask 255.255.255.224 { # range 10.5.5.26 10.5.5.30; # option domain-name-servers ns1.internal.example.org; # option domain-name "internal.example.org"; # option routers 10.5.5.1; # option broadcast-address 10.5.5.31; # default-lease-time 600; # max-lease-time 7200; #}
# Hosts which require special configuration options can be listed in # host statements. If no address is specified, the address will be # allocated dynamically (if possible), but the host-specific information # will still come from the host declaration.
#host passacaglia { # hardware ethernet 0:0:c0:5d:bd:95; # filename "vmunix.passacaglia"; # server-name "toccata.fugue.com"; #}
# Fixed IP addresses can also be specified for hosts. These addresses # should not also be listed as being available for dynamic assignment. # Hosts for which fixed IP addresses have been specified can boot using # BOOTP or DHCP. Hosts for which no fixed address is specified can only # be booted with DHCP, unless there is an address range on the subnet # to which a BOOTP client is connected which has the dynamic-bootp flag # set. #host fantasia { # hardware ethernet 08:00:07:26:c0:a5; # fixed-address fantasia.fugue.com; #}
# You can declare a class of clients and then do address allocation # based on that. The example below shows a case where all clients # in a certain class get addresses on the 10.17.224/24 subnet, and all # other clients get addresses on the 10.0.29/24 subnet.
#class "foo" { # match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; #}
#shared-network 224-29 { # subnet 10.17.224.0 netmask 255.255.255.0 { # option routers rtr-224.example.org; # } # subnet 10.0.29.0 netmask 255.255.255.0 { # option routers rtr-29.example.org; # } # pool { # allow members of "foo"; # range 10.17.224.10 10.17.224.250; # } # pool { # deny members of "foo"; # range 10.0.29.10 10.0.29.230; # } #}
Esa es la configuración por defecto, como ven las lineas están comentadas,
A continuación vamos a editar los siguientes parámetros, si no están en el fichero de configuración hay que agregarlos.
# option definitions common to all supported networks... option domain-name "elhacker.net"; ← Es el dominio que tendran los nodos que pidan IP por DHCP option domain-name-servers ns1.elhacker.net; ← Es el nombre de dominio del servidor DNS, también podemos poner las IP, por ejemplo : 8.8.8.8, 8 .8.4.4
server-identifier 192.168.1.100; En vuestro caso, poned la IP de vuestro servidor DHCP option routers 192.168.1.1; Sera la puerta de enlace que tendrán configurada los nodos. option subnet-mask 255.255.255.0: Es la mascara de Red a asignar. Option broadcast-address 192.168.1.255 Es la IP de broadcast de la red.
Esa es la configuración del servidor. Ahora vamos a crear una subred, agregamos lo siguiente al final del archivo:
subnet 192.168.1.100 netmask 255.255.255.0 { range 192.168.1.150 192.168.1.180; }
Con ese rango cualquier nodo que pida una IP, el servidor le asignara una que este comprendida entre .150 y .180
Asignar IP a un Host concreto
Esta es la técnica mas común de asignarle una IP a un cierto nodo de la red. Necesitamos saber su MAC.
host equipo01 { hardware ethernet 00:50:b3:c5:60:29; fixed-address 196.168.1.181; }
Con esa daclaracion, a la MAC 00:50:b3:c5:60:29 (me la he inventado) se le asigna la ip declarada con fixed-address.
Para una mejor organización, podemos crear grupos, por ejemplo: el grupo “contabilidad” donde estarán todos los nodos que correspondan a ese departamento.
#Grupo Contabilidad group contabilidad { option routers 192.168.1.1: option subnet-mask 255.255.255.0; host ordenador01 { hardware ethernet 00:50:b3:c5:60:29; fixed-address 196.168.1.181; } host ordenador02 { hardware ethernet 00:50:b3:c5:60:29; fixed-address 196.168.1.181; } }
Así tendremos los nodos mejor definidos y no tendremos que escribir tanto. Dentro del grupo podemos agregar cuantas declaraciones queramos.
Ahora solo tenemos que reiniciar el servidor para que cargue la nueva configuración y que los nodos vayan pidiendo IP's.
$ /etc/init.d/dhcp3-server restart
Acepta mas parámetros como : start, stop, reload, status.
Podemos ver las IP que ha asignado mirando el archivo: $cat /var/lib/dhcp3/dhcpd.leases Post original: Instalación y Configuración de un servidor DHCP en GNU/Linux (modo consola) Autor: madpitbull_99 Esto es todo. |
Redes > Configuración de redes GNU/Linux >