Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Condições de correspondência do filtro de firewall com base em valores de campo bit

Condições de correspondência para valores de bit-field

Tabela 1 lista as condições de correspondência do filtro de firewall baseadas em se determinados campos de bit em um pacote são definidos ou não. A segunda e a terceira colunas listam os tipos de tráfego para os quais a condição da correspondência é suportada.

Tabela 1: Condições de correspondência binárias e em campo bit para filtros de firewall

Condição de jogo de campo bit

Valores de correspondência

Famílias de protocolo para filtros de firewall stateless padrão

Famílias de protocolo para filtros de serviço

fragment-flags flags

Valores hexadecimal ou pseudônimos de texto para o campo de bandeiras de fragmentação de IP de três bits no cabeçalho IP.

family inet

family inet

fragment-offset value

Valores hexadecimal ou pseudônimos de texto para o campo de compensação de fragmentos de 13 bits no cabeçalho IP.

family inet

family inet

tcp-flags value

Valores hexadecimal ou pseudônimos de texto para os 6 bits de baixa ordem do campo de bandeiras TCP de 8 bits no cabeçalho TCP.

family inetfamily inet6family vplsfamily bridge

family inetfamily inet6

 O Junos OS não verifica automaticamente o primeiro bit de fragmento ao combinar bandeiras TCP com o tráfego IPv4. Para verificar apenas o primeiro fragmento do tráfego IPv4, use a condição de first-fragment correspondência.

Condições de correspondência para valores ou combinações comuns de bit-field

Tabela 2 descreve condições de correspondência de filtro de firewall baseadas em determinados valores ou combinações de campos de bit comumente usados em um pacote são definidos ou não.

Você pode usar sinônimos de texto para especificar algumas partidas comuns em campo de bits. No exemplo anterior, você pode especificar tcp-initial como a mesma condição de correspondência.

Nota:

Algumas das condições de correspondência de campo numérico e numérico permitem que você especifique um sinônimo de texto. Para uma lista completa de sinônimos:

  • Se você estiver usando a interface J-Web, selecione o sinônimo da lista apropriada.

  • Se você estiver usando a CLI, digite um ponto de interrogação (?) após a from declaração.

Tabela 2: Condições de jogo em campo bit para combinações comuns

Condição de correspondência

Descrição

Famílias de protocolo para filtros de firewall stateless padrão

Famílias de protocolo para filtros de serviço

first-fragment

Nome do texto para a condição fragment-offset 0de correspondência do campo de bits, o que indica o primeiro fragmento de um pacote fragmentado.

family inet

family inet

is-fragment

Nome do texto para a condição fragment-offset 0 exceptde correspondência do campo de bits, o que indica um fragmento de trilha de um pacote fragmentado.

family inet

family inet

tcp-established

Alias para a condição tcp-flags "(ack | rst)"de jogo de campo de bit, o que indica uma sessão TCP estabelecida, mas não o primeiro pacote de uma conexão TCP.

family inetfamily inet6

tcp-initial

Alias para a condição tcp-flags "(!ack & syn)"de jogo de campo de bit, que indica o primeiro pacote de uma conexão TCP, mas não uma sessão TCP estabelecida.

family inetfamily inet6

Operadores lógicos para valores de campo bit

Tabela 3 lista os operadores lógicos que você pode aplicar a valores de um único campo de bit ao especificar condições de correspondência de filtro de firewall stateless. As operadoras estão listadas em ordem, da mais alta precedência à menor precedência. As operações são associativas à esquerda, o que significa que as operações são processadas da esquerda para a direita.

Tabela 3: Operadores lógicos de campo bit

Ordem de precedência

Operador lógico de campo bit

Descrição

1

(complex-match-condition)

Agrupamento — A complexa condição de correspondência é avaliada antes que quaisquer operadores fora dos parênteses sejam aplicados.

2

match-condition

Negação — ocorre uma correspondência se a condição de correspondência for falsa.

3

match-condition-1  &  match-condition-2Oumatch-condition-1  +  match-condition-2

Lógico E — uma combinação ocorre se ambas as condições de correspondência forem verdadeiras.

4

match-condition-1  |  match-condition-2Oumatch-condition-1  ,  match-condition-2  

