Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Condições de combinação flexíveis do filtro de firewall

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

Usando condições de combinação flexíveis, filtros de firewall podem ser construídos para iniciar a combinação em locais de camada 2, camada 3, camada 4 ou payload. A partir disso, critérios de deslocamento adicionais podem ser especificados, permitindo que as partidas de padrão sejam feitas em locais personalizados e definidos pelo usuário dentro de um pacote.

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

Para roteadores da série MX, as condições de combinação flexíveis só são suportadas com MPCs ou MICs. Para ambientes nos quais FPCs, PICs e ou DPCs sejam instalados junto com MPCs ou MICs, certifique-se de aplicar apenas os critérios flexíveis de filtro de firewall de combinação às interfaces MPC ou MIC.

Nota:

Para roteadores da Série MX com MPCs, você precisa inicializar o contador de filtros para filtros de combinação somente Trio no MIB, acionando o SNMP MIB. Por exemplo, para qualquer filtro configurado ou alterado com relação aos filtros somente Trio, é necessário 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 a garantir que as estatísticas do filtro sejam visualizadas (isso é porque a primeira pesquisa para filtrar estatísticas pode não mostrar todos os contadores). Filtros de combinação somente de trio são aqueles que incluem pelo menos uma condição ou ação de combinação que só é suportado pelo chipset Trio.

Essa orientação se aplica a todos os filtros enhanced-mode de firewall. Ele também se aplica a termos de filtro de combinação flexível para deslocamento de intervalo ou máscara de deslocamento, e condições de combinação de filtro de firewall para As condições de combinação do filtro de firewall para o tráfego IPv4gre-key tráfego IPv6 com qualquer uma das seguintes condições de combinação: payload-protocol, extension headers, is_fragment. Ele também se aplica a filtros com qualquer um dos Ações de terminação do filtro de firewall seguintes: encapsulate ou, decapsulate ou um dos Ações não filtradas por filtro de firewall seguintes: policy-mape. clear-policy-map

Hierarquia de declarações

Termos flexíveis de filtro de combinação estão disponíveis em três variações, como mostrado em Tabela 1 . A flexible-match variação está configurada em nível de [edit firewall] hierarquia. Ele é usado para definir modelos de combinação flexíveis. Os flexible-filter-match-mask e flexible-match-range 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 EX9200 switches.

Tipos de combinação de filtro flexível

Tabela 1: Tipos de combinação de filtro flexível

Tipo de combinação de filtro flexível

Atributos disponíveis

Descrição

flexible-match

<name>

Crie um modelo de combinação flexível chamado < nome >tributo.

 

bit-length

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

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

bit-offset

Compensação de bits após o deslocamento (início da partida + byte) (0,7)

byte-offset

Deslocamento de byte 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 igualados em bits, não necessário para a entrada de string (0.128)

bit-offset

Compensação de bits após o deslocamento (início da partida + byte) (0,7)

byte-offset

Deslocamento de byte após o ponto de partida da partida

flexible-mask-name

Selecione uma combinação flexível do campo de modelos predefinido. Obrigatório, a menos match-start que esteja configurado.

mask-in-hex

Mascarar bits nos dados do pacote a serem matched.

match-start

Ponto de partida para combinar em pacote. Obrigatório, a menos flexible-mask-name que esteja configurado.

prefix

Dados/cadeia de valores a serem combinados.

flexible-match-range

bit-length

Comprimento dos dados a serem igualados em bits. (0.32) Obrigatório, a menos que flexible-range-name esteja configurado.

bit-offset

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

byte-offset

Deslocamento de byte após o ponto de partida da partida

flexible-range-name

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

match-start

Ponto de partida para combinar em pacote. Obrigatório, a menos flexible-range-name que esteja configurado.

range

Uma variedade de valores a serem auados.

range-except

Uma variedade de valores a não ser igualado.

Locais de início de partida de filtro flexível

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

A partir desses locais de início, deslocamentos de byte e bit específicos podem ser usados para permitir que o filtro se iguale a padrões em locais muito específicos do pacote.

Tabela 2: Locais de início de partida de filtro flexível

