Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Condiciones de coincidencia flexibles del filtro de firewall

Las condiciones de coincidencia del filtro de firewall estándar varían según la familia de protocolos del tráfico que se coincide. Por ejemplo, los términos disponibles para el tráfico de protocolo de puente son diferentes de los disponibles para las familias de protocolos inet o inet6. Sin embargo, los campos disponibles para la coincidencia dentro de cada familia de protocolos son fijos o predefinidos. Esto significa que los filtros solo pueden coincidir en patrones dentro de esos campos predefinidos.

Mediante condiciones de coincidencia flexibles, se pueden construir filtros de firewall que inicien la coincidencia en ubicaciones de capa 2, capa 3, capa 4 o carga útil. A partir de ahí, se pueden especificar criterios de desplazamiento adicionales, lo que permite coincidencias de patrones en ubicaciones personalizadas definidas por el usuario dentro de un paquete.

Los términos de filtro de coincidencia flexible se aplican a las interfaces MPC o MIC como filtros de entrada o salida, al igual que cualquier otro término de filtro de firewall. Los términos de filtro de coincidencia flexibles también se pueden crear como plantillas en el nivel jerárquico .[edit firewall] A continuación, se puede hacer referencia a estas plantillas dentro de un plazo de coincidencia flexible.

En el caso de los enrutadores de la serie MX, las condiciones de coincidencia flexible solo se admiten con MPC o MIC. En el caso de entornos en los que se instalan FPC, PIC o DPC junto con MPC o MIC, asegúrese de aplicar únicamente los criterios de filtro de firewall de coincidencia flexible a las interfaces MPC o MIC.

Nota:

En el caso de los enrutadores de la serie MX con MPC, debe inicializar el contador de filtros para los filtros de coincidencia solo Trio en la MIB caminando por la MIB SNMP correspondiente. Por ejemplo, para cualquier filtro que esté configurado o cambiado con respecto a sus filtros de solo Trio, debe ejecutar un comando como el siguiente: show snmp mib walk (ascii | decimal) object-id. Esto obliga a Junos a aprender los contadores de filtro y asegurarse de que se muestran las estadísticas de filtro (esto se debe a que es posible que el primer sondeo para filtrar estadísticas no muestre todos los contadores). Los filtros de coincidencia solo Trio son aquellos que incluyen al menos una condición o acción de coincidencia que solo es compatible con el chipset Trio.

Esta guía se aplica a todos los filtros de firewall.enhanced-mode También se aplica a los términos flexibles del filtro de coincidencia para el rango de desplazamiento o la máscara de desplazamiento, y las condiciones de coincidencia del filtro de firewall para el tráfico IPv6 con cualquiera de las siguientes condiciones de coincidencia:Condiciones de coincidencia del filtro de firewall para el tráfico IPv4gre-keyCondiciones de coincidencia del filtro de firewall para el tráfico IPv6 , , .payload-protocolextension headersis_fragment También se aplica a los filtros con cualquiera de los siguientes :Acciones de finalización del filtro de firewall o , o cualquiera de las siguientes opciones :encapsulatedecapsulateAcciones de no terminación del filtro de firewall , y .policy-mapclear-policy-map

Jerarquía de instrucciones

Los términos flexibles del filtro de coincidencia están disponibles en tres variaciones, como se muestra en .Tabla 1 La variación se configura en el nivel de jerarquía.flexible-match[edit firewall] Se utiliza para definir plantillas de coincidencia flexibles. Los y se configuran en la jerarquía.flexible-filter-match-maskflexible-match-range[edit firewall family [inet|inet6|bridge|ethernet-switching|ccc|vpls] filter <filter-name> term <term-name> from] Utilice el filtro para conmutadores EX9200.family ethernet-switching

Tipos flexibles de coincidencia de filtros

Tabla 1: Tipos flexibles de coincidencia de filtros

Tipo de coincidencia de filtro flexible

Atributos disponibles

Description

flexible-match

<name>

Cree una plantilla de coincidencia flexible denominada atributo .<name>

 

