«

»

jul 30 2008

Lista de Controle de Acesso criadas facilmente – Parte 3

 .

Continuando a saga… a parte 3.

.

Lista de Controle de Acesso criadas facilmente – Parte 3


.Agrupando os Engenheiros com uma Máscara Wildcard

O conceito de máscara wildcard é muito similar aqueles de máscara de subrede, com uma pequena mas muito significante diferença na lógica. Uma máscara de subrede é uma sequência de binário 1s e 0s que são utilizados para determinar qual parte de um endereço IP é associado com o endereço de rede. Com uma máscara de subrede, se um bit em particular em um endereço IP é parte de um endereço de rede, o correspondente bit na máscara de subrede é setado para 1. Uma máscara wildcard é muito similar, porém a lógica é inversa. Um binário 1 na máscara wildcard significa “não se preocupe”. É o digito binário 0 na máscara wildcard que distingue os bits importantes.

Vamos iniciar com um exemplo. A máscara de subrede mais comumente em uso hoje em dia é 255.255.255.0. Os primeiros 3 octetos, quando convertidos para binário, contém 8 binários 1´s. Toda a máscara tem 24 binários 1´s, seguidos de 8 binários 0´s. Isto é frequentemente referido como “máscara de 24 bits” ou “/24”, que é utilizada como uma notação abreviada.

O que significa é que cada bit de cada um dos 3 octetos no endereço é parte do endereço de rede. O último octeto é definido por 8 binários 0´s, de forma que nenhum bit no último octeto são parte do endereço de rede. Eles são todos utilizados para especificar um host naquela rede.  A correspondente máscara wildcard dos 24 bits seria 0.0.0.255. Com esta máscara wildcard, você se preocupa somente com cada bit dos 3 primeiros octetos, porém nenhum dos bits no último octeto. Assim, a combinação de endereço e a máscara wildcard 172.16.100.0 0.0.0.255 coincide com todos os endereços que iniciam com 172.16.100, e não se importa com o valor do último octeto. Aqui está outro modo de pensar sobre isso :

172.16.100.0 0.0.0.255 especifica que endereço IP deve parecer exatamente como 172.16.100.0 até os primeiros 24 bits, e porém não se preocupe com o que os últimos 8 bits são !

Vamos olhar para outro exemplo comum de máscara de subrede : 255.255.255.252. A maioria de vocês podem reconhecer isto tipo de máscara que é utilizada em link WAN ponto-a-ponto.

Em binário, esta máscara tem 30 digitos 1´s seguidos de 2 digitos 0´s. Portanto ela poderia ser chamada de máscara de subrede de 30 bits e poderia ser escrita com a abreviação /30. Esta máscara de subrede é utilizada para conservar espaço de endereço IP. Em um link ponto-a-ponto, existem somente 2 endereços IP ativos. Com a máscara de subrede 255.255.255.0, existiriam 254 endereços disponíveis. Se somente 2 endereços são utilizados, a vasta maioria de espaço de endereços IP seria disperdiçada. Com essa máscara de subrede 255.255.255.252, existem somente dois endereços IP disponíveis, o que é o encaixe perfeito para uma rede ponto-a-ponto. Observe que a máscara atualmente especifica um grupo de 4 endereços, porém o primeiro endereço é o próprio endereço da rede, e o último é de broadcast. Portanto, existem dois endereços à direita disponíveis.

Vamos dar uma olhada na matemática binária involvida na máscara de subrede de 30 bits antes de nós considerarmos sua máscara wildcard equivalente. A figura abaixo descreve o último octeto (.252) da máscara de 30 bits e a linha separa os dois últimos bits, com 9 possibilidades de valores do octeto no endereço IP. Como você pode ver, se você somente olhar os 6 primeiros bits do octeto para determinar o endereço de rede,  o valor dos octetos 4, 5, 6 e 7 estão todos na mesma subrede. Eles todos são exatemente como o “4”, se você ignorar o valor dos 2 últimos bits. Porém o 3 e 8 não estão na mesma rede. Eles não se parecem exatamente com o “4” quando você examina os 6 primeiros bits.

