O CIDR realmente "elimina" as classes de endereços IP?


20

Ainda estou lutando para entender até que ponto o CIDR realmente torna obsoletas as classes de endereços IP. Aqui está o que eu entendi até agora:

  1. É ridiculamente ineficiente (e impossível também) atribuir a toda organização que precisa endereçar a mais de 255 hosts um endereço de classe B, que tecnicamente poderia endereçar 65535 hosts.

  2. No entanto, se uma organização desse tipo precisar endereçar, digamos, aproximadamente 700 hosts, é possível atribuir apenas três (de preferência contíguos) endereços de rede de classe C a essa organização. Por exemplo:

    192.42.42
    192.42.43
    192.42.44
    
  3. Problema: Para que uma organização, roteadores teria para armazenar três entradas em suas tabelas de encaminhamento, que não escala.

  4. O CIDR resolve esse problema introduzindo o resumo / agregação de rotas, permitindo que o ISP que atribuiu as três redes de classe C à organização anuncie apenas um prefixo para o resto do mundo. Por exemplo,

    192.42.42.0/21
    

Por enquanto, tudo bem. No entanto, não consigo entender por que cada recurso que toco afirma que o endereçamento de classe é "uma coisa do passado". Afinal, o ISP é responsável por, digamos, endereços de rede de classe C, e faz atribuí-los a seus clientes. O CIDR apenas corrige o problema de várias entradas nas tabelas de encaminhamento, certo? Portanto, as classes de endereços IP ainda existem, não são?

Como o exame está chegando, a ajuda é muito apreciada. : P


2
/ 21 são oito redes "classe c".
Peter Peter

5
Estou tentado a dizer que é uma coisa do passado porque se refere a IPv4
Hagen von Eitzen

@HagenvonEitzen Estou tentado a apontar que isso é completamente falso na realidade prática.
Lightness Races com Monica

2
É uma coisa do passado, porque 1993 foi há 22 anos. Consulte a RFC 1517, 1518, 1519. Não confie em nenhum recurso que afirme que os endereços de classe sejam relevantes hoje ou os trate como algo além de curiosidades históricas.
Michael Hampton

Respostas:


22

A delegação de endereços costumava acontecer em três tamanhos: delegações de classe A, B e C. Seriam dadas a partir de um certo intervalo de endereços, delegações de classe B de um intervalo diferente etc. Como as diferentes classes usavam intervalos de endereços diferentes, era possível determinar classe, olhando para a primeira parte de um endereço. E isso foi incorporado aos protocolos de roteamento.

  • As delegações de classe A continham 16777216 endereços cada
  • Delegações de classe B continham 65536 endereços cada
  • As delegações de classe C continham 256 endereços cada

Isso foi muito ineficiente para redes que não se encaixavam nesses tamanhos. Uma rede que precisava de 4096 endereços obteria dezesseis delegações de Classe C (o que seria ruim para a tabela de roteamento global, porque cada uma delas teria que ser roteada separadamente: o tamanho da classe foi incorporada ao protocolo) ou obteria uma Classe B delegação (que desperdiçaria muitos endereços).

Em 1993, o CIDR foi introduzido. Os protocolos foram ajustados para poder lidar com prefixos de tamanhos diferentes e tornou-se possível rotear (internamente e externamente) prefixos como a / 30 ou a / 21 ou a / 15 etc. etc. Qualquer coisa entre / 0 e / 32 tornou-se possível. As organizações que precisavam de endereços para 2048 poderiam obter um / 21: exatamente o que precisariam.

A maneira como você poderia subdividir internamente esses endereços também era limitada. Havia regras sobre como você poderia sub-rede. Originalmente, cada sub-rede da sua rede de classe tinha que ter o mesmo tamanho. Você precisa de uma sub-rede com 128 endereços e outra sub-rede com 16 endereços: muito ruim.

O Mascaramento de sub-rede de comprimento variável (VLSM) é o equivalente da rede interna do CIDR. O VLSM existe há mais tempo que o CIDR. Isso já foi mencionado em 1985. Portanto, o CIDR basicamente estende o VLSM ao roteamento entre domínios. Com o VLSM, suas sub-redes nem precisam mais ter o mesmo tamanho. Você pode atribuir um número diferente de endereços para cada sub-rede, dependendo de suas necessidades.