Família de protocolo

Locais de início disponíveis

inet

layer-3, layer-4 and payload

Para QFX5120 e EX4650 switches, foi adicionado suporte a filtros de combinação flexíveis de camada 2 e camada 3 (somente) no Junos Release 20.1R1.

inet6

layer-3, layer-4 and payload

Para QFX5120 e EX4650 switches, foi adicionado suporte a filtros de combinação flexíveis de camada 2 e camada 3 (somente) 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

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

Para switches QFX5120 e EX4650, o suporte para filtros de combinação flexíveis de camada 2 e camada 3 (somente) foi adicionado no Junos Release 20.1R1. Um exemplo de como usar um deslocamento de pacote de camada 2 e o comprimento da combinação podem ser encontrados abaixo.

Exemplos de combinação de filtro flexível

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

O <mask> especifica o nome de máscara flexível que o modelo predefinido é usado para a condição de combinação flexível. Os modelos podem ser definidos para especificar em qual local (posição) no pacote a condição de combinação flexível deve ser executada.

A < de > para mask-in-hex está em formato hexadecimal. Por exemplo, uma máscara configurada especifica uma combinação para os quatro bits em primeiro byte (como indicado por 0xf0fc<mask-name>)e para os primeiros seis bits no segundo byte. Se o pacote for pacote IPv4 e < nome de máscara>refere os dois primeiros bytes no header L3, a pesquisa será no campo da versão ip e no campo DSCP. Como outro exemplo, uma máscara configurada especifica uma pesquisa por um byte inteiro e dois bits a partir 0xffc0 do segundo byte. Se o nome <mask> for os dois primeiros bytes no header L3, e o pacote for pacote IPv6, isso especificará o campo da versão IP e o DSCP no campo Classe de tráfego.

A <patern> específica para prefixo é uma string ASCII. Se os dois primeiros caracteres 0x são, a string é processada como um número hexadecimal codificando bits apropriados. Por exemplo, o prefixo configurado em combinação com a máscara e o nome de <mask>referindo os dois primeiros bytes no header L3 indica uma pesquisa nos primeiros quatro bits (o campo da versão é igual a 4) e no campo 0x40c00xf0fc01001100 00 DSCP IPv4 (DSCP é igual a cs6). Ou, usando o prefixo configurado em combinação com máscara e nome de <mask>referindo os dois primeiros bytes no header L3, especifica uma pesquisa para os primeiros quatro bits (o campo da versão é igual a 6) e no campo 0x6c000xffc001101100 00 DSCP IPv6 (DSCP é igual a cs6).

O primeiro exemplo define um modelo de máscara que escolhe os dois primeiros bytes (16 bits) do cabeador L3 para combinar flexível:

O próximo exemplo define um modelo de máscara que escolhe o terceiro a seis byte (32 bits) do payload de pacotes para combinação flexível:

Este exemplo mostra uma combinação de caracteres ASCII para o JNPR da string (caracteres ASCII: 0x4a, ), do terceiro ao 0x4e0x50 sexto 0x52 byte do payload de pacotes. O filtro usa o modelo FM-FOUR-PAYLOAD-BYTES de máscara definido no exemplo anterior.

Este exemplo mostra um filtro ccc da família procurando por DSCP igual a e DSCP, independentemente de os cs6ef pacotes encapsulados ser IPv4 ou IPv6. Ele usa o modelo FM-FIRST-TWO-L3-BYTES de máscara definido no primeiro exemplo.

Este exemplo mostra como usar um comprimento de combinação, a partir de um deslocamento de pacote de camada 2, em um filtro de firewall para um QFX5120-32C, QFX5120-48Y ou um dispositivo EX4650 executando o Junos Release 20.1R1. Aqui, usamos um comprimento de bit de 32 bits e a família ( e também temos suporte, assim como um deslocamento ethernet-switchinginet de camada inet6 3).

Tabela de histórico de liberação
Versão
Descrição
20.1R1
Para switches QFX5120 e EX4650, o suporte para filtros de combinação flexíveis de camada 2 e camada 3 (somente) foi adicionado no Junos Release 20.1R1.