Documente Academic
Documente Profesional
Documente Cultură
Sin la ayuda de un servidor DHCP, tendran que configurarse de forma manual cada direccin IP de cada anfitrin que pertenezca a una Red de rea Local. Si un anfitrin se traslada hacia otra ubicacin donde existe otra Red de rea Local, se tendr que configurar otra direccin IP diferente para poder unirse a esta nueva Red de rea Local. Un servidor DHCP entonces supervisa y distribuye, las direcciones IP de una Red de rea Local asignando una direccin IP a cada anfitrin que se una a la Red de rea Local. Cuando, por mencionar un ejemplo, una computadora porttil se configura para utilizar DHCP, a sta le ser asignada una direccin IP y otros parmetros de red, necesarios para unirse a cada Red de rea Local donde se localice.
Asignacin manual: La asignacin utiliza una tabla con direcciones MAC (acrnimo de
Media Access Control Address, que se traduce como direccin de Control de Acceso al Medio). Slo los anfitriones con una direccin MAC definida en dicha tabla recibir el IP asignada en la misma tabla. sto se hace a travs del parmetro hardware ethernet combinado con deny unknown-clients.
(parmetros default-lease-time y max-lease-time), de modo que la asignacin de direcciones IP es de manera temporal y stas se reutilizan de forma dinmica.
URL: http://isc.org/products/DHCP/
Servicio iptables.
Asumiendo que el servicio funcionar a travs de la interfaz eth1, si lo prefiere, puede utilizar directamente el mandato iptables, ejecutando lo siguiente:
iptables -A INPUT -i eth1 -p udp -m state --state NEW -m udp \ --sport 67:68 --dport 67:68 -j ACCEPT service iptables save
Reinicie el servicio iptables a fin de que surtan efecto los cambios. service iptables restart
Shorewall.
Edite el archivo /etc/shorewall/interfaces: vim /etc/shorewall/interfaces
Asumiendo que el servicio funcionar a travs de la interfaz eth1 (zona loc), aada la opcin dhcp a las opciones de la interfaz sobre la cual funciona el servicio dhcpd. Esta opcin, tras reiniciar el servicio shorewall, habilita las comunicaciones de entrada y salida, para DHCP. ##########################################################################
#ZONE net
INTERFACE eth0
BROADCAST detect
OPTIONS blacklist
loc
eth1
detect
dhcp,blacklist
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Reinicie el servicio shorewall a fin de que surtan efecto los cambios. service shorewall restart
Nota.
Si se desea eliminar la proteccin que brinda SELinux al servicio dhcpd, utilice el siguiente mandato. setsebool -P dhcpd_disable_trans 1
Si se desea eliminar la proteccin que brinda SELinux al sistema para funcionar como cliente DHCP, utilice el siguiente mandato. setsebool -P dhcpc_disable_trans 1
Para iniciar por primera vez el servicio dhcpd, utilice: service dhcpd start
Para hacer que los cambios hechos a la configuracin del servicio dhcpd surtan efecto, utilice: service dhcpd restart
Procedimientos.
Archivo de configuracin /etc/sysconfig/dhcpd.
En el caso de disponer mltiples dispositivos de red en el servidor, se recomienda que el servicio dhcpd solamente funcione a travs de la interfaz de red utilizada por la LAN. Edite el archivo /etc/sysconfig/dhcpd y agregue el valor eth0, eth1, eth2, etc., como argumento(s) del parmetro DHCPDARGS o bien lo que corresponda a la interfaz desde la cual accede la red local.
Para el siguiente ejemplo, considerando que eth1 es la interfaz correspondiente a la LAN: # Command line options here DHCPDARGS=eth1
Direccin IP de difusin: 172.16.1.63 Mscara de sub-red: 255.255.255.192 (26 bit) Puerta de enlace: 172.16.1.1 Servidor de nombres: 172.16.1.1 Servidor Wins: 172.16.1.1 Servidores de tiempo (NTP): recomendamos utilizar los de NTP.org es decir
0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org y 3.pool.ntp.org los cuales son confiables y de acceso gratuito.
Rango de direcciones IP a asignar de modo dinmico: 172.16.1.2, hasta 172.16.1.58. Direcciones IP que sern asignadas a dispositivos con IP fija (172.16.1.59, 172.16.1.60,
172.16.1.61 y 172.16.1.14).
Nota.
Es indispensable conocer y entender perfectamente, todo lo anterior para poder continuar con este documento. Si se tienen dudas, por favor, primero consultar y estudiar, el documento titulado Introduccin a IP versin 4.
Puede utilizar el contenido de ejemplo, que se encuentra ms adelante, para adaptar o bien crear desde cero, un nuevo archivo de configuracin para el servicio dhcpd, ajustando los datos a una red para un conjunto de sistemas en particular.
Configuracin bsica.
Descargue el archivo plantilla, con una configuracin mnima recomendada, desde AlcanceLibre.org, ejecutando lo siguiente: cd /etc/dhcp/ mv dhcpd.conf dhcpd.conf.original wget http://www.alcancelibre.org/linux/secrets/dhcpd.conf restorecon dhcpd.conf cd
vim /etc/dhcp/dhcpd.conf
Nota.
Si se utiliza CentOS 5 o Red Hat Enterprise Linux 5, edite el archivo /etc/dhcpd.conf. vim /etc/dhcpd.conf
Para efectos prcticos, utilice la siguiente plantilla y modifique todo lo que est resaltado.
# Si se tienen problemas con equipos con Windows Vista/7/8 omita el parmetro # server-identifier. sto aunque rompe con el protocolo DHCP, permite a los # clientes Windows Vista/7/8 poder comunicarse con el servidor DHCP y aceptar # la direccin IP proporcionada. # server-identifier 172.16.1.1; ddns-update-style interim; ignore client-updates; authoritative; default-lease-time 900; max-lease-time 7200; option ip-forwarding off; option domain-name "red-local.net"; option ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org;
option subnet-mask 255.255.255.192; option broadcast-address 172.16.1.63; option domain-name-servers 172.16.1.1; option netbios-name-servers 172.16.1.1; range 172.16.1.2 172.16.1.58; } }
Una vez terminada la configuracin, para iniciar el servicio ejecute lo siguiente: service dhcpd start
# Si se tienen problemas con equipos con Windows Vista/7/8 omita el parmetro # server-identifier. sto aunque rompe con el protocolo DHCP, permite a los # clientes Windows Vista/7/8 poder comunicarse con el servidor DHCP y aceptar # la direccin IP proporcionada. # server-identifier 172.16.1.1; ddns-update-style interim; ignore client-updates; authoritative; default-lease-time 900; max-lease-time 7200; option ip-forwarding off; option domain-name "red-local.net"; option ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org;
shared-network redlocal { subnet 172.16.1.0 netmask 255.255.255.192 { option routers 172.16.1.1; option subnet-mask 255.255.255.192; option broadcast-address 172.16.1.63; option domain-name-servers 172.16.1.1; option netbios-name-servers 172.16.1.1; range 172.16.1.2 172.16.1.58; } # Equipos con IP fija. host impresora { option host-name "epl5900.red-local.net";
hardware ethernet 00:24:2B:65:54:84; fixed-address 172.16.1.59; } host pc14 { option host-name "pc14.red-local.net"; hardware ethernet 00:50:BF:27:1C:1C; fixed-address 172.16.1.60; } }
Si realiz cambios en la configuracin, reinicie el servicio dhcpd a fin de que surtan efecto los cambios. service dhcpd restart
vim /etc/dhcp/dhcpd.conf
Un ejemplo de la configuracin quedara del siguiente modo, donde slo las direcciones MAC en la lista pueden conectarse hacia el servidor DHCP y recibir una direccin IP:
# Si se tienen problemas con equipos con Windows Vista/7/8 omita el parmetro # server-identifier. sto aunque rompe con el protocolo DHCP, permite a los # clientes Windows Vista/7/8 poder comunicarse con el servidor DHCP y aceptar # la direccin IP proporcionada. # server-identifier 172.16.1.1; ddns-update-style interim; ignore client-updates; authoritative; default-lease-time 900; max-lease-time 7200; option ip-forwarding off; option domain-name "red-local.net"; option ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org;
shared-network redlocal { subnet 172.16.1.0 netmask 255.255.255.192 { option routers 172.16.1.1; option subnet-mask 255.255.255.192; option broadcast-address 172.16.1.63; option domain-name-servers 172.16.1.1; option netbios-name-servers 172.16.1.1; range 172.16.1.2 172.16.1.58;
} # Lista de direcciones MAC que tendrn permitido utilizar el servidor # DHCP. # deny unknown-clients impide que equipos fuera de esta lista puedan # utilizar el servicio. deny unknown-clients; host impresora { hardware ethernet 00:24:2B:65:54:84; } host pc1 { hardware ethernet 00:50:BF:27:1C:1C; } host pc2 { hardware ethernet F4:C7:14:70:FA:AC; } host laptop1 { hardware ethernet 44:87:FC:AA:DD:2D; } host laptop2 { hardware ethernet 70:F1:A1:9F:70:3B; } }
Si realiz cambios en la configuracin, reinicie el servicio dhcpd a fin de que surtan efecto los cambios. service dhcpd restart
El servidor DNS puede funcionar de modo dinmico permitiendo la actualizacin en tiempo real de los nombres de anfitrin y las direcciones IP asociadas a stos, a travs de la informacin enviada a travs de un servidor DHCP.
Aada la firma digital del servidor DNS al archivo de configuracin del servidor DHCP: cat /etc/rndc.key >> /etc/dhcp/dhcpd.conf
Asumiendo que ya se dispone de un servidor DNS previamente configurado y funcionando, para configurar el servidor DHCP a fin de que actualice automticamente los registros correspondientes en las zonas del servidor DNS, slo basta aadir los parmetros ddns-updates, ddns-domainname, ddns-rev-domainname, la misma firma digital de la configuracin del DNS y definir las zonas de localhost, zona de re-envo y zona de resolucin inversa del DNS, con los valores ejemplificados a continuacin, solamente siendo necesario reemplazar los valores resaltados.
# Si se tienen problemas con equipos con Windows Vista/7/8 omita el parmetro # server-identifier. sto aunque rompe con el protocolo DHCP, permite a los # clientes Windows Vista/7/8 poder comunicarse con el servidor DHCP y aceptar # la direccin IP proporcionada. # server-identifier 172.16.1.1; ddns-update-style interim; ddns-updates on; ddns-domainname "red-local.net."; ddns-rev-domainname "in-addr.arpa."; ignore client-updates; authoritative; default-lease-time 900;
max-lease-time 7200; option ip-forwarding off; option domain-name "red-local.net"; option ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org;
# Copiar tal cual contenido del archivo # /etc/rndc.key # sto se utilizar para poder comunicar el servidor DHCP con el servidor DNS, # y poder gestionar zonas dinmicas desde el servidor DHCP con la misma firma # digital. # Jams utilizar la clave ejemplificada a continuacin para produccin. # Es la nica configuracin cuya llave de cierre pueden llevar punto y coma. key "rndc-key" { algorithm hmac-md5; secret "undGpjMq3iWmUh2yvWOnUQ=="; };
zone
shared-network redlocal { subnet 172.16.1.0 netmask 255.255.255.192 { option routers 172.16.1.1; option subnet-mask 255.255.255.192; option broadcast-address 172.16.1.63; option domain-name-servers 172.16.1.1; option netbios-name-servers 172.16.1.1; range 172.16.1.2 172.16.1.58; } }
Para que lo anterior funcione con el servidor DNS, considerando que ya estn instalados los paquetes bind y bind-chroot, se requiere generar los archivos red-local.net.zone y 1.16.172.in-addr.arpa.zone, dentro del directorio /var/named/chroot/dynamic/. Cambie al directorio /var/named/chroot/dynamic/: cd /var/named/chroot/var/named/dynamic/
Utilice el mandato touch para crear los archivos red-local.net.zone y 1.16.172.in-addr.arpa.zone: touch red-local.net.zone touch 1.16.172.in-addr.arpa.zone
Ambos archivos deben tener permisos de lectura y escritura para usuario y slo lectura para grupo: chmod 640 red-local.net.zone
Ambos archivos deben pertenecer al usuario named y grupo named. chown named:named red-local.net.zone chown named:named 1.16.172.in-addr.arpa.zone
ste deber tener el siguiente contenido, donde solamente ser necesario aadir al ejemplo los registros de los equipos con IP fija:
$TTL 86400 @ IN SOA servidor.red-local.net. 2011101901; 28800; 7200; 604800; 86400; ) @ servidor IN IN A NS servidor.red-local.net. root.localhost. (
172.16.1.1
ste deber tener el siguiente contenido, donde solamente ser necesario aadir al ejemplo los registros de los equipos con IP fija:
$TTL 86400 @ IN SOA servidor.red-local.net. 2011101901; 28800; 7200; 604800; 86400; ) @ 1 IN IN NS PTR servidor.red-local.net. servidor.red-local.net. root.localhost. (
}; forward first; // Opciones de DNSSEC. // // // // }; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; bindkeys-file "/etc/named.iscdlv.key";
include "/etc/rndc.key";
zone "." IN { type hint; file "named.ca"; }; zone "red-local.net" { type master; file "dynamic/red-local.net.zone"; allow-update { key "rndc-key"; }; }; zone "1.16.172.in-addr.arpa" { type master; file "dynamic/1.16.172.in-addr.arpa.zone"; allow-update { key "rndc-key"; }; }; };
view "public" { match-clients { any; }; recursion no; zone "." IN { type hint; file "named.ca"; }; };
cd
Active la poltica de SELinux, la cual permitir al servidor DNS poder realizar modificaciones a los archivos de zona. setsebool -P named_write_master_zones 1
Reinicie el servicio named a fin de que surtan efecto los cambios. service named restart
Reinicie tambin el servicio dhcpd a fin de que surtan efecto los cambios y para que el servidor DHCP comience a interactuar con el servidor DNS. service dhcpd restart
A partir de este momento, todo cliente que tenga definido en su configuracin local un nombre de anfitrin y al cual le sea asignada una direccin IP a travs del servidor DHCP recin configurado, comunicar su nombre de anfitrin al servidor DHCP, el cual a su vez comunicar al servidor DNS este mismo nombre asociada a la direccin IP asignada al cliente, de modo que el DNS aadir automticamente el registro correspondiente a las zonas de re-envo y de resolucin inversa correspondientes.
Verifique que el servidor DNS dinmico funciona correctamente, simulando lo que en adelante har automticamente en segundo plano el servidor DHCP, aadiendo un par de registros a travs del mandato nsupdate. Ejecute lo siguiente para conectarse al servidor DNS utilizando la firma digital que utilizarn tanto el ste como el servidor DHCP: nsupdate -k /etc/rndc.key
update add prueba.red-local.net. 86400 A 172.16.1.14 send update add 14.1.16.172.in-addr.arpa. 86400 PTR prueba.red-localnet send quit
Significa que hay errores en el procedimiento realizado o la configuracin o bien que la firma digital utilizada en el archivo /etc/named.conf es distinta a la del archivo /etc/rndc.key.
Si lo anterior devuelve errores como el siguiente: ; TSIG error with server: tsig indicates error update failed: REFUSED(BADKEY)
Significa que el nombre de anfitrin pertenece a un dominio distinto al configurado o bien la direccin IP pertenece a otro bloque direcciones distinto al configurado. Corrija lo necesario si as es el caso.
Si el procedimiento concluy sin errores, haga consultas al servidor DNS para prueba.red-local.net y 172.16.1.14 para cotejar que el servidor DNS acept los dos registros aadidos a travs de nsupdate, ejecutando lo siguiente: host prueba.red-local.net host 172.16.1.14
Lo anterior debe devolver una salida similar a la siguiente: [root@servidor ~]# host prueba.red-local.net
prueba.red-local.net has address 172.16.1.14 [root@servidor ~]# host 172.16.1.14 14.1.16.172.in-addr.arpa domain name pointer prueba.redlocal.net.
Si la salida devuelve errores, significa que hay errores en el procedimiento realizado o bien el dominio y zona de resolucin inversa son diferentes a los configurados. Corrija lo necesario si as es el caso.
Si el procedimiento concluy correctamente, utilice el mandato nsupdate para conectarse de nuevo al servidor DNS ejecutando lo siguiente: nsupdate -k /etc/rndc.key
Desde el intrprete de mandatos de nsupdate, ejecute lo siguiente para eliminar los registros: server 127.0.0.1 update delete prueba.red-local.net. A send update delete 14.1.16.172.in-addr.arpa. PTR send quit
Esta es, por cierto, la metodologa recomendada para aadir o eliminar registros de zonas en el servidor DNS cuando se utilizan zonas dinmicas.
Despus concluida la configuracin y que estn funcionando los servicio correspondientes, pueden hacerse comprobaciones desde un cliente GNU/Linux, es decir, desde otro equipo. Abra una terminal,
como usuario root y, asumiendo que se tiene una interfaz de red denominada eth0, utilice los siguientes mandatos para desactivar la interfaz eth0 y asignar una nueva direccin IP a travs del servidor dhcp.
ifdown eth0 dhclient -d -I nombre-equipo -H nombre-equipo eth0
Lo anterior deber devolver el mensaje Determinando la informacin IP para eth0... y el smbolo de sistema. Para corroborar, utilice el mandato ifconfig para visualizar los dispositivos de red activos en el sistema. Pulse CTRL-C para terminar el programa.
Si se dispone de varios servidores DHCP y se desea probar la configuracin de alguno en particular, puede aadir la opcin -V al mandato dhclient, definiendo como valor para esta opcin, el mismo valor que fue asignado para el parmetro server-identifier, establecido en el archivo /etc/dhcp/dhcpd.conf del servidor correspondiente.
ifdown eth0 dhclient -d -I nombre-equipo -H nombre-equipo -V 172.16.1.1 eth0
Edite el archivo /etc/sysconfig/network-scripts/ifcfg-eth0 o el que corresponda al dispositivo de red principal del sistema cliente: vim /etc/sysconfig/network-scripts/ifcfg-eth0
La configuracin permanente del dispositivo de red, considerando como ejemplo la interfaz eth0 con direccin MAC 00:01:03:DC:67:23, solicitando los datos para los servidores DNS, puerta de enlace y servidores de tiempo, sera la siguiente: DEVICE=eth0 ONBOOT=yes USERCTL=yes HWADDR=00:01:03:DC:67:23 TYPE=Ethernet NM_CONTROLLED=no
Si utiliza NM_CONTROLLED=yes, deje que el servicio NetworkManager se encargue por si solo de aplicar los cambios. Si utiliza NM_CONTROLLED=no, reinicie el servicio network a fin de que surtan efecto los cambios. service network restart