Hola buenas! Pues nada, esta receta formará parte (espero) de una mayor que explicará como instalar una red VPN entre oficinas a través de Internet. Para llevar a cabo esto hay que empezar pasito a pasito, el primer paso será el siguiente: configurar la red local de cada oficina.
El protocolo DHCP (o Dynamic Host Configuration Protocol, o protocolo de configuración dinámica de los equipos) nos permitirá definir una configuración de red local en un sólo equipo, de manera que éste equipo configurará a los equipos que se lo pidan.
A grandes rasgos el invento funciona así:
El funcionamiento es muy sencillo pero tiene pequeños problemas con sus pequeñas soluciones: pueden existir varios servidores DHCP, en cuyo caso el cliente selecciona la configuración ofrecida por el principal y si ninguno se definió como principal, elige cualquiera de las dos configuraciones. Además los DHCPRENEWAL los enviará sólo al servidor del que ha cogido la configuración.
Nosotros, en Debian usaremos el dhcp3-server, así que:
# aptitude install dhcp3-server
Una vez instalado no funciona ya que no tiene definido nada.
Lo primero que debemos saber es: ¿en qué interfaz tiene que escuchar?. Por defecto nos vendrá configurado para escuchar peticiones de cualquiera de las interfaces. Si queremos cambiar esto tenemos que modificar el archivo /etc/default/dhcp3-server, que tiene el siguiente aspecto:
# Defaults for dhcp initscript # sourced by /etc/init.d/dhcp # installed at /etc/default/dhcp3-server by the maintainer scripts # # This is a POSIX shell fragment # # On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. "eth0 eth1". INTERFACES=""
Y pondremos eth0 o las que sean (separadas por espacios) entre las comillas. Habiendo configurado esto sólo nos queda configurar nuestra red. Hagámoslo mejor en otro apartado, que son gratis... 
Vale, vamos a configurar la subred... ¡pero primero tendremos que saber qué es lo que queremos! aunque nosotros podríamos tener la subred que quisiéramos... esto no es recomendable, ya que los señores tan listos de la IANA nos recomiendan una serie valores posibles para nuestra red, estos son:
Nosotros vamos a elegir 192.168.X.X, además, como queremos tener 255 subredes (por si las moscas) haremos lo siguiente: cambiaremos nuestra máscara de red por 255.255.255.0, esto quiere decir que tendremos IP's de la forma: 192.168.Y.X donde Y será la subred y X el host.
Una vez que sabemos lo que queremos (si no entiendes bien esto de las máscaras de red y tal puedes hacer dos cosas: pasar de ello o desempolvar los apuntes de redes) tenemos que ponernos manos a la obra:
auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255
Siendo eth1 la interfaz de la red local.
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.254;
}
Notad que la máscara y el 192.168... coincide con la configuración manual de la interfaz. También podéis ver que comenzamos a dar IP's a partir de la 10, ¿por qué? pues símplemente para reservarnos unas cuantas IP's a posibles servidores de nuestra red local
. Como último detalle, observad que la IP x.x.x.255 tampoco la entregamos porque esa IP es especial y se reserva para los broadcast.
Con esto, reiniciamos el servidor dhcp y ya estará listo para asignar nuevas direcciones IP:
# /etc/init.d/dhcp3-server restart
Si nos vamos a los clientes y reiniciamos alguno comprobaremos dos cosas:

¿Y esto? pues muy sencillo... tenemos dirección IP, pero no tenemos ni puerta de salida (o gateway) ni servidores DNS configurados en el sistema. Podemos ir cliente a cliente configurándolo... ¡o podemos decir al servidor DHCP que lo configure también él! y para hacerlo nada más fácil que modificar nuestra subred definida anteriormente y añadir estas opciones:
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.254;
# Nuestro servidor DNS primario (nos lo da el ISP)
option domain-name-servers 194.179.1.101;
# Nuestra puerta de enlace a internet
option routers 192.168.0.1;
# Da igual, pero como lo sabemos... lo ponemos!
option broadcast-address 192.168.0.255;
}
Con esto ya lo tenemos listo
. Si los clientes no tienen acceso a internet es por lo siguiente: la puerta de enlace que configura nuestro ejemplo es la 192.168.0.1, que es el equipo donde hemos instalado nuestro servidor DHCP. Si este equipo no tiene configurado el enrutado NAT, no puede funcionar de puerta de enlace. Configurar eso será motivo de una futura receta. Por ahora ya tenéis vuestro servidor DHCP configurado y los equipos de vuestra red local también
.
Pues la misma documentación del paquete y los comentarios en los archivos de configuración del mismo... si es que es muy facilito! 
Comentarios
Interesante receta
Personalmente me gusta mucho el servidor DHCP que viene con dnsmasq, aunque no sé si es lo suficientemente escalable para “cosas serias” (yo diría que sí). Lo mejor de dnsmasq aparte de su sencillez, es que toda la documentación que necesitas para cualquier feature que incorpora (que no son pocas) está en el propio fichero de configuración que viene por defecto, con ejemplos y todo.
No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.