Variações do CIDR para tudo, exceto RFC1918

12

Estou procurando uma lista de blocos CIDR para "A Internet", ou seja, tudo de 0.0.0.0 a 223.255.255.255, excluindo o espaço de endereço RFC1918 de 10.0.0.0/8, 172.16.0.0/12 e 192.168.0.0/16 (Sim, eu sei que existem muitas redes pequenas que são especiais, como 192.0.0.0/24, mas eu realmente não me importo com elas). Eu acho que essa lista deve existir em algum lugar da Internet, mas meu google-fu está falhando, então pensei em perguntar aqui antes de gerar o intervalo.

Edit: esqueci uma parte realmente importante desta pergunta: preciso dela no menor número possível de entradas.

E se você quiser saber o que estou fazendo com isso, estamos inserindo mods de fluxo estáticos para solucionar alguns problemas desagradáveis ​​em uma rede controlada por OpenFlow que atualmente tem uma quantidade significativa de problemas acontecendo, e precisamos reduzir o número de entradas de fluxo temporariamente, para não excedermos o espaço disponível nas tabelas de fluxo e fazer com que tudo desmorone por alguns minutos enquanto restabelece uma conexão com o controlador.

Jed Daniels
fonte

Respostas:

34

Deixe-me mostrar meu trabalho aqui ...

Você precisa de um número mínimo de blocos CIDR para cobrir:

  • 0.0.0.0-9.255.255.255
  • 11.0.0.0-172.15.255.255
  • 172.32.0.0-192.167.255.255
  • 192.169.0.0-223.255.255.255

Para transformar esses intervalos em blocos CIDR mínimos, você pode simplesmente usar netmask(o canivete suíço de endereçamento), assim:

$ netmask -c 0.0.0.0:9.255.255.255
    0.0.0.0/5
    8.0.0.0/7
$ netmask -c 11.0.0.0:172.15.255.255
   11.0.0.0/8
   12.0.0.0/6
   16.0.0.0/4
   32.0.0.0/3
   64.0.0.0/2
  128.0.0.0/3
  160.0.0.0/5
  168.0.0.0/6
  172.0.0.0/12
$ netmask -c 172.32.0.0:192.167.255.255
 172.32.0.0/11
 172.64.0.0/10
172.128.0.0/9
  173.0.0.0/8
  174.0.0.0/7
  176.0.0.0/4
  192.0.0.0/9
192.128.0.0/11
192.160.0.0/13
$ netmask -c 192.169.0.0:223.255.255.255
192.169.0.0/16
192.170.0.0/15
192.172.0.0/14
192.176.0.0/12
192.192.0.0/10
  193.0.0.0/8
  194.0.0.0/7
  196.0.0.0/6
  200.0.0.0/5
  208.0.0.0/4

Ei presto, Bob é o amante morador de sua tia.

mulher
fonte
1
Cara, eu gostaria de poder lhe dar mais do que um único mais um. Vou dizer a todos os meus amigos para acrescentar um.
Jed Daniels
Eu procuro agradar.
womble
Casa código fonte para "máscara" parece ser aqui: trap.mtview.ca.us/~talby/netmask_2.4.tar.gz
wfaulk
@womble. os cidrs que você calculou usando a máscara de rede são os únicos que podem ser alocados pelos registros da Internet?
user2689877
2
Você merece uma cidra.
Aron
3

Sim. Você está procurando o Registro do espaço de endereço IPv4 da IANA .

Os endereços IPv4 que estão na Internet são os que começam com um dos números alocados nessa tabela.

Ricardo Polo
fonte
0

Não com o menor número possível de entradas; mas acho que é uma lista abrangente.

0.0.0.0/1
0.0.0.0/5
8.0.0.0/7
11.0.0.0/8
12.0.0.0/6
16.0.0.0/4
32.0.0.0/3
64.0.0.0/2
128.0.0.0/1
128.0.0.0/2
128.0.0.0/3
160.0.0.0/5
168.0.0.0/6
172.0.0.0/12
172.128.0.0/9
172.32.0.0/11
172.64.0.0/10
173.0.0.0/8
174.0.0.0/7
176.0.0.0/4
192.0.0.0/2
192.0.0.0/9
192.128.0.0/11
192.160.0.0/13
192.169.0.0/16
192.170.0.0/15
192.172.0.0/14
192.176.0.0/12
192.192.0.0/10
193.0.0.0/8
194.0.0.0/7
196.0.0.0/6
200.0.0.0/5
208.0.0.0/4
224.0.0.0/3
Rajan Patel
fonte
1
Apenas 0.0.0.0/1e 128.0.0.0/1é suficiente para abranger todo o espaço de endereço IPv4. Observe também que você respondeu a uma pergunta muito antiga que agora está um pouco desatualizada. A pergunta não menciona como os endereços RFC 6598 são tratados (o que faz sentido porque a pergunta foi escrita antes da publicação dessa RFC). Além disso, ninguém em sã consciência considera mais o espaço de endereços IPv4 na Internet.
kasperd