Máscara de subrede de 30 bits

Figura 2 : um exemplo usando uma máscara de sub-rede de 30 bits

A máscara wildcard equivalente da máscara de subrede é 30 dígitos 0´s seguidos de 2 dígitos 1´s, ou 0.0.0.3. Como você poder ver no exemplo de máscara de subrede, se nós juntarmos o endereço base 172.16.100.4 com uma máscara  de 30-bits (por exemplo, 172.16.100.4 0.0.0.3), ele coincidirá exatamente com os 4 endereços: 172.16.100.4 até 172.16.100.7. Bastante conveniente, porque com isto irá coincidir com os endereços IP dos engenheiros no nosso cenário. Não fique confuso com o fato de que, com a máscara de subrede, você perde o primeiro e último endereços IP. Com as ACLs e máscara wildcard, nós não definiremos redes (com endereços de rede e endereço de broadcast), nós apenas queremos especificar o intervalo de endereços IP.

Agrupando os Servidores de Engenharia com uma Máscara Wildcard

Além de inverter o significado no valor dos bits, as máscaras wildcard diferem das máscaras de subrede naquilo dos bits “não se preocupe” que podem ser misturados por toda a máscara wildcard. Isto é, eles não tem necessariamente de estar na sequência de 0´s seguidos pela sequência de 1´s. Devido a isto, você pode utilizar padrões que existem no meio do endereço IP, ao invés de apenas no final.  Nós levaremos vantagem desse truque para definir nossos 2 servidores de engenharia como um endereço base com uma máscara wildcard.

Exemplo mais complexo

Figura 3 : uma máscara wildcard usando um exemplo mais complexo

Em uma ACL, 172.16.101.163 0.0.0.16 coincidirá com 172.16.101.163 e 172.16.101.179 e nada mais. Eles são os únicos valores que coincidem exatamente com 172.16.101.163, exceto pelo 4o. bit do último octeto.

179 -163 = 16 => 00010000

Em uma ACL, 172.16.101.163 0.0.0.16 coincidirá com 172.16.101.163 e 172.16.101.179 e nada mais. Eles são os únicos valores que coincidem exatamente com 172.16.101.163, exceto pelo 4o. bit do último octeto.

A figura 3  descreve os últimos octetos dos endereços IP dos servidores da engenharia. Observe que o par de endereços IP não tem como aparecer que não tem nada em comum quando você olha para eles no formato decimal, porém, quando você converte para binário o últmo octeto, você poderá ver que eles variam somente em um  único bit. O 4o. bit. O que nós especificaremos para os servidores da engenharia é 172.16.101.163 0.0.0.16. Isto significa que os endereços que coincidem tem exatamente como 172.16.101.163, porém não se preocupam sobre o valor do 4o. octeto. Além do próprio 172.16.101.163, existe um único endereço IP que parece exatamente como 172.16.101.163, exceto por um bit. Esse endereço é 172.16.101.179.

Usar esta máscara wildcard realmente nos deixa com menos entradas em nossa ACL, porém essa não é a principal razão que apresentei este exemplo. A principal razão é que quero que você entenda totalmente o que uma máscara wildcard faz. Ela simplesmente especifica quais bits devem estar coincidindo no endereço IP para qual é aplicada, se ela é relativamente direta ou uma máscara mais complexa. Usar máscaras wildcard corretamente pode melhor a eficiência de suas ACLs, porém existem alguns “lados obscuros” também. Primeiro, você poderia cometer um erro em sua aritmética binária. Para reduzir este potencial, entenda totalemente as máscara wildcard, e pratique a aritmética binária. O segund potencial problema é, embora você possa ser capaz de ler uma ACL com sua wildcard  “abreviada”, outros poderiam não ser capazes de entender o que você fez. Para ajudar neste item, eu recomendo muito que você use o comando “remark” da ACL, que discutiremos mais tarde.