Hoje em dia, todo o roteamento na internet é feito sem aulas. Um prefixo na tabela de roteamento pode coincidir (ou por causa do histórico) com a estrutura de classe, mas os protocolos não assumem mais que podem deduzir o comprimento do prefixo (máscara de sub-rede) da primeira parte do endereço. Todos os comprimentos de prefixo são explicitamente comunicados: sem classe.

Dizer que um ISP está no comando de uma rede de Classe C também é obsoleto. Os endereços são distribuídos completamente sem classe pelos RIRs ( Registros Regionais da Internet , as organizações responsáveis ​​por delegar endereços a ISPs e empresas com seus próprios endereços independentes).

As classes de endereços IPv4 realmente não existem mais e foram descontinuadas em 1993. Se você olhar para os antigos protocolos de roteamento obsoletos, é claro que ainda poderá ver as suposições feitas com base na classe de endereços, mas isso foi há 20 anos ...


1
Essas "regras" eram limitações dos protocolos de roteamento. Todas as suas redes precisam ter o mesmo tamanho, porque o protocolo de roteamento não possui uma máscara de rede. (por exemplo, RIPv1, IGRP)
Ricky Beam

1
Sim, foi o que eu disse. Levando comprimento do prefixo em protocolos de roteamento é como VLSM e CIDR são implementadas
Sander Steffann

Eles não estão "adivinhando com base no endereço", estão aplicando uma máscara de rede de interface local a toda a classe. Por exemplo. se você tiver uma interface 10.0.0.5/24, tudo em 10/8 será um / 24.
Ricky Beam

1
Esse é o bit VLSM. A parte da classe era que eles assumiam que todos os endereços que começavam com 10 pertenciam juntos. O bit pré-VLSM supõe que, como a interface local era / 24, todas as sub-redes em 10/8 seriam / 24. Tanto o / 24 quanto o / 8 são suposições nos dias de hoje. Cada sub-rede pode ter um tamanho diferente e não há como determinar onde está o limite agregado.
Sander Steffann

1
Além do que foi dito, os primeiros bits do endereço IP determinaram a classe de endereço. Primeiro bit 0 = classe A, em primeiro lugar dois bits 10 = classe B, primeiro três bits 110 = classe C, etc. Ver também en.wikipedia.org/wiki/...
um CVn

29

o endereçamento de classe é "uma coisa do passado".

Isso é verdade porque nada na internet moderna faz endereçamento de classe [1] . Com o endereçamento classful, a máscara de rede é um valor fixo com base no endereço. No seu exemplo, você não pode "mesclar" três intervalos de classe C para ter 700 hosts em uma LAN. A máscara de rede para cada intervalo é automaticamente de 24 bits.

O CIDR corrigiu isso abolindo as regras pelas quais o endereço dita a máscara. Assim, uma LAN pode ser de qualquer tamanho.

Você (e muitas outras pessoas) ainda está desligado das palavras "Classe C", "Classe B" e "Classe A". Essas construções não existem mais; e não faz décadas. O que as pessoas querem dizer quando usam o termo é o tamanho da máscara de rede de 24, 16 e 8, respectivamente. Eles não significam que a semântica de classes está sendo aplicada.

[1] 10.0.0.1/24 é uma configuração inválida em um sistema de classe.


1
Acho que o Windows ainda usa a classe IP do endereço como máscara padrão.
Taemyr 10/07/2015

2
Sim, mas não é especificamente de classe. É apenas a aplicação de um CIDR padrão. Nenhum onde a Microsoft exigir ou especificar a classe Endereço IP
Mike McMahon

@ Taemyr Não é apenas o Windows. O Linux derivou a máscara padrão dos primeiros bits do endereço por muitos anos. Este ainda é o caso do Ubuntu 14.04. Mas é apenas um padrão, que na maioria das vezes precisa ser substituído por um valor diferente.
kasperd

15

O endereçamento de classe suporta apenas três máscaras para unicast: / 8, / 16 /, / 24.

O CIDR permite que a máscara tenha qualquer valor de / 0 a / 32.

Pense em uma série ponto a ponto: isso teria desperdiçado uma classe C / 24 (256 xIPs) com uma configuração de classe antes; com o CIDR, ele precisa apenas de / 30 (4 xIPs) ou / 31 (2 xIPs).

