EN ESTA PÁGINA
Hacer coincidir condiciones para combinaciones o valores comunes de campo de bits
Coincidencia en un solo valor de campo de bits o alias de texto
Coincidencia en varios valores de campo de bits o alias de texto
Coincidencia en el OR lógico de dos valores de campo de bits
Coincidencia en el AND lógico de dos valores de campo de bits
El filtro de firewall coincide con las condiciones según los valores de campo de bits
Hacer coincidir condiciones para valores de campo de bits
Tabla 1 enumera las condiciones de coincidencia del filtro de firewall que se basan en si determinados campos de bits de un paquete están establecidos o no. La segunda y tercera columnas enumeran los tipos de tráfico para los que se admite la condición de coincidencia.
Condición de coincidencia de campo de bits |
Valores de coincidencia |
Familias de protocolos para filtros de firewall sin estado estándar |
Familias de protocolos para filtros de servicio |
---|---|---|---|
fragment-flags flags |
Valores hexadecimales o alias de texto para el campo de indicadores de fragmentación IP de tres bits en el encabezado IP. |
family inet |
family inet |
fragment-offset value |
Valores hexadecimales o alias de texto para el campo de desplazamiento de fragmentos de 13 bits del encabezado IP. |
family inet |
family inet |
tcp-flags value† |
Valores hexadecimales o alias de texto para los 6 bits de orden bajo del campo Indicadores TCP de 8 bits en el encabezado TCP. |
family inetfamily inet6family vplsfamily bridge |
family inetfamily inet6 |
† Junos OS no comprueba automáticamente el primer fragmento de bit cuando hace coincidir los indicadores TCP para el tráfico IPv4. Para comprobar el primer fragmento de bit solo para tráfico IPv4, utilice la condición de coincidencia.first-fragment |
Hacer coincidir condiciones para combinaciones o valores comunes de campo de bits
Describe las condiciones de coincidencia del filtro de firewall que se basan en si ciertos valores utilizados habitualmente o combinaciones de campos de bits en un paquete están establecidos o no.Tabla 2
Puede utilizar sinónimos de texto para especificar algunas coincidencias comunes de campos de bits. En el ejemplo anterior, puede especificar como la misma condición de coincidencia.tcp-initial
Algunas de las condiciones de coincidencia de rango numérico y campo de bits permiten especificar un sinónimo de texto. Para obtener una lista completa de sinónimos:
Si utiliza la interfaz J-Web, seleccione el sinónimo de la lista correspondiente.
Si utiliza la CLI, escriba un signo de interrogación () después de la instrucción.?from
Condición de coincidencia |
Description |
Familias de protocolos para filtros de firewall sin estado estándar |
Familias de protocolos para filtros de servicio |
---|---|---|---|
first-fragment |
Alias de texto para la condición de coincidencia de campo de bits , que indica el primer fragmento de un paquete fragmentado.fragment-offset 0 |
family inet |
family inet |
is-fragment |
Alias de texto para la condición de coincidencia de campo de bits , que indica un fragmento final de un paquete fragmentado.fragment-offset 0 except |
family inet |
family inet |
tcp-established |
Alias para la condición de coincidencia de campo de bits , que indica una sesión TCP establecida, pero no el primer paquete de una conexión TCP.tcp-flags "(ack | rst)" |
family inetfamily inet6 |
— |
tcp-initial |
Alias para la condición de coincidencia de campo de bits , que indica el primer paquete de una conexión TCP, pero no una sesión TCP establecida.tcp-flags "(!ack & syn)" |
family inetfamily inet6 |
— |
Operadores lógicos para valores de campo de bits
enumera los operadores lógicos que puede aplicar a valores de campo de bits único al especificar condiciones de coincidencia de filtro de firewall sin estado.Tabla 3 Los operadores se enumeran en orden, de mayor a menor prioridad. Las operaciones son asociativas de izquierda, lo que significa que las operaciones se procesan de izquierda a derecha.
Orden de precedencia |
Operador lógico de campo de bits |
Description |
---|---|---|
1 |
(complex-match-condition) |
Agrupación: la condición de coincidencia compleja se evalúa antes de aplicar los operadores que no estén entre paréntesis. |
2 |
! match-condition |
Negación: se produce una coincidencia si la condición de coincidencia es false. |
3 |
match-condition-1 & match-condition-2omatch-condition-1 + match-condition-2 |
Lógica Y: se produce una coincidencia si ambas condiciones son verdaderas. |
4 |
match-condition-1 | match-condition-2omatch-condition-1 , match-condition-2 |
Lógica O: se produce una coincidencia si cualquiera de las condiciones de coincidencia es verdadera. |
Coincidencia en un solo valor de campo de bits o alias de texto
Para las condiciones de coincidencia de bits y , puede especificar condiciones de coincidencia de filtro de firewall en función de si se establece o no un bit concreto del campo de paquete.fragment-flagstcp-flags
Valor numérico para especificar un solo bit: puede especificar una condición de coincidencia de campo de bits único utilizando un valor numérico que tenga un bit establecido. En función de la condición de coincidencia, puede especificar un valor decimal, un valor binario o un valor hexadecimal. Para especificar un valor binario, especifique el número con el prefijo .b Para especificar un valor hexadecimal, especifique el número con el prefijo .0x
En el ejemplo siguiente, se produce una coincidencia si se establece el bit del campo de indicadores TCP:RST
[edit firewall family inet filter filter_tcp_rst_number term term1 from] user@host# set tcp-flags 0x04
Alias de texto para especificar un solo bit: generalmente se especifica una condición de coincidencia de campo de bits único mediante un alias de texto entre comillas dobles (" ").
En el ejemplo siguiente, se produce una coincidencia si se establece el bit del campo de indicadores TCP:RST
[edit firewall family inet filter filter_tcp_rst_alias term term1 from] user@host# set tcp-flags “rst”
Coincidencia en varios valores de campo de bits o alias de texto
Puede especificar una condición de coincidencia de filtro de firewall en función de si se establece un conjunto determinado de bits en un campo de paquete.
Valores numéricos para especificar varios bits de conjunto: cuando se especifica un valor numérico cuya representación binaria tiene más de un bit de conjunto, el valor se trata como un AND lógico de los bits de conjunto.
En el ejemplo siguiente, las dos condiciones de coincidencia son las mismas. Se produce una coincidencia si un bit o no está establecido:0x010x02
[edit firewall family inet filter reset_or_not_initial_packet term term5 from] user@host# set tcp-flags “!0x3” user@host# set tcp-flags “!(0x01 & 0x02)”
Alias de texto que especifican coincidencias comunes de campos de bits: puede utilizar alias de texto para especificar algunas coincidencias comunes de campos de bits. Estas coincidencias se especifican como una sola palabra clave.
En el ejemplo siguiente, la condición, que es un alias para , especifica que se produce una coincidencia en paquetes TCP distintos del primer paquete de una conexión:tcp-established“(ack | rst)”
[edit firewall family inet filter reset_or_not_initial_packet term term6 from] user@host# set tcp-established
Coincidir en un valor de campo de bits denegado
Para anular una coincidencia, preceda el valor con un signo de exclamación.
En el ejemplo siguiente, se produce una coincidencia si se establece el bit del campo de indicadores TCP:RST
[edit firewall family inet filter filter_tcp_rst term term1 from] user@host# set tcp-flags “!rst”
Coincidencia en el OR lógico de dos valores de campo de bits
Puede utilizar ( o ) para especificar que se produce una coincidencia si un campo de bits coincide con cualquiera de los dos valores de campo de bits especificados.|,
En el ejemplo siguiente, se produce una coincidencia si el paquete no es el paquete inicial en una sesión TCP:
[edit firewall family inet filter not_initial_packet term term3 from] user@host# set tcp-flags "!syn | ack"
En una sesión TCP, el indicador SYN se establece sólo en el paquete inicial enviado, mientras que el indicador ACK se establece en todos los paquetes enviados después del paquete inicial. En un paquete que no es el paquete inicial en una sesión TCP, no se establece el indicador SYN o el indicador ACK.
Coincidencia en el AND lógico de dos valores de campo de bits
Puede utilizar ( o ) para especificar que se produce una coincidencia si un campo de bits coincide con los dos valores de campo de bits especificados.&+
En el ejemplo siguiente, se produce una coincidencia si el paquete es el paquete inicial en una sesión TCP:
[edit firewall family inet filter initial_packet term term2 from] user@host# set tcp-flags “syn & !ack”
En una sesión TCP, el indicador SYN se establece sólo en el paquete inicial enviado, mientras que el indicador ACK se establece en todos los paquetes enviados después del paquete inicial. En un paquete que es un paquete inicial en una sesión TCP, se establece el indicador SYN y no se establece el indicador ACK.
Agrupación de condiciones de coincidencia de campo de bits
Puede utilizarlo para especificar que la condición de coincidencia compleja dentro de los paréntesis se evalúe antes de aplicar cualquier operador fuera de los paréntesis.
En el ejemplo siguiente, se produce una coincidencia si el paquete es un restablecimiento de TCP o si el paquete no es el paquete inicial en la sesión TCP:
[edit firewall family inet filter reset_or_not_initial_packet term term4 from] user@host# set tcp-flags “!(syn & !ack) | rst”
En una sesión TCP, el indicador SYN se establece sólo en el paquete inicial enviado, mientras que el indicador ACK se establece en todos los paquetes enviados después del paquete inicial. En un paquete que no es el paquete inicial en una sesión TCP, no se establece el indicador SYN y el campo ACK.