Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Condições flexíveis de correspondência do filtro de firewall

As condições padrão de correspondência do filtro de firewall variam com base na família de protocolo do tráfego que está sendo compatível. Por exemplo, os termos disponíveis para tráfego de protocolo de ponte são diferentes daqueles disponíveis para as famílias de protocolo inet ou inet6. Os campos disponíveis para correspondência em cada família de protocolo são, no entanto, fixos ou pré-definidos. Isso significa que os filtros podem combinar apenas com padrões dentro desses campos pré-definidos.

Usando condições flexíveis de correspondência, podem ser construídos filtros de firewall que iniciam a correspondência em locais de camada 2, camada 3, camada 4 ou carga. A partir daí, critérios de compensação adicionais podem ser especificados, permitindo assim correspondências de padrões em locais personalizados e definidos pelo usuário dentro de um pacote.

Os termos flexíveis do filtro de correspondência são aplicados às interfaces MPC ou MIC, como filtros de entrada ou saída, assim como qualquer outro termos de filtro de firewall. Termos flexíveis de filtro de correspondência também podem ser criados como modelos no nível de [edit firewall] hierarquia. Esses modelos podem então ser referenciados em um termo de correspondência flexível.

Para os roteadores da série MX, as condições flexíveis de correspondência só são suportadas com MPCs ou MICs. Para ambientes em que FPCs, PICs e ou DPCs estejam instalados junto com MPCs ou MICs, não se esqueça de aplicar apenas os critérios flexíveis de filtro de firewall de correspondência nas interfaces MPC ou MIC.

Nota:

Para roteadores da Série MX com MPCs, você precisa inicializar o contador de filtros para filtros de correspondência somente de Trio no MIB, andando pelo SNMP MIB correspondente. Por exemplo, para qualquer filtro que seja configurado ou alterado em relação aos seus filtros somente trio, você precisa executar um comando como o seguinte: show snmp mib walk (ascii | decimal) object-id. Isso força o Junos a aprender os contadores de filtro e garantir que as estatísticas do filtro sejam exibidas (isso é porque a primeira pesquisa a filtrar estatísticas pode não mostrar todos os contadores). Os filtros de correspondência somente para trios são aqueles que incluem pelo menos uma condição ou ação de correspondência que só é suportada pelo chipset Trio.

Essa orientação se aplica a todos os enhanced-mode filtros de firewall. Também se aplica a Condições de correspondência do filtro de firewall para tráfego IPv4 termos flexíveis de filtro de correspondência para offset-range ou offset-mask, gre-keye condições de correspondência do filtro de firewall para tráfego IPv6 com qualquer uma das seguintes condições de correspondência: payload-protocol, extension headers. is_fragment. Também se aplica a filtros com qualquer um dos seguintes Ações de terminação de filtros de firewall: encapsulate ou decapsulate, ou qualquer um dos seguintes Firewall filtra ações sem administração: policy-mape clear-policy-map...

Hierarquia de declarações

Os termos flexíveis do filtro de correspondência estão disponíveis em três variações conforme mostrado em Tabela 1. A flexible-match variação está configurada no nível de [edit firewall] hierarquia. Ele é usado para definir modelos de correspondência flexíveis. flexible-match-range E flexible-filter-match-mask estão configurados na [edit firewall family [inet|inet6|bridge|ethernet-switching|ccc|vpls] filter <filter-name> term <term-name> from] hierarquia. Use o family ethernet-switching filtro para switches EX9200.

Tipos flexíveis de correspondência de filtro

Tabela 1: Tipos flexíveis de correspondência de filtro

Tipo de correspondência flexível de filtro

Atributos disponíveis

Descrição

flexible-match

<name>

Crie um modelo de correspondência flexível nomeado como <name> atributo.

 

bit-length

Comprimento dos dados a serem combinados em bits, não necessário para entrada de string (0,32)

Para switches QFX5120 e EX4650, 16 e 32 são os únicos comprimentos de bit válidos.

bit-offset

Compensação de bits após a compensação (match-start + byte) (0,7)

byte-offset

Byte offset após o ponto de partida da partida

match-start

Ponto de partida para combinar em pacote

flexible-match-mask

bit-length

Comprimento dos dados a serem combinados em bits, não necessário para entrada de string (0.128)

bit-offset

Compensação de bits após a compensação (match-start + byte) (0,7)

byte-offset

Byte offset após o ponto de partida da partida

flexible-mask-name

Selecione uma combinação flexível no campo de modelo predefinido. Necessário, a menos que match-start esteja configurado.

mask-in-hex

Mascarar bits nos dados do pacote a serem combinados.

match-start

Ponto de partida para combinar no pacote. Necessário, a menos que flexible-mask-name esteja configurado.

prefix

Valorize dados/string a serem combinados.

flexible-match-range

bit-length

Comprimento dos dados a serem combinados em bits. (0.32) Necessário a menos que flexible-range-name esteja configurado.

bit-offset

Compensação de bits após a compensação (match-start + byte). (0..7)

byte-offset

Byte offset após o ponto de partida da partida

flexible-range-name

Selecione uma combinação flexível do modelo predefinido.

match-start

Ponto de partida para combinar no pacote. Necessário, a menos que flexible-range-name esteja configurado.

range

Gama de valores a serem combinados.

range-except

Gama de valores a não serem combinados.

Nota:

flexible-match-range não é compatível com EX2300, EX3400, EX4100 e EX4400.

Locais de partida flexíveis de correspondência de filtros