A maioria dos ISPs agora atribui um / 28 apenas a um cliente que fornece 14 IPs, ou até menos.

Os dois modos de operação não são compatíveis, pois um (classful) adivinha a máscara do IP e o outro (CIDR) especifica com precisão.

Veja o artigo da Wikipedia “Classful Network” .


Obrigado por dedicar tempo para escrever uma resposta. No entanto, não vejo como sua resposta está relacionada à minha pergunta de forma alguma.

5
Sua resposta é direta. Quando você entender a diferença entre sem aula e com classe, a resposta fará sentido.
Ricky Beam

@baerenfaenger Aqui está a sua pergunta como eu a entendi: "Eu simplesmente não consigo entender por que ... o endereçamento de classe é" uma coisa do passado "... ... O CIDR apenas corrige o problema de várias entradas nas tabelas de encaminhamento, certo ? Assim, as classes de endereços IP ainda existem, não são? "
Pieter

No entanto, no IPv4, uma rede de sub-rede / 31 não pode conter nenhum endereço IP, 0 é Ambos são reservados para o ID da própria rede e a transmissão para a rede.
ratchet freak

2
@ratchet aberração exceto para ligações PTP, lá você não precisa de um ip broadcast, e pode sair com / 31 see tools.ietf.org/html/rfc3021
Pieter

5

Como muitas respostas já explicam, as classes são coisa do passado porque não permitem máscaras de sub-rede que não sejam / 8, / 16 e / 24.

Essas máscaras de sub-rede específicas ainda são muito populares, especialmente o / 24, porque são as mais fáceis para nós, humanos. Para essas máscaras, o final da parte da sub-rede do endereço é alinhado com um ponto no endereço IP (decimal com pontos). Portanto, é visualmente claro se dois endereços IP estão na mesma sub-rede ou não, nenhum cálculo é necessário.

É por isso que os termos das classes A, B e C permanecem, eles ainda se alinham às máscaras de sub-rede mais comuns. Mas eles não fazem mais sentido, e dizer 10.11.12.0/24 é uma classe C está simplesmente errado. O primeiro octeto de uma classe C foi, por definição, entre 192 e 223.


2

No roteamento Classful , a máscara de rede é implícita nos bits superiores do endereço e não é armazenada nas tabelas de roteamento; a classe é uma propriedade de cada endereço, não apenas da topologia de roteamento. Uma rede de classe C não pode ser um subconjunto de uma rede de classe B, porque os bits superiores não podem corresponder a ambos.

Sua organização hipotética com três redes de classe C precisaria prestar atenção em quais computadores obtiveram endereços em qual das três redes. Com o roteamento CIDR, eles podem usar uma máscara de rede que permite que todos os computadores estejam na mesma sub-rede.


1

O único lugar que vi comportamento de classe real nos últimos anos é no protocolo de encapsulamento ponto a ponto. PPTP Muitos considerariam isso obsoleto em si, mas ainda há muito ainda em uso.

Quando o cliente se conecta a um servidor, o túnel obtém uma rota padrão ou uma rota para a rede classful do servidor. https://technet.microsoft.com/en-us/library/cc779919%28v=ws.10%29.aspx

Tinha algumas redes onde isso realmente era um problema, até 2016.

Acredito que existem soluções alternativas com o DHCP e vários scripts complementares, e de fato para rotas na outra direção. Se possível, use um protocolo de encapsulamento diferente, com melhor suporte para rotas.

Atenciosamente,

Jonathan.


0

Como você descreveu corretamente, o endereçamento classfull não é eficiente em comparação com o endereçamento sem classe, pois muitos endereços IP permanecem desperdiçados dentro das sub-redes com endereçamento classfull.

Eu simplesmente não consigo entender por que cada recurso que toco afirma que o endereçamento de classe é "uma coisa do passado"

É verdade que os IPs podem lidar com uma rede de classe C, mas isso não é verdade para todos os ISPs. Além disso, na era anterior, o endereçamento completo de classe era usado em todas as sub-redes (mesmo para sub-redes domésticas ou corporativas), onde hoje em dia apenas o endereçamento sem classe é usado (se não NAT).

Esta é a razão pela qual o endereçamento de classe é uma coisa do passado.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.