En mi caso, sólo declaré tres rangos en la tarjeta, pues el enrutador entre
rangos es otro equipo (que tiene IP el 1 de cada rango):

3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether x:x:x:x:x:x brd ff:ff:ff:ff:ff:ff
    inet 200.23.157.24/25 brd 200.23.157.127 scope global eth1
    inet 192.168.2.24/24 brd 192.168.2.255 scope global eth1:2
    inet 192.168.99.24/24 brd 192.168.99.255 scope global eth1:99

#--------------- este es mi dhcpd.conf:
#-- globales
authoritative;

#-- time in seconds 10*3600=10 hs
default-lease-time 36000;
max-lease-time 36000;
ddns-update-style none;

#--deny unknown-clients;
option domain-name "ceti.mx";

#-- poison pill to block WPAD DHCP autoconfig
option wpad code 252 = text ;
option wpad "\n\000";

#-- las subredes comparten la tarjeta eth1
shared-network COLOMOS {

#-- academicos
subnet 192.168.2.0 netmask 255.255.255.0 {
        option routers 192.168.2.1;
        option domain-name-servers 192.168.2.24;
        }
#-- mas academicos: M, C, SMT
subnet 192.168.3.0 netmask 255.255.255.0 {
        option routers 192.168.3.1;
        option domain-name-servers 192.168.2.24;
        }
#-- inalambricas basicas y rebosamiento del 3
subnet 192.168.4.0 netmask 255.255.255.0 {
        option routers 192.168.4.1;
        option domain-name-servers 192.168.2.24;
        }
#-- electronica
subnet 192.168.5.0 netmask 255.255.255.0 {
        option routers 192.168.5.1;
        option domain-name-servers 192.168.2.24;
        }

#,,, y así sigue hasta un total de 31 rangos (varios no consecutivos)...
# luego las direcciones fijas de todos los rangos:
#(total 3047 equipos definidos - ¡chale, me hace falta depurar...!)
     :
     :
host MAQ_192.168.5.115_electron_lred6 {
     hardware ethernet 00:80:AD:xx:xx:xx;
     fixed-address     192.168.5.115;
     }

host MAQ_192.168.5.116_electron_lred7 {
     hardware ethernet 00:04:75:xx:xx:xx;
     fixed-address     192.168.5.116;
     }
      :
#-- fin de shared network
}

---------------- mis rutas quedan así (la mayoría fíjadas manualmente):
ip r
   :
192.168.2.0/24 dev eth1  proto kernel  scope link  src 192.168.2.24
192.168.3.0/24 via 192.168.2.1 dev eth1  metric 1
    :
192.168.35.0/24 via 192.168.2.1 dev eth1  metric 1
192.168.36.0/24 via 192.168.2.1 dev eth1  metric 1
   :
192.168.4.0/24 via 192.168.2.1 dev eth1  metric 1
192.168.40.0/24 via 192.168.2.1 dev eth1  metric 1

etc.

Se supone que el dhcp decide escuchar sobre aquellas interfaces
para las que tiene rango definido; por ésto sólo escucha en eth1
por los rangos declarados aunque no tenga IP en el rango. Por otro lado,
se supone que el DHCP se procesa antes del iptables, pero
por si las dudas, hay que agregar

iptables -A INPUT -i eth1 -p udp -m udp -m multiport --dports 67,68 -j ACCEPT

cerca del inicio de las reglas del firewall.

¿Versión de tu DHCP? ¿lo instalaste manual o es el de la distro?
El mío fué compilado manual para mantenerlo siempre al último
chillido de la moda, descargado desde http://www.isc.org/software/dhcp
Es cierto: es un enfado actualizar manual, pero es el precio por mantener
un servicio crítico...

Saludos!
Fjor

2012/2/3 Fernando Rojas <fernando.ro...@uniondetula.gob.mx>:
> El 02/02/12 13:50, Fjor escribió:
>>
>> ¡Hola! Simplemente rodea las declaraciones de las subredes
>> con un bloque shared-network con el nombre que quieras:
>>
>>  shared-network JUANITA {
>>         subnet 192.168.0.0 netmask 255.255.255.128 {
>>              option routers 192.168.0.191;
>>              option domain-servers 192.168.0.191;
>>              }
>>         subnet 192.168.1.0 netmask 255.255.255.128 {
>>              option routers 192.168.1.191;
>>              option domain-servers 192.168.1.191;
>>              }
>>          #---- etc
>>  }
>>
>> Funciona con el ISC DHCP versiones 3 y 4.
>>
>> Si me es posible te paso luego mi sistema de adm.de
>> direcciones, que uso para administrar 30+ subredes
>> en un único servidor dhcp con linux. La filosofía es
>> editar un único archivo plano
>>
>>   MAC         IP           nombre
>>   xxxxxxxxx   a.b.c.d   maq juanita
>>
>> y generar con un script el dhcpd.conf correspondiente.
>>
>> Saludos!
>> Fjor
>>
>> 2012/1/31 Fernando Rojas<fernandoro...@eneut.org>:
>>>
>>> Según este documentohttp://is.gd/J3Ut1e, no se pueden usar alias para
>>>
>>> definir distintas subredes sobre interfacer virtuales....
>>>
>>> Yo tengo esto:
>>> 2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP>  mtu 1500 qdisc pfifo_fast
>>> state
>>> UP qlen 1000
>>>    link/ether xxxx:xx:xx:Xx:xx brd ff:ff:ff:ff:ff:ff
>>>    inet 192.168.0.191/24 brd 192.168.0.255 scope global eth0
>>>    inet 192.168.1.191/24 brd 192.168.1.255 scope global eth0:1
>>>    inet 192.168.2.191/24 brd 192.168.2.255 scope global eth0:2
>>>    inet 192.168.3.191/24 brd 192.168.3.255 scope global eth0:3
>>>
>>>
>>> alguna idea para configurar un dhcp de manera que pueda yo escoger en
>>> base a
>>> la mac a qué red pertenecerán y las desconocidas mandarlas a una red
>>> especial?
>>
>>
> Ten go esto en el archivo de configuración:
>
> shared-network eneut {
>        # cero
>        subnet 192.168.0.0 netmask 255.255.255.0 {
>                option routers 192.168.0.253;
>                range 192.168.0.1 192.168.0.254;
>                }
>        # uno
>        subnet 192.168.1.0 netmask 255.255.255.0 {
>                range 192.168.1.1 192.168.1.254;
>                option routers 192.168.1.254;
>                }
>        # dos
>        subnet 192.168.2.0 netmask 255.255.255.0 {
>                range 192.168.2.1 192.168.2.254;
>                option routers 192.168.2.254;
>                }
>        # tres
>        subnet 192.168.3.0 netmask 255.255.255.0 {
>                range 192.168.3.1 192.168.3.254;
>                option routers 192.168.3.254;
>                }
>        }
>
> Esto con las  interfaces de red que mencioné al principio del hilo, me dice
> que no hay declaración para subred eth0:1, eth0:2
>



-- 
Caminar y caminar por la vereda del saber...
... de vez en cuando, mirar una estrella.

Francisco de Jesús Orozco Ruiz
Administración de Servicios de Red e Internet
Centro de Enseñanza Técnica Industrial - GDL

Responder a