bit-length

Longitud de los datos que deben coincidir en bits, no necesaria para la entrada de cadena (0..32)

Para los conmutadores QFX5120 y EX4650, 16 y 32 son las únicas longitudes de bits válidas.

bit-offset

Desplazamiento de bits después del desplazamiento (match-start + byte) (0..7)

byte-offset

Desplazamiento de bytes después del punto de inicio de la coincidencia

match-start

Punto de inicio para que coincida en el paquete

flexible-match-mask

bit-length

Longitud de los datos que deben coincidir en bits, no necesaria para la entrada de cadena (0..128)

bit-offset

Desplazamiento de bits después del desplazamiento (match-start + byte) (0..7)

byte-offset

Desplazamiento de bytes después del punto de inicio de la coincidencia

flexible-mask-name

Seleccione una coincidencia flexible en el campo de plantilla predefinido. Obligatorio a menos que esté configurado.match-start

mask-in-hex

Enmascare los bits en los datos del paquete para que coincidan.

match-start

Punto de inicio para que coincida en paquete. Obligatorio a menos que esté configurado.flexible-mask-name

prefix

Datos de valor/cadena que se van a coincidir.

flexible-match-range

bit-length

Longitud de los datos que se van a emparejar en bits. (0..32) Obligatorio a menos que esté configurado.flexible-range-name

bit-offset

Desplazamiento de bits después del desplazamiento (match-start + byte). (0..7)

byte-offset

Desplazamiento de bytes después del punto de inicio de la coincidencia

flexible-range-name

Seleccione una coincidencia flexible de la plantilla predefinida.

match-start

Punto de inicio para que coincida en paquete. Obligatorio a menos que esté configurado.flexible-range-name

range

Rango de valores que deben coincidir.

range-except

Rango de valores que no se van a coincidir.

Ubicaciones de inicio de coincidencia de filtro flexible

Los términos flexibles del filtro de coincidencia se construyen proporcionando una ubicación de inicio o un punto de anclaje dentro del paquete. Las ubicaciones de inicio pueden ser cualquiera de: capa-2, capa-3, capa-4 o carga útil, dependiendo de la familia de protocolos en uso. Muestra las ubicaciones de inicio de coincidencia de filtros flexibles disponibles por familia de protocolos.Tabla 2 Utilice estas ubicaciones de inicio disponibles como ubicaciones para los términos del filtro de coincidencia flexible.match-start

Desde estas ubicaciones de inicio, se pueden utilizar desplazamientos de bytes y bits específicos para permitir que el filtro coincida con patrones en ubicaciones muy específicas dentro del paquete.

Tabla 2: Ubicaciones de inicio de coincidencia de filtro flexible

Familia de protocolos

Ubicaciones de inicio disponibles

inet

layer-3, layer-4 and payload

Para los conmutadores QFX5120 y EX4650, en Junos versión 20.1R1 se agregó compatibilidad con filtros de coincidencia flexibles de capa 2 y capa 3 (únicamente).

inet6

layer-3, layer-4 and payload

Para los conmutadores QFX5120 y EX4650, en Junos versión 20.1R1 se agregó compatibilidad con filtros de coincidencia flexibles de capa 2 y capa 3 (únicamente).

bridge

layer-2, layer-3, layer-4 and payload

ccc

layer-2, layer-3, layer-4 and payload

mpls

layer-3 and payload

vpls

layer-2, layer-3, layer-4 and payload

ethernet-switching

(Conmutadores EX9200) layer-2, layer-3, layer-4 and payload

Para los conmutadores QFX5120 y EX4650, en Junos versión 20.1R1 se agregó compatibilidad con filtros de coincidencia flexibles de capa 2 y capa 3 (únicamente). A continuación encontrará un ejemplo del uso de un desplazamiento de paquete de capa 2 y una longitud de coincidencia.

Ejemplos de coincidencia de filtros flexibles

En el ejemplo siguiente se ilustra el uso y el contexto de .flexible-match-mask