OR lógico — uma correspondência ocorre se uma condição de correspondência for verdadeira.

Combinação em um único valor de campo ou pseudônimo de texto

Para as fragment-flags condições de correspondência de bits e tcp-flags bits, você pode especificar condições de correspondência do filtro de firewall com base em se um bit específico no campo de pacotes está definido ou não.

  • Valor numérico para especificar um único bit — você pode especificar uma única condição de jogo de campo de bit usando um valor numérico que tem um conjunto de bits. Dependendo da condição de correspondência, você pode especificar um valor decimais, um valor binário ou um valor hexadecimal. Para especificar um valor binário, especifique o número com o prefixo b. Para especificar um valor hexadecimal, especifique o número com o prefixo 0x.

    No exemplo a seguir, uma correspondência ocorre se o RST bit no campo de bandeiras TCP for definido:

  • Nome do texto para especificar um único bit — você geralmente especifica uma única condição de jogo de campo de bit usando um pseudônimo de texto fechado em marcas de cotação dupla (" ").

    No exemplo a seguir, uma correspondência ocorre se o RST bit no campo de bandeiras TCP for definido:

Combinação com vários valores de campo de bit ou pseudônimos de texto

Você pode especificar uma condição de correspondência de filtro de firewall com base em se um determinado conjunto de bits em um campo de pacotes está definido.

  • Valores numéricos para especificar vários bits definidos — Quando você especifica um valor numérico cuja representação binária tem mais de um bit definido, o valor é tratado como um E lógico dos bits definidos.

    No exemplo a seguir, as duas condições de jogo são as mesmas. Uma correspondência ocorre se um bit 0x01 ou 0x02 não for definido:

  • Pseudônimos de texto que especificam partidas comuns de campo de bit — você pode usar pseudônimos de texto para especificar algumas partidas comuns em campo de bits. Você especifica essas correspondências como uma única palavra-chave.

    No exemplo a seguir, a tcp-established condição, que é um pseudônimo para “(ack | rst)”, especifica que uma correspondência ocorre em pacotes TCP que não sejam o primeiro pacote de uma conexão:

Combinação com um valor de campo bit negado

Para negar uma partida, preceda o valor com um ponto de desação.

No exemplo a seguir, uma correspondência ocorre se o RST bit no campo de bandeiras TCP for definido:

Combinação com o OR lógico de dois valores de campo bit

Você pode usar o (| ou ,) para especificar se uma partida ocorre se um campo de pouco corresponde a qualquer um dos dois valores de campo de bit especificados.

No exemplo a seguir, ocorre uma correspondência se o pacote não for o pacote inicial em uma sessão de TCP:

Em uma sessão de TCP, a bandeira SYN é definida apenas no pacote inicial enviado, enquanto a bandeira ACK é definida em todos os pacotes enviados após o pacote inicial. Em um pacote que não é o pacote inicial em uma sessão de TCP, ou a bandeira SYN não está definida ou a bandeira ACK é definida.

Combinação entre os valores lógicos e de dois bit-field

Você pode usar o (& ou +) para especificar se uma partida ocorre se um campo de pouco combinar com ambos os dois valores de campo de bit especificados.

No exemplo a seguir, ocorre uma correspondência se o pacote for o pacote inicial em uma sessão de TCP:

Em uma sessão de TCP, a bandeira SYN é definida apenas no pacote inicial enviado, enquanto a bandeira ACK é definida em todos os pacotes enviados após o pacote inicial. Em um pacote que é um pacote inicial em uma sessão de TCP, a bandeira SYN é definida e a bandeira ACK não está definida.

Condições de jogo de campo de agrupamento

Você pode usar o para especificar que a complexa condição de correspondência dentro dos parênteses é avaliada antes que quaisquer operadores fora dos parênteses sejam aplicados.

No exemplo a seguir, ocorre uma correspondência se o pacote for um reset TCP ou se o pacote não for o pacote inicial na sessão TCP:

Em uma sessão de TCP, a bandeira SYN é definida apenas no pacote inicial enviado, enquanto a bandeira ACK é definida em todos os pacotes enviados após o pacote inicial. Em um pacote que não é o pacote inicial em uma sessão de TCP, a bandeira SYN não está definida e o campo ACK é definido.