Os termos flexíveis do filtro de correspondência são construídos dando um local de partida ou ponto âncora dentro do pacote. Os locais de início podem ser: camada 2, camada 3, camada 4 ou carga útil, dependendo da família de protocolo em uso. Tabela 2 mostra locais de partida de correspondência de filtro flexíveis disponíveis por família de protocolo. Você usa esses locais de início disponíveis como match-start locais para os termos flexíveis do filtro de correspondência.

A partir desses locais de início, compensações específicas de byte e bit podem ser usadas para permitir que o filtro combine padrões em locais muito específicos dentro do pacote.

Tabela 2: Locais de partida flexíveis de correspondência de filtros

Família de protocolos

Locais de início disponíveis

inet

layer-3, layer-4 and payload

Para switches QFX5120 e EX4650, o suporte para filtros de correspondência flexíveis de camada 2 e camada 3 (apenas) foi adicionado no Junos Release 20.1R1.

inet6

layer-3, layer-4payload

Para switches QFX5120 e EX4650, o suporte para filtros de correspondência flexíveis de camada 2 e camada 3 (apenas) foi adicionado no Junos Release 20.1R1.

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

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

Para, QFX5120 e switches EX4650, o suporte para filtros de correspondência flexíveis de camada 2 e camada 3 (apenas) foi adicionado no Junos Release 20.1R1. Um exemplo de uso de compensação de pacotes de camada 2 e comprimento de correspondência pode ser encontrado abaixo.

   

Exemplos flexíveis de correspondência de filtros

O exemplo a seguir ilustra o uso e o contexto para flexible-match-mask.

Especifica <mask-name> para flexible-mask-name qual modelo predefinido é usado para a condição de correspondência flexível. Os modelos podem ser definidos para especificar em qual lugar (posição) no pacote a condição flexível de correspondência deve ser executada.

A <mask> importância mask-in-hex está no formato hexadimamal. Por exemplo, uma máscara 0xf0fc configurada especifica uma combinação para o punho quatro bits no primeiro byte (como referido), <mask-name>e para os primeiros seis bits no segundo byte. Se o pacote for pacote IPv4 e <mask-name> se refere aos dois primeiros bytes no cabeçalho L3, a busca é pelo campo de versão IP e campo DSCP. Como outro exemplo, uma máscara 0xffc0 configurada especifica uma busca por um byte inteiro e por dois bits a partir do segundo byte. Se se <mask-name> refere aos dois primeiros bytes no cabeçalho L3, e o pacote for pacote IPv6, isso especifica o campo de versão IP e o DSCP no campo de Classe de tráfego.

A <pattern> especificação é prefix uma string ASCII. Se os dois primeiros caracteres forem 0x, então a corda é processada como um número hexadecimal codificando bits apropriados. Por exemplo, o prefixo 0x40c0 configurado em combinação com a máscara 0xf0fc e <mask-name> os dois primeiros bytes em cabeçalho L3 indicam uma busca nos 0100 quatro primeiros bits (o campo de versão é igual a 4) e 1100 00 no campo DSCP IPv4 (DSCP é igual a cs6). Ou, usando o prefixo 0x6c00 configurado em combinação com a máscara 0xffc0 e <mask-name> os dois primeiros bytes em cabeçalho L3, especifica uma busca pelos 0110 primeiros quatro bits (o campo de versão é igual a 6) e 1100 00 no campo DSCP IPv6 (DSCP é igual a cs6).

O primeiro exemplo define um modelo de máscara que seleciona os dois primeiros bytes (16 bits) do cabeçalho L3 para uma combinação flexível:

O exemplo seguinte define um modelo de máscara que seleciona o byte de terceiro a sexto (32 bits) da carga do pacote para uma correspondência flexível:

Este exemplo mostra uma correspondência de caracteres ASCII para o JNPR de cordas (caracteres ASCII: 0x4a, 0x4e, 0x50) 0x52no terceiro a sexto byte da carga de pacotes. O filtro usa o FM-FOUR-PAYLOAD-BYTES modelo de máscara definido no exemplo anterior.

Este exemplo mostra um filtro ccc familiar à procura de DSCP igual e cs6 DSCP ef, independentemente de os pacotes encapsulados serem IPv4 ou IPv6. Ele usa o FM-FIRST-TWO-L3-BYTES modelo de máscara definido no primeiro exemplo.

Este exemplo mostra como usar um comprimento de correspondência, a partir de uma compensação de pacotes de camada 2, em um filtro de firewall para um dispositivo QFX5120-32C, QFX5120-48Y ou EX4650 que executa o Junos Release 20.1R1. Aqui, usamos um pouco de comprimento de 32 bits e a ethernet-switching família (inet e inet6 também temos suporte, assim como usar uma compensação de camada 3).

Tabela de histórico de alterações

A compatibillidadde com o recurso dependerá da platadorma e versão utilizada. Use o Feature Explorer para saber se o recurso é compatível com sua plataforma.

Versão
Descrição
23.2R1
Do Junos OS Release 23.2R1, oferecemos suporte a filtros de correspondência flexíveis de camada 2 e camada 3 no EX4100-24P, Switches EX4100-24T, EX4100-24MP, EX4100-48P, EX4100-48T, EX4400-24T, EX4400-24X e EX4400-48F.
20.1R1
Para, QFX5120 e switches EX4650, o suporte para filtros de correspondência flexíveis de camada 2 e camada 3 (apenas) foi adicionado no Junos Release 20.1R1.