Estamos quase lá…. aguardem a parte 4.  🙂

.

Sds.

Márcia Guimarães



Comente usando o Facebook!
0
0

14 comentários

Pular para o formulário de comentário

  1. Minu

    Muito binário, mas essa parte de wildcard deu uma boa clareada sobre o assunto, sempre tive dúvidas demais nisto. ACL sempre foi meu ponto fraco =/

    0

    0
  2. Marcelo Conterato

    Pois é, no material do NetAcad a parte de Wildcard é compliada pra carambra. Ainda bem que a Márcia tá facilitando a vida da gente. Obrigado Márcia

    0

    0
  3. Plinio Monteiro

    Perfeito Márcia… É bom ver as coisas fluindo…

    Últimas revisões para meu exame que é amanhã.

    Parabéns.

    0

    0
  4. Marcia Guimaraes

    Espero que este tutorial te ajude muito, Plínio.
    E boa sorte no seu exame amanhã. 🙂

    0

    0
  5. Bruno7

    Bom dia a todos,

    Marcia, tenho uma dúvida. No caso de criar a ACL eu não tenho que fazer a continha do “-1”. Ou seja, para designar 16 endereços dentro da ACL o final seria .15?

    Obrigado pela atenção,

    Bruno Arruda

    0

    0
  6. Rodrigo Falcão

    Um modo simples de descobrir a wildcard desejada para utilizar na ACL, que eu aprendi no curso, é pegar a máscara cheia (255.255.255.255) e diminuir pela máscara da rede na qual será aplicada ACL, no caso de um link WAN ponto a ponto seria 255.255.255.252.
    Podemos até trabalhar direto no último octeto, 255-252=3
    resultado= 0.0.0.3
    Mas ai eu te pergunto Márcia…esse tipo de cálculo pode me causar algum problema?
    Na segunda parte do tutorial, vc não definiu qual era a máscara da subrede onde estava os servidores (acredito que no post original tb não esteja definido)…sendo que no tutorial é sugerida a wildcard 0.0.0.16, podemos deduzir que se trata de uma rede /28? E salientando o comentário do comentário do Bruno7, não seria 16-1, o que daria 0.0.0.15?
    Ufa!! Esse é um tema bastante complicado, cheio de detalhes, e dúvidas, rsrsrsr!!!

    Valeu Márcia, continue nos brindando com mais tutos!!!

    Abrçs!!!

    0

    0
  7. Marcia Guimaraes

    Olá Bruno e Rodrigo…

    Uma máscara wildcard, como o próprio artigo fala, é o contrário da máscara de sub-rede. As máscaras wildcard também são chamadas de máscaras “reversas”, pelo fato da “lógica” ser inversa aquela da máscara de sub-rede. O que importa para um wildcard é o bit 0, o que não importa é o bit 1. Ou seja, o wildcard faz não abre mão das posições onde o bit “0” aparece, e ele “não está nem ai” para o que acontece onde aparece o bit “1”. Simples assim. 😉

    Mas na hora de fazer a sua wildcard não pense muito na máscara de sub-rede, isso só confunde você. Vamos refazer algumas máscaras wildcard para solidificar o conceito e depois partimos para a mais difícil.

    Vejamos :

    Máscara de sub-rede 255.255.255.255
    Máscara wildcard 0.0.0.0
    Em binário 00000000.00000000.00000000.00000000
    O que faz todos os octetos do endereço ip comparado devem ser iguais

    Máscara de sub-rede 255.255.255.0
    Máscara wildcard 0.0.0.255
    Em binário 00000000.00000000.00000000.11111111
    O que faz somente os 3 primeiros octetos do endereço ip comparado devem ser iguais

    Máscara de sub-rede 255.255.255.252
    Máscara wildcard 0.0.0.3
    Em binário 00000000.00000000.00000000.00000011
    O que faz somente os 30 primeiros bits do endereço ip comparado devem ser iguais

    Máscara de sub-rede 255.255.240.0
    Máscara wildcard 0.0.15.255
    Em binário 00000000.00000000.00001111.11111111
    O que faz somente os 20 primeiros bits do endereço ip comparado devem ser iguais

    Mas se eu tenho um intervalo para filtrar na minha acl, qual máscara devo usar ???

    Por exemplo :

    de 172.16.16.0 a 172.16.23.0 . Qual wildcard devo usar ??? 0.0.7.255

    172.16.23.0
    172.16.16.0 –
    ——————–
    0. 0. 7.255 => block size 8 e máscara de sub-rede 255.255.248.0

    de 172.16.64.0 a 172.16.127.0 . Qual wildcard devo usar ??? 0.0.63.255

    172.16.127.0
    172.16. 64.0 –
    ——————–
    0. 0. 63.255 => block size 64 e máscara de sub-rede 255.255.192.0

    de 172.30.16.0 a 172.30.31.0 . Qual wildcard devo usar ??? 0.0.15.255

    172.30.31.0
    172.30.16.0 –
    ——————–
    0. 0. 15.255 => block size 16 e máscara de sub-rede 255.255.240.0

    (Abstraia o 255 no final da wildcard. Sabemos que não faz sentido no contexto da operação de subtração, mas na wildcard sim…)

    Tenha sempre em mente que as máscara wildcard são os block-sizes “-1”. Ou seja:

    Se tenho 255.255.224.0 , 0.0.31.255.
    Se tenho 255.255.255.240 , 0.0.0.15
    Se tenho 255.255.255.248 , 0.0.0.7

    Esse cálculo deve ser feito tranquilamente…

    ok… mas…

    Na ACL do artigo, tenho 172.16.101.163 0.0.0.16 que coincidirá exatamente com 172.16.101.163 e 172.16.101.179 e nada mais. Porque eles são os únicos valores que coincidem “exatamente” exceto pelo 4o. bit do último octeto.

    172.16.101.10100011 até 10110011

    101 0 0011 .163
    101 1 0011 .179

    000 1 0000 .16
    |
    |——> somente o 4o. bit é testado, o restante é irrelevante !

    Escolhemos propositalmente os números 163 e 179 porque estes somente se diferenciam em binário no 4o. octeto.

    Mas será que eu posso ter uma máscara wildcard 0.0.0.62 ???
    Em que situação ???
    Se eu quiser filtrar somente endereços ip´s pares. Como ?

    Veja.

    Por exemplo, quero que somente o intervalo entre 192.168.1.64 até 127 seja filtrado, e somente os endereços ip´s pares. E quando digo “filtrar”, quero dizer, ou negar ou permitir.

    Quando vc trabalha com uma máscara wildcard para filtrar endereços ímpares ou pares, vc tem que quebrá-la no nível binário.

    Então, vamos olhar para o intervalo assim …

    192.168.1.01000000 até 01111111

    Tenha em mente agora que o router deixa passar o bit “1” e … o bit “0” ele filtra ! Só pense nisso agora. ok?? 🙂

    Então, pegamos o 1o. endereço ip de host do intervalo e comparamos com o último octeto da wildcard, que é o octeto que vai dizer quem será liberado ou barrado. Olhe, para o primeiro bit e o último bit do wildcard (.62) :

    .65 01 | 00000 | 1 ip BARRADO ! ( 1 bit (o primeiro) referente a .65 foi barrado, então ele não passa !)
    .62 01 | 11111 | 0 último octeto da máscara wildcard
    x x

    .66 01 | 00001 | 0 ip LIBERADO ! (observe que todos os bits referente a .66 foram liberados)
    .62 01 | 11111 | 0 último octeto da máscara wildcard
    x x

    .67 01 | 00001 | 1 ip BARRADO ! (1 bit (o primeiro) referente a .67 foi barrado, então ele não passa !)
    .62 01 | 11111 | 0 último octeto da máscara wildcard
    x x

    .68 01 | 00010 | 0 ip LIBERADO ! (observe que todos os bits referente a .68 foram liberados)
    .62 01 | 11111 | 0 último octeto da máscara wildcard
    x x

    Observe que coloquei x´s debaixo dos bits que foram barrados !

    Implementando a acl no seu router para PERMITIR SOMENTE os endereços ips pares, fica assim :

    router(config) access-list 101 permit tcp 192.168.1.64 0.0.0.62 any eq 23
    router(config) access-list 101 deny tcp any any eq 23
    router(config) access-list 101 permit ip any any

    A lógica é inversa se eu quiser somente permitir os endereços ímpares do intervalo. Apenas NEGUE os endereços pares. 🙂

    Você pode verificar a matemática da máscara wildcard baixando uma calculadora free do Boson.

    IP Subnet Calculator
    http://bosonsoftwaredownloads.com/utils/bos_sub.exe

    Com a calculadora já instalada na sua máquina, calcule a máscara acima e aquela do artigo (172.16.101.163 0.0.0.16), vc verá isso :

    ———————————————-
    IP Address: 192.168.1.64
    Wildcard mask: 0.0.0.62

    First Octet Match(es)
    192

    Second Octet Match(es)
    168

    Third Octet Match(es)
    1

    Fourth Octet Match(es)
    64
    66
    68
    70
    72
    74
    76
    78
    80
    82
    84
    86
    88
    90
    92
    94
    96
    98
    100
    102
    104
    106
    108
    110
    112
    114
    116
    118
    120
    122
    124
    126

    ———————————————-
    IP Address: 172.16.101.163
    Wildcard mask: 0.0.0.16

    First Octet Match(es)
    172

    Second Octet Match(es)
    16

    Third Octet Match(es)
    101

    Fourth Octet Match(es)
    163
    179

    ok?? 🙂

    Sds.
    Márcia Guimarães

    0

    0
  8. Marcia Guimaraes

    Bem, vcs viram que a formatação mandou lembrança.. rss… então… vcs podem baixar a resposta formatada e com o devido destaque nas parte essenciais para o entendimento. ok ? 🙂

    http://www.4shared.com/file/57327140/d89004db/Resposta_-_Bruno_e_Rodrigo.html

    Sds.
    Márcia Guimarães

    0

    0
  9. Marcia Guimaraes

    Por favor, desconsiderem o primeiro e façam o down di doc abaixo. Aqui, vcs têm a topologia no Packet Tracer com a implementação da acl.

    http://www.4shared.com/file/57328839/b9bf0161/_2__Resposta_-_Bruno_e_Rodrigo.html

    0

    0
  10. Rodrigo Falcão

    Márcia, muito obrigado pela atenção e dedicação!!!
    Agora eu estôu vendo uma luz, quase um clarão, rsrsrsr!

    Abrçs!!

    0

    0
  11. Marcia Guimaraes

    Rodrigo…. FIAT LUX !

    0

    0
  12. ferrugem

    Agora uma boa notícia à todos aqui do BLOG que gostariam de ter estes arquivos em um único arquivo… Preparei um PDF contendo os 6 artigos muito bem preparados pela Márcia sobre o tema.

    Este arquivo pode ser encontrado na pasta Exames de Certificação/CCNA/Manuais e Resumos do HD do BLOG I entitulado por “Listas de Controle de Acesso criadas facilmente – Márcia Guimarães.rar”.

    Espero que seja útil para vocês!!! O material ficou realmente MUITO BOM! Mais uma vez, PARABÉNS Márcia!!!

    Abraços à todos e bons estudos,
    Ferrugem!!!

    0

    0
  13. Marcia Guimaraes

    Obrigada a todos do blog pelos comentários.

    🙂 :)Isso estimula muito a continuar estudando !!! 🙂 🙂

    0

    0
  14. gunner

    Excelente trabalho!!!

    0

    0

Deixe uma resposta