El especifica para qué plantilla predefinida se usa para la condición de coincidencia flexible.<mask-name>flexible-mask-name Se pueden definir plantillas para especificar en qué lugar (posición) del paquete se debe ejecutar la condición de coincidencia flexible.

El for está en formato hexadecimal.<mask>mask-in-hex Por ejemplo, una máscara configurada de especifica una coincidencia para los primeros cuatro bits del primer byte (como se refiere a ), y para los primeros seis bits del segundo byte.0xf0fc<mask-name> Si el paquete es un paquete IPv4 y hace referencia a los dos primeros bytes del encabezado L3, la búsqueda se realiza para el campo de versión IP y el campo DSCP.<mask-name> Como otro ejemplo, una máscara configurada especifica una búsqueda para todo el primer byte y para dos bits desde el segundo byte.0xffc0 Si el hace referencia a los dos primeros bytes del encabezado L3 y el paquete es un paquete IPv6, se especifica el campo Versión IP y DSCP en el campo Clase de tráfico.<mask-name>

El especificado para es una cadena ASCII.<pattern>prefix Si los dos primeros caracteres son , la cadena se procesa como un número hexadecimal que codifica los bits apropiados.0x Por ejemplo, el prefijo configurado en combinación con mask y que hace referencia a los dos primeros bytes en el encabezado L3, indica una búsqueda en los primeros cuatro bits (el campo de versión es igual a 4) y en el campo DSCP IPv4 (DSCP es igual a cs6).0x40c00xf0fc<mask-name>01001100 00 O bien, utilizando el prefijo configurado en combinación con la máscara y haciendo referencia a los dos primeros bytes del encabezado L3, especifica una búsqueda en los primeros cuatro bits (el campo de versión es igual a 6) y en el campo DSCP IPv6 (DSCP es igual a cs6).0x6c000xffc0<mask-name>01101100 00

El primer ejemplo define una plantilla de máscara que selecciona los dos primeros bytes (16 bits) del encabezado L3 para una coincidencia flexible:

En el siguiente ejemplo se define una plantilla de máscara que selecciona del tercer al sexto byte (32 bits) de la carga del paquete para una coincidencia flexible:

En este ejemplo se muestra una coincidencia de caracteres ASCII para la cadena JNPR (caracteres ASCII: , , , ) en el tercer a sexto byte de la carga del paquete.0x4a0x4e0x500x52 El filtro utiliza la plantilla de máscara definida en el ejemplo anterior.FM-FOUR-PAYLOAD-BYTES

En este ejemplo se muestra un filtro ccc de familia que busca DSCP igual a y DSCP , independientemente de si los paquetes encapsulados son IPv4 o IPv6.cs6ef Utiliza la plantilla de máscara definida en el primer ejemplo.FM-FIRST-TWO-L3-BYTES

En este ejemplo se muestra cómo usar una longitud de coincidencia, a partir de un desplazamiento de paquetes de capa 2, en un filtro de firewall para un dispositivo QFX5120-32C, QFX5120-48Y o EX4650 que ejecuta Junos versión 20.1R1. Aquí, usamos una longitud de bits de 32 bits y la familia ( y también son compatibles, al igual que usar un desplazamiento de capa 3).ethernet-switchinginetinet6

Tabla de historial de cambios

La compatibilidad de la función depende de la plataforma y la versión que utilice. Utilice Feature Explorer a fin de determinar si una función es compatible con la plataforma.

Liberación
Descripción
23.2R1
A partir de la versión 23.2R1 de Junos OS, admitimos filtros de coincidencia flexibles de capa 2 y capa 3 (únicamente) en los conmutadores EX4100-24P, EX4100-24T, EX4100-24MP, EX4100-48P, EX4100-48T, EX4400-24T, EX4400-24X y EX4400-48F.
20.1R1
Para los conmutadores QFX5120 y EX4650, en Junos versión 20.1R1 se agregó compatibilidad con filtros de coincidencia flexibles de capa 2 y capa 3 (únicamente).