Mostrando entradas con la etiqueta DHCP. Mostrar todas las entradas
Mostrando entradas con la etiqueta DHCP. Mostrar todas las entradas

lunes, 31 de diciembre de 2018

El comando ip helper-address

ip helper-address

Muchos estamos habituados a implementar servicios DHCP proxy, y en dispositivos Cisco IOS eso significa utilizar el comando ip helper-address. Sin embargo, este comando ofrece mucho más que sencillamente un servicio de proxy para servicios DHCP.

¿Qué es un DHCP proxy?
En redes extensas o con múltiples subredes en la que se debe atender solicitudes de  clientes DHCP es habitual que el servidor DHCP se encuentre centralizado.

Sin embargo esto implica una dificultad ya que las solicitudes DHCP se realizan en formato de broadcast (en redes IPv4), y como todos sabemos, los paquetes de broadcast no son reenviados por los dispositivos de capa 3. 

Esto significa que una solicitud DHCP no va más allá del segmento de red en el cual se encuentra el cliente que la genera, ¿cómo podría entonces alcanzar un servidor que se encuentra en una red o segmento de red diferente?

Para esto se utiliza un DHCP proxy. El proxy recibirá la solicitud en formato de broadcast y la convertirá en un paquete unicast cuya dirección destino será la del servidor. 

De esta manera la solicitud se convierte en completamente ruteable y podrá alcanzar el servidor con la única condición de que exista ruta que permita llegar a esa dirección de destino.

ip helper-addreess
En redes Cisco IOS esto se puede implementar utilizando el comando ip helper-address en cliente que requiere una configuración IP utilizando DHCP. Sin embargo este comando no solamente reenvía solicitudes DHCP.

Varios servicios críticos para el funcionamiento de la red utilizan broadcast como DHCP: TACACS, DNS, TFTP, NetBios, etc.; y es común que en redes complejas y extensas estos la interfaz que opera como default-gateway del segmento de red en el que se encuentra el servidores se encuentren en un área de red específica, en otro segmento de red. 

Esto implica que es necesario enrutar solicitudes de todos estos servicios, que en su definición original se propagan por broadcast.

Esta es la situación a la que responde el comando helper-address; permite que los routers actúen como proxies al reenviar solicitudes de estos servicios que corren sobre UDP.

El router recibe las solicitudes UDP en formato de broadcast y las reenvía como paquetes unicast a una dirección IP específica. También puede reenviarlas a una red o subred en particular.

El comando ip helper-address reenvía por defecto 8 servicios UDP: Time, TACACS, DNS, DHCP server, DHCP client, TFTP, NetBios name service y NetBios datagram service.

Table 2-10 Default Forward UDP Services


Service Port
Time 37
TACACS 49
DNS 53
BOOTP/DHCP Server 67
BOOTP/DHCP Client 68
TFTP 69
NetBIOS name service 137
NetBIOS datagram service 138
Tabla obtenida de: http://www.ciscopress.com/articles/article.asp?p=330807&seqNum=9


Router#configure terminal
Router(config)#interface GigabitEthernet 0/0
Router(config-if)#ip helper-address 172.18.1.3

    Reenvía el tráfico de servicios UDP que se recibe a través de la interfaz GigabitEthernet a la dirección 172.18.1.3 . Este comando se puede repetir si es necesario direccionar hacia más de un servidor.
Router(config-if)#ip helper-address 172.18.1.255
    Reenvía el tráfico de servicios UDP que se recibe a través de la interfaz Fastethernet a la subred 172.18.1.0/24. Esta es la forma de aplicación cuando los diferentes servicios no están en una única dirección IP sino en varias de un mismo segmento de red, como ocurre en una granja de servidores.
Router(config-if)#interface GigabitEthernet 0/1
Router(config-if)#ip directed-broadcast
    Cuando se direccionan los servicios UDP a una granja de servidores, es preciso indicar a la interfaz del router que da acceso a la graja de servidores que los servicios que recibe redirigidos a una dirección de broadcast (p.e. 172.18.1.255), debe encapsularlos como broadcast de capa 2 para que entonces puedan ver la petición todos los nodos de la subred.
Router(config-if)#exit
Router(config)#ip forward-protocol udp 517 
    Agrega a la lista de 8 servicios que se reenvían por defecto, el tráfico de UDP que está dirigido al puerto 517.
Router(config)#no ip forward-protocol udp 49 
    Retira de la lista de servicios que se reenvían, el tráfico de TACACS (puerto 49).

Esta configuración puede verificarse utilizando el comando show ip interfaces. 

Post Relacionado:

Tomado de: http://librosnetworking.blogspot.com/2016/05/ip-helper-address.html

lunes, 21 de diciembre de 2015

Configurando DHCP Snooping

El DHCP Snooping es una característica de seguridad que provee seguridad filtrando los mensajes DHCP "no confiables" y construyendo y manteniendo una tabla de asociaciones DHCP Snooping.

Un mensaje "no confiable" es un mensaje que es recibido desde fuera de la red o del Firewall y que puede ser parte de un ataque contra tu red.

La tabla de asociaciones DHCP Snooping contiene las direcciones MAC, direcciones IP, tiempo de arrendamiento, Tipo de asociación, número de VLAN e Interface que corresponde a las interfaces locales "no confiables" de un Switch, no contiene información de los hosts conectados a una interface "confiable".



En términos de seguridad una interface "no confiable" es una interface que está configurada para recibir mensajes desde fuera de la red local o actúa como un Firewall. Una interface "confiable" es una interface configurada para recibir solamente mensajes desde dentro de la red.

El DHCP Snooping actúa como un firewall entre los hosts "no confiables" y los servidores DHCP. 

También nos permite contar con una forma de diferenciar entre interfaces "no confiables" conectadas a usuarios finales e interfaces "confiables" conectadas a los servidores DHCP o a otro Switch.

Es posible configurar DHCP Snooping por Switch y por VLANs. Cuando se habilita el DHCP Snooping en un switch, una interface actúa como un bridge de capa 2 interceptando y salvaguardando los mensajes DHCP que se dirigen a una VLAN de capa 2. Cuando se habilita DHCP Snooping en una VLAN, el Switch actúa como un puente de capa 2 dentro del dominio de la VLAN.

El DHCP Snooping es necesario para prevenir los ataques de tipo "man-in-the-middle" en nuestras redes.  

Las redes modernas tienen el potencial para que un atacante intente instalar un DHCP Server falso y responder a los mensajes DHCPDISCOVER antes de que lo haga una servidor DHCP legítimo. El DHCP Snooping permite a los Switches en la red "confiar" en el puerto (la interface) al que está conectado el servidor DHCP legítimo (podría ser un puerto troncal) y "desconfiar" de los demás puertos.



También se mantiene una lista de asociaciones de direcciones DHCP que se logra inspeccionando el tráfico que fluye entre los clientes y el servidor DHCP, el cual provee certeza de quienes son los verdaderos hosts. La información de asociación recolectada por el DHCP Snooping es usada por otras características de seguridad como IPSG y DAI.



Los clientes se conectan a puertos "no confiables" (untrusted), todos los puertos son "no confiables" por defecto cuando se habilita el DHCP Snooping. Cuando la PC del cliente envía un mensaje DHCPDISCOVER y el DHCP Snooping está habilitado, el Switch solamente va a enviar el mensaje de broadcast DHCP a los puertos "confiables" (trusted).

En el ejemplo de la topología el Switch de distribución está actuando como DHCP Server. Un puerto "confiable" es el único puerto que tiene permitido enviar mensajes de repuesta DHCP como el DHCPOFFER.

Configurando DHCP Snooping en el Switch

Cuando se configura DHCP Snooping en el Switch, se está configurando el Switch para diferenciar entre interfaces "no confiables" e interfaces "confiables". Es necesario habilitar globalmente el DHCP Snooping antes de poder usarlo en una VLAN. Es necesario habilitar el DHCP Snooping independientemente de otras características de DHCP.
Una vez que está habilitado el DHCP Snooping, todos los comandos de configuración de opciones DHCP relay quedan deshabilitados, esto incluye a los siguientes comandos:

•ip dhcp relay information check
•ip dhcp relay information policy
•ip dhcp relay information trusted
•ip dhcp relay information trust-all

Para configurar DHCP Snooping puede usar estos comandos:



Comando

Propósito

1 

Switch(config)# ip dhcp snooping 

Habilita DHCP snooping globalmente. Puede usar la palabra clave no para deshabilitar el DHCP snooping.

2 

Switch(config)# ip dhcp snooping vlan number 
[number] | vlan {vlan range}]

Habilita DHCP snooping en una VLAN o en un rango VLAN

3 

Switch(config-if)# ip dhcp snooping trust

Configura la interface como "confiable".

Puede usar la palabra clave no para configurar una interface para recibir mensajes como cliente "no cofiable".

4 

Switch(config-if)# ip dhcp snooping limit rate 
rate

Configura el numero de paquetes DHCP por segundo (pps) que una interface puede permitir.1

5 

Switch(config)# end 

Sale del modo de configuración.

6 

Switch# show ip dhcp snooping 

Verifica la configuración de DHCP Snooping.


-----------------------
Post basado en el artículo: http://www.networksbaseline.in/search/label/DHCP Con aportes del editor del Blog y de las páginas:

http://www.cisco.com/c/en/us/products/collateral/switches/catalyst-6500-series-switches/prod_white_paper0900aecd802ca5d6.html

http://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst4500/12-2/25ew/configuration/guide/conf/dhcp.html#wp1073418

Traducido por José R. Torrico - Instructor Cisco Networking Academy

domingo, 21 de junio de 2015

DHCP Relay en Cisco IOS

Por Oscar Gerometta

Dado que el inicio de la operación del protocolo DHCP se realiza sin contar una dirección de origen y utilizando broadcast como destino, las solicitudes (el discovery generado por el cliente DHCP) no son de suyo ruteables hacias otras subredes. 

De aquí que en principio el protocolo DHCP supone que el servidor y el cliente están conectados a la misma red o subred.

Cuando se desea utilizar servidores DHCP que se encuentran alojados en una red o subred diferente se puede utilizar un agente DHCP relay. 

Un DHCP relay es un dispositivo que recibe las solicitudes de los clientes en formato de broadcast y las reenvía como unicast a la dirección del servidor DHCP.

  • DHCP Discovery.
    El cliente DHCP envía una solicitud en formato de broadcast.
  • DHCP Relay.
    El agente DHCP relay que recibe el broadcast lo retransmite a uno o más servidores utilizando unicast e incluyendo su dirección como dirección de gateway.
  • DHCP Offer.
    El servidor utiliza la dirección de gateway que recibe en la solicitud para determinar a qué subred pertenece el host solicitante y asigna entonces una configuración que corresponda esa subred.
    El servidor DHCP reserva una dirección IP para el cliente y envía la respuesta en un paquete unicast a la dirección del gateway, que luego lo reenvía a la red local.
  • DHCP Request.
    El cliente responde en formato broadcast realizando una solicitud explícita de la configuración ofrecida por el servidor.
    El agente DHCP relay interviene nuevamente reenviando la información al servidor DHCP.
  • DHCP Acknowledgement.
    Se envía un paquete en formato unicast al DHCP relay que luego lo reenvía al cliente, incluyendo la información de configuración que el cliente ha aceptado.
    Esto completa el proceso.
En estos casos el servidor DHCP responde al DHCP relay y éste se ocupa de reenviarlo al cliente DHCP.

Configuración de un router IOS como DHCP relay

El servicio de DHCP relay se habilita en la interfaz de capa 3 más cercana al cliente DHCP (usualmente, la que opera como default-gateway de la red o subred).

En la configuración es necesario especificar la dirección IP de uno o más servidores DHCP que han de responder las solicitudes. 

Si hay varios servidores DHCP en una misma subred se puede especificar directamente la dirección reservada de subred, de este modo responderá cualquiera de los servidores DHCP de esa subred.

Router#configure terminal
Router(config)#interface GigabitEthernet 0/0
Router(config-if)#ip helper-address [IP servidor DHCP]




Documentación de referencia:


Fuente: Mis libros de Networking