Como colocar duas sub-redes próximas uma da outra?

10

Eu tenho usado esse link , e estou tentando descobrir como colocar dois sub-redes diferentes próximas umas das outras.

Por exemplo, eu quero ter uma sub-rede / 27 a partir de 1.0.0.1, próximo a um / 25, então acho que a sub-rede / 25 iniciaria em 1.0.0.32, já que essa é uma fora do / 27 sub-rede. No entanto, quando tento fazer isso, a calculadora diz que o intervalo para / 25 seria 1.0.0.1-1.0.0.127, não começando em .32.

Esta é uma limitação da calculadora ou como você coloca sub-redes próximas uma da outra?

EDITAR : Eu acho que minha pergunta é quais sub-redes podem ser próximas umas das outras? O que determina isso?

    
por instipod 18.04.2013 / 15:53

4 respostas

7

Você precisa distinguir a sub-rede endereço inicial e a sub-rede tamanho . O número atrás da barra é o tamanho (em 32-x bits). Então você pode ter duas / 27 sub-redes como esta

10.0.0.1/27  == 10.0.0.1  -> 10.0.0.30
10.0.0.33/27 == 10.0.0.33 -> 10.0.0.62

mas uma sub-rede / 27 e uma / 25 da mesma maneira significariam iniciar o / 25 em um endereço posterior

10.0.0.1/27   == 10.0.0.1   -> 10.0.0.30
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254

desde que a sub-rede / 25 "precise" de mais espaço. Você não pode iniciar a sub-rede / 25 em um endereço arbitrário, apenas nos limites corretos:

10.0.0.1/25   == 10.0.0.1   -> 10.0.0.126
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254

mas observe que

10.0.0.33/25   == 10.0.0.1   -> 10.0.0.126

porque 10.0.0.33/25 é apenas outra maneira de dizer 10.0.0.1/25 ou 10.0.0.0/25 .

Você também pode decidir "preencher" o espaço entre você / 27 e sua sub-rede / 25 com mais / 27 sub-redes:

10.0.0.1/27   == 10.0.0.1   -> 10.0.0.30
10.0.0.33/27  == 10.0.0.33  -> 10.0.0.62
10.0.0.65/27  == 10.0.0.65  -> 10.0.0.94
10.0.0.97/27  == 10.0.0.97  -> 10.0.0.126
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254

ou com outro / 27 e um / 26:

10.0.0.1/27   == 10.0.0.1   -> 10.0.0.30
10.0.0.33/27  == 10.0.0.33  -> 10.0.0.62
10.0.0.65/26  == 10.0.0.65  -> 10.0.0.126
10.0.0.129/25 == 10.0.0.129 -> 10.0.0.254
    
por 18.04.2013 / 16:15
4

Prefixos / sub-redes usam a lógica binária. As sub-redes são determinadas pelos bits que são fixos e pelos bits que podem ser usados para endereços. O número de bits fixos é o tamanho do prefixo ou a máscara de sub-rede. Alguns exemplos de IPv4:

Prefix:           10.0.0.0/8
Prefix length:    8
Subnet mask:      255.0.0.0
Prefix bits:      00001010 00000000 00000000 00000000 = 10.0.0.0
Subnet mask bits: 11111111 00000000 00000000 00000000 = 255.0.0.0

Um 1 nos bits da máscara de sub-rede indica que o bit correspondente é fixo e um 0 indica que você pode usar esse bit. O tamanho do prefixo é o número de bits definidos como 1 e a máscara de sub-rede é esse número binário anotado como um endereço IPv4.

Portanto, neste exemplo, você pode usar:

First address in the prefix: 00001010 00000000 00000000 00000000 = 10.0.0.0
Last address in the prefix:  00001010 11111111 11111111 11111111 = 10.255.255.255

Outro exemplo com um comprimento de prefixo diferente:

Prefix:           10.0.0.0/10
Prefix length:    10
Subnet mask:      255.192.0.0
Prefix bits:      00001010 00000000 00000000 00000000 = 10.0.0.0
Subnet mask bits: 11111111 11000000 00000000 00000000 = 255.192.0.0

