Características de ICMP
RESUMEN Utilice las funciones del Protocolo de mensajes de control de Internet (ICMP) para diagnosticar problemas de red y comprobar la accesibilidad del dispositivo.
Use el Explorador de características para confirmar la compatibilidad de la plataforma y el lanzamiento de características específicas.
Mensajes de redireccionamiento de protocolo
La redirección ICMP, también conocida como redirección de protocolo, es un mecanismo utilizado por conmutadores y enrutadores para transmitir información de enrutamiento a los hosts. Los dispositivos utilizan mensajes de redireccionamiento de protocolo para notificar a los hosts en el mismo vínculo de datos de la mejor ruta disponible para un destino determinado.
- Descripción de los mensajes de redireccionamiento de protocolo
- Deshabilitar mensajes de redireccionamiento de protocolo
Descripción de los mensajes de redireccionamiento de protocolo
Los mensajes de redireccionamiento de protocolo informan a un host para que actualice su información de enrutamiento y envíe paquetes en una ruta alternativa. Supongamos que un host intenta enviar un paquete de datos a través de un conmutador S1 y S1 envía el paquete de datos a otro conmutador, S2. Además, supongamos que hay disponible una ruta directa desde el host a S2 (es decir, que el host y S2 están en el mismo segmento Ethernet). Luego, S1 envía un mensaje de redireccionamiento de protocolo para informar al host de que la mejor ruta para el destino es la ruta directa a S2. El host debe enviar paquetes directamente a S2 en lugar de enviarlos a través de S1. S2 sigue enviando el paquete original que recibió de S1 al destino previsto.
Consulte RFC-1122 y RFC-4861 para obtener más detalles sobre el redireccionamiento de protocolos.
-
Los conmutadores no envían mensajes de redireccionamiento de protocolo si el paquete de datos contiene información de enrutamiento.
-
Todos los conmutadores de la serie EX admiten el envío de mensajes de redireccionamiento de protocolo para tráfico IPv4 e IPv6.
Deshabilitar mensajes de redireccionamiento de protocolo
De forma predeterminada, los dispositivos envían mensajes de redireccionamiento de protocolo para el tráfico IPv4 e IPv6. Por razones de seguridad, es posible que desee deshabilitar el dispositivo para que no envíe mensajes de redireccionamiento de protocolo.
Para deshabilitar los mensajes de redireccionamiento de protocolo para todo el dispositivo, incluya la no-redirects
instrucción o no-redirects-ipv6
en el nivel de [edit system]
jerarquía.
-
Para el tráfico IPv4:
[edit system] user@host# set no-redirects
-
Para el tráfico IPv6:
[edit system] user@host# set no-redirects-ipv6
Para volver a habilitar el envío de mensajes de redireccionamiento en el dispositivo, elimine la instrucción (para tráfico no-redirects
IPv4) o la no-redirects-ipv6
instrucción (para tráfico IPv6) de la configuración.
Para deshabilitar los mensajes de redireccionamiento de protocolo por interfaz, incluya la no-redirects
instrucción en el nivel de [edit interfaces interface-name unit logical-unit-number family family]
jerarquía.
-
Para el tráfico IPv4:
[edit interfaces interface-name unit logical-unit-number] user@host# set family inet no-redirects
-
Para el tráfico IPv6:
[edit interfaces interface-name unit logical-unit-number] user@host# set family inet6 no-redirects
Pings
Los pings usan ICMP. Un ping correcto es cuando un dispositivo envía una solicitud de eco ICMP a un destino y el destino responde con una respuesta de eco ICMP. Sin embargo, puede haber situaciones en las que no desee que el dispositivo responda a las solicitudes de ping.
- Deshabilitar la respuesta del motor de enrutamiento a los paquetes ping de multidifusión
- Deshabilitar la dirección IP y las marcas de tiempo de los informes en las respuestas de ping
Deshabilitar la respuesta del motor de enrutamiento a los paquetes ping de multidifusión
De forma predeterminada, el motor de enrutamiento responde a las solicitudes de eco ICMP enviadas a direcciones de grupo de multidifusión. Al configurar el motor de enrutamiento para omitir los paquetes ping de multidifusión, puede evitar que personas no autorizadas descubran la lista de dispositivos perimetrales del proveedor (PE) en la red.
Para impedir que el motor de enrutamiento responda a estas solicitudes de eco ICMP, incluya la no-multicast-echo
instrucción en el nivel de [edit system]
jerarquía:
[edit system] user@host# set no-multicast-echo
Deshabilitar la dirección IP y las marcas de tiempo de los informes en las respuestas de ping
Cuando se ejecuta el ping
comando con la record-route
opción, el motor de enrutamiento muestra la ruta de los paquetes de solicitud de eco ICMP y las marcas de tiempo en las respuestas de eco ICMP de forma predeterminada. Mediante la configuración de las no-ping-record-route
opciones y no-ping-timestamp
, puede evitar que personas no autorizadas descubran información sobre el dispositivo perimetral del proveedor (PE) y su dirección de circuito cerrado.
Puede configurar el motor de enrutamiento para deshabilitar la configuración de la record-route
opción en el encabezado IP de los paquetes de solicitud de ping. Deshabilitar la record-route
opción impide que el motor de enrutamiento registre y muestre la ruta de los paquetes de solicitud de eco ICMP en la respuesta.
Para configurar el motor de enrutamiento para deshabilitar la configuración de la record route
opción, incluya la no-ping-record-route
instrucción en el [edit system]
nivel de jerarquía:
[edit system] user@host# set no-ping-record-route
Para desactivar la notificación de marcas de tiempo en las respuestas de eco de ICMP, incluya la no-ping-time-stamp
opción en el nivel de [edit system]
jerarquía:
[edit system] user@host# set no-ping-time-stamp
Mensajes de enfriamiento de origen
Cuando un dispositivo recibe demasiados datagramas o no deseados, puede enviar un mensaje de enfriamiento de origen al dispositivo de origen. El mensaje de extinción de origen indica al dispositivo de origen que reduzca la cantidad de tráfico que está enviando.
De forma predeterminada, el dispositivo reacciona a los mensajes de enfriamiento de origen ICMP. Para ignorar los mensajes de enfriamiento de origen de ICMP, incluya la no-source-quench
instrucción en el nivel jerárquico [edit system internet-options]
:
[edit system internet-options] no-source-quench;
Para dejar de ignorar los mensajes de enfriamiento de origen de ICMP, use la source-quench
instrucción:
[edit system internet-options] source-quench;
Vencimiento del tiempo de vida (TTL)
El valor de tiempo de vida (TTL) en un encabezado de paquete determina cuánto tiempo permanece el paquete viajando por la red. El valor TTL disminuye con cada dispositivo (o salto) por el que viaja el paquete. Cuando un dispositivo recibe un paquete con un valor TTL de 0, descarta el paquete. El mensaje de caducidad TTL se envía mediante ICMP.
Puede configurar el dispositivo para que utilice una dirección IPv4 como dirección de origen para los mensajes de error de caducidad de tiempo de vida (TTL) de ICMP. Esto significa que puede configurar la dirección de circuito cerrado como dirección de origen en respuesta a paquetes de error ICMP. Hacer esto es útil cuando no puede usar la dirección del dispositivo para fines de traceroute porque tiene direcciones IPv4 duplicadas en su red.
La dirección de origen debe ser una dirección IPv4. Para especificar la dirección de origen, utilice la ttl-expired-source-address source-address
opción en el nivel de [edit system icmp (System)]
jerarquía:
[edit system icmp] user@host# set ttl-expired-source-address source-address
Esta configuración solo se aplica a los mensajes de caducidad TTL de ICMP. Otros mensajes de respuesta de error ICMP siguen utilizando la dirección de la interfaz de entrada como dirección de origen.
Límite de velocidad del tráfico ICMP
Para limitar la velocidad a la que el motor de enrutamiento puede generar mensajes ICMPv4 o ICMPv6 y enviarlos al motor de enrutamiento, incluya la instrucción de limitación de velocidad adecuada en el nivel de [edit system internet-options]
jerarquía.
-
Para IPv4:
[edit system internet-options] icmpv4-rate-limit bucket-size bucket-size packet-rate packet-rate
-
Para IPv6:
[edit system internet-options] icmpv6-rate-limit bucket-size bucket-size packet-rate packet-rate
Mensajes de error de ICMP de límite de velocidad
De forma predeterminada, los mensajes de error ICMP para paquetes IPv4 e IPv6 que no han caducado TTL se generan a una velocidad de 1 paquete por segundo (pps). Puede ajustar esta velocidad a un valor que decida que proporciona suficiente información para su red sin causar congestión en la red.
Para los paquetes IPv4 o IPv6 caducados TTL, la velocidad de los mensajes de error ICMP no es configurable. Se fija en 500 pps.
- Por qué limitar la velocidad de los mensajes de error de ICMPv4 e ICMPv6
- Cómo limitar los mensajes de error de ICMPv4 e ICMPv6
Por qué limitar la velocidad de los mensajes de error de ICMPv4 e ICMPv6
Un ejemplo de caso de uso para ajustar el límite de velocidad es un centro de datos que proporciona servicios web. Supongamos que este centro de datos tiene muchos servidores en la red que utilizan tramas jumbo con una MTU de 9100 bytes cuando se comunican con hosts a través de Internet. Estos otros hosts requieren una MTU de 1500 bytes. A menos que se aplique un tamaño máximo de segmento (MSS) en ambos lados de la conexión, un servidor podría responder con un paquete demasiado grande para transmitirse a través de Internet sin fragmentarse cuando llegue al enrutador perimetral del centro de datos.
Dado que las implementaciones de TCP/IP suelen tener habilitada la detección de MTU de ruta de forma predeterminada con el dont-fragment
bit establecido en 1, un dispositivo de tránsito descartará un paquete demasiado grande en lugar de fragmentarlo. El dispositivo devolverá un mensaje de error ICMP que indica que el destino era inalcanzable porque el paquete era demasiado grande. El mensaje también proporcionará la MTU que se requiere donde se produjo el error. El host de envío debe ajustar el MSS de envío para esa conexión y reenviar los datos en tamaños de paquete más pequeños para evitar el problema de fragmentación.
A altas velocidades de interfaz de núcleo, el límite de velocidad predeterminado de 1 pps para los mensajes de error puede no ser suficiente para notificar a todos los hosts cuando hay muchos hosts en la red que requieren este servicio. La consecuencia es que los paquetes salientes se descartan silenciosamente. Esta acción puede desencadenar retransmisiones adicionales o comportamientos de retroceso, dependiendo del volumen de solicitudes que el enrutador de borde del centro de datos esté manejando en cada interfaz orientada hacia el núcleo.
En esta situación, puede aumentar el límite de velocidad para permitir que un mayor volumen de paquetes de gran tamaño llegue a los hosts de envío. (Agregar más interfaces orientadas al núcleo también puede ayudar a resolver el problema).
Cómo limitar los mensajes de error de ICMPv4 e ICMPv6
Aunque el límite de velocidad se configura en el nivel de jerarquía, no es un límite de todo el [edit chassis]
chasis. En su lugar, se aplica el límite de velocidad por familia de interfaces. Esto significa, por ejemplo, que varias interfaces físicas configuradas con family inet
pueden generar simultáneamente los mensajes de error ICMP a la velocidad configurada.
Este límite de velocidad solo surte efecto para el tráfico que dura 10 segundos o más. El límite de velocidad no se aplica al tráfico con una duración más corta, como 5 segundos o 9 segundos.
-
Para configurar el límite de velocidad para ICMPv4, utilice la
icmp
instrucción:[edit chassis] user@host# set icmp rate-limit rate-limit
A partir de Junos OS versión 19.1R1, la velocidad máxima aumentó de 50 pps a 1000 pps.
-
Para configurar el límite de velocidad para ICMPv6, utilice la
icmp6
instrucción:[edit chassis] user@host# set icmp6 rate-limit rate-limit
También debe tener en cuenta que el valor límite de velocidad puede interactuar con su configuración de protección DDoS. El valor de ancho de banda predeterminado para los paquetes excepcionales que superan la MTU es de 250 pps. La protección DDoS marca una infracción cuando el número de paquetes supera ese valor. Si establece el límite de velocidad más alto que el valor de ancho de banda actual mtu-exceeded
, debe configurar el valor de ancho de banda para que coincida con el límite de velocidad.
Por ejemplo, supongamos que establece el límite de velocidad ICMP en 300 pps:
user@host# set chassis icmp rate-limit 300
Debe configurar la protección mtu-exceeded bandwidth
DDoS para que coincida con ese valor.
user@host# set system ddos-protection protocols exceptions mtu-exceeded bandwidth 300