Neste exemplo, você pode usar menos endereços:

First address in the prefix: 00001010 00000000 00000000 00000000 = 10.0.0.0
Last address in the prefix:  00001010 00111111 11111111 11111111 = 10.63.255.255

Como você pode ver, a sub-rede é determinada pelo valor e número dos bits fixos. Ao usar seu exemplo, 1.0.0.32/25 você recebe:

Prefix:           1.0.0.32/25
Prefix length:    25
Subnet mask:      255.255.255.128
Prefix bits:      00000001 00000000 00000000 00100000 = 10.0.0.32
Subnet mask bits: 11111111 11111111 11111111 10000000 = 255.255.255.128

First address in the prefix: 00000001 00000000 00000000 00000000 = 1.0.0.0
Last address in the prefix:  00000001 00000000 00000000 01111111 = 1.0.0.127

O valor 32 está no meio dos bits flexíveis. Ao olhar para os prefixos /25 você obtém:

Prefix length:      25
Subnet mask bits:   11111111 11111111 11111111 10000000

1st /25 in 1.0.0.0: 00000001 00000000 00000000 00000000 = 1.0.0.0/25
2nd /25 in 1.0.0.0: 00000001 00000000 00000000 10000000 = 1.0.0.128/25
3rd /25 in 1.0.0.0: 00000001 00000000 00000001 00000000 = 1.0.1.0/25
4th /25 in 1.0.0.0: 00000001 00000000 00000001 10000000 = 1.0.1.128/25
5th /25 in 1.0.0.0: 00000001 00000000 00000010 00000000 = 1.0.2.0/25
Etc.

Ao olhar para os prefixos /27 você recebe:

Prefix length:      27
Subnet mask bits:   11111111 11111111 11111111 11100000

1st /25 in 1.0.0.0: 00000001 00000000 00000000 00000000 = 1.0.0.0/27
2nd /25 in 1.0.0.0: 00000001 00000000 00000000 00100000 = 1.0.0.32/27
3rd /25 in 1.0.0.0: 00000001 00000000 00000000 01000000 = 1.0.0.64/27
4th /25 in 1.0.0.0: 00000001 00000000 00000000 01100000 = 1.0.0.96/27
5th /25 in 1.0.0.0: 00000001 00000000 00000000 10000000 = 1.0.0.128/27
Etc.

Em uma sub-rede IPv4, o primeiro endereço (todos os bits flexíveis 0 ) é reservado e chamado de endereço de rede. O último endereço (todos os bits flexíveis 1 ) é o endereço de difusão da sub-rede. Você não pode usá-los para interfaces de rede em dispositivos.

Se você quiser colocar várias sub-redes próximas uma da outra, será necessário garantir que elas não se sobreponham. Quando você não tem muito espaço de endereçamento como no IPv4, fazer com que todas as sub-redes se encaixem pode ser um processo muito difícil, e mantê-lo gerenciável ao alterar o plano de endereçamento é ainda mais difícil. É por isso que o IPv6 é muito bom de se trabalhar: muito espaço de endereço, e uma sub-rede geralmente é um /64 (é possível usar diferentes comprimentos de prefixo, mas isso quebra algumas coisas, como configuração automática).

Se você estiver interessado em planos de endereçamento IPv6, dê uma olhada no 'Preparando um Plano de Endereçamento IPv6' documento que escrevi há alguns anos para a SURFnet (Rede Nacional Holandesa de Pesquisa e Educação). O modo como a sub-rede funciona no IPv6 é exatamente igual ao do IPv4, exceto que os números são muito maiores e escritos em hexadecimal (o que corresponde muito melhor aos bits do que a notação decimal usada para o IPv4!). Comprimentos de prefixo, tendo bits fixos e flexíveis, todos funcionam exatamente da mesma maneira. Um pequeno exemplo:

Prefix:           2001:0db8:0000:0000:0000:0000:0000:0000/64
Prefix length:    64
Subnet mask:      not really used anymore in IPv6, but it would have been:
                  ffff:ffff:ffff:ffff:0000:0000:0000:0000
Prefix bits:      0010 0000 0000 0001 0000 1101 1011 1000 = 2001:0db8
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
Subnet mask bits: 1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff
                  1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000

First address in the prefix:
                  0010 0000 0000 0001 0000 1101 1011 1000 = 2001:0db8
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
Last address in the prefix:
                  0010 0000 0000 0001 0000 1101 1011 1000 = 2001:0db8
                  0000 0000 0000 0000 0000 0000 0000 0000 = 0000:0000
                  1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff
                  1111 1111 1111 1111 1111 1111 1111 1111 = ffff:ffff

So from 2001:0db8:0000:0000:0000:0000:0000:0000
     to 2001:0db8:0000:0000:ffff:ffff:ffff:ffff

PS: Eu não usei a notação canônica / recomendada aqui de propósito. Normalmente, você compacta os zeros no endereço e escreve 2001:0db8:0000:0000:0000:0000:0000:0000 como 2001:db8:: , 2001:0db8:0000:0000:0000:0000:0000:0001 está escrito como 2001:db8::1 , etc.

    
por 18.04.2013 / 16:57
1
  • Para a / 24, o último octeto (geralmente reservado) para a rede é .0 e apenas 0. 1 subnet

  • Para um / 25, pode ser 0,0 ou 0,128. 2 subnets

  • Para um / 26, pode ser .0, .64, .128 ou .192. 4 subnets

  • Para a / 27, pode ser .0, .32, .64, .96, .128, .160, .192 ou 224 8 subnets

  • para a / 28, .0, .16, .32, .48, .64, .80, .96, .112, .128, .144, .160, .176, .192, .208, .224 ou .240. 16 subnets

  • para a / 29, .0, .8, .16, .24, .32, .40, .48, .56, .64, .72, .80, .88, .96, .104, .112, .120, .128, .136, .144, .152, .160, .168, .176, .184, .192, .200, .208, .216, .224, .232, .240 ou .248 32 subnets

  • O prefixo / 30 é geralmente encontrado em interfaces ponto-a-ponto. 64 subnets

  • O prefixo / 31 não é comumente encontrado na natureza, pois não tem hosts geralmente endereçáveis, já que ele abrange apenas dois números de rede, a "rede" e a "transmissão" sem espaço para um IP de host. 128 subnets (todos os números pares entre 0 e 254)

  • O prefixo / 32 é usado para especificar uma rota para um único host. Está a mais específica das rotas e, se presente, deve ter encaminhamento precedência sobre todas as outras entradas da tabela de rotas que não são também / 32s. A / 32 não possui uma 'rede' nem um endereço 'broadcast'. 256 subnets (0 e 255 podem não funcionar em algumas implementações)

por 19.04.2013 / 04:48
0

Uma maneira simples de entender:

No IPv4:

Imagine uma linha com 256 * 256 * 256 * 256 (ou 2 ^ 32) endereços IP possíveis.

[] [] [] [] .................. [] [] []
       256*256*256*256 total IP adresses

Isto tem máscara de sub-rede 0.0.0.0 (ou 0000 0000 0000 0000 0000 0000 0000 0000 em binário)
  Todos os bits que não são mascarados podem ser usados para fornecer um endereço IP nessa rede.

Os endereços possíveis nessa rede única são:

0000 0000 0000 0000 0000 0000 0000 (< - NETMASK, não mascarando nada aqui ...)

0000 0000 0000 0000 0000 0000 0000 0000 (IP 0.0.0.0) para o
1111 1111 1111 1111 1111 1111 1111 1111 (IP 255.255.255.255)

Esta rede inteira começa em IP 0.0.0.0 e vai até o IP 255.255.255.255

Cada bit em uma máscara de sub-rede divide a linha em 2 partes iguais.

O primeiro bit em uma máscara de sub-rede dividirá isso em duas partes iguais, cada uma com 128 * 256 * 256 * 256 (ou 2 ^ 31) endereços IP:

[] [] [] .......... [] [] []  |  [] [] ........... [] []
128*256*256*256 IP Adresses       128*256*256*256 IP Adr

Isso tem máscara de sub-rede 128.0.0.0 (ou 1000 0000 0000 0000 0000 0000 0000 0000 em binário)
  Todos os bits que não são mascarados podem ser usados para fornecer um endereço IP nessa rede.

Assim, você pode ter duas sub-redes e, para cada sub-rede, você tem 31 bits de endereços IP disponíveis.

Para a primeira sub-rede (aquela em que, atrás da netmask, está '0')

0000 0000 0000 0000 0000 0000 0000 (< - NETMASK)

0000 0000 0000 0000 0000 0000 0000 0000 (IP 0.0.0.0) para o
0111 1111 1111 1111 1111 1111 1111 1111 (IP 127.255.255.255)

e para a segunda sub-rede (aquela em que, atrás da netmask, está '1')

0000 0000 0000 0000 0000 0000 0000 (< - NETMASK)

1000 0000 0000 0000 0000 0000 0000 0000 (IP 128.0.0.0) para o
1111 1111 1111 1111 1111 1111 1111 1111 (IP 255.255.255.255)

O próximo bit adicional na máscara de sub-rede divide ambos os lados em 2 partes iguais de 2 ^ 30 Endereços IP cada

E assim por diante ...

Portanto, se você tentar atribuir, digamos, uma sub-rede de / 3, isso significa que você gastou 3 iterações dividindo, terminando com 2 ^ 3 = 8 sub-redes. Cada sub-rede só pode ser uma das 8 subdivisões de toda a linha de máquinas. Eles não podem se sobrepor. Cada um começando depois do anterior.

[] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... [] | [] ... []
32*256*256*256 or 2^30 IP Adresses each.

Isto tem uma máscara de sub-rede 0.0.0.0

Assim, para a primeira sub-rede (aquela em que, atrás da netmask, está '000')

1110 0000 0000 0000 0000 0000 0000 (< - NETMASK)

0000 0000 0000 0000 0000 0000 0000 0000 (IP 0.0.0.0) para o
0001 1111 1111 1111 1111 1111 1111 1111 (IP 31.255.255.255)

e para a segunda sub-rede (aquela em que, atrás da netmask, está '001')

1110 0000 0000 0000 0000 0000 0000 0000 (NETMASK)

0010 0000 0000 0000 0000 0000 0000 0000 (IP 32.0.0.0) para o
0011 1111 1111 1111 1111 1111 1111 1111 (IP 63.255.255.255)

...

e para a 7ª sub-rede (aquela em que, por trás da netmask, é '110')

1110 0000 0000 0000 0000 0000 0000 0000 (NETMASK)

1100 0000 0000 0000 0000 0000 0000 0000 (IP 192.0.0.0) para o
1101 1111 1111 1111 1111 1111 1111 1111 (IP 223.255.255.255)

e para a 8ª sub-rede (aquela em que, atrás da netmask, está '111')

1110 0000 0000 0000 0000 0000 0000 0000 (NETMASK)

1110 0000 0000 0000 0000 0000 0000 (IP 224.0.0.0) para o
1111 1111 1111 1111 1111 1111 1111 1111 (IP 255.255.255.255)

Se você continuar adicionando bit à máscara de rede, continuará divisando: Uma sub-rede de / 32 separa uma única máquina.

Mas lembre-se de que você não pode ter apenas máquinas:

para fazer as coisas funcionarem, alguns dos intervalos da sub-rede são reservados:

para cada sub-rede, o "bit 0 no valor 1" e "todos os bits no valor 1" são normalmente reservados para transmissão, então você normalmente tem apenas endereços IP nb_of_possible_adresses_in_the_subnet-2 disponíveis em uma sub-rede para interfaces de máquina reais. E é melhor que seja a interface de um gateway que tenha outra interface em outra (s) rede (s), permitindo que você a use como um gateway para alcançar essas outras redes (e tudo, através dos gateways dessas outras redes)

    
por 18.04.2013 / 22:40