Tanto quanto eu entendo, "endereço de rede" como endereço especial é um artefato das redes IP classful do passado. Hoje, usamos o CIDR (Classless Inter-Domain Routing ) na Internet, que não possui o conceito de endereço de rede (se você observar a RFC 4632 vinculada acima, verá que ela lista 256 endereços IP possíveis por legado Bloco "C", por exemplo, nenhum endereço reservado para rede ou endereço de broadcast (embora as transmissões sejam definidas como essenciais em outras RFCs).
Dito isto, você ainda não deve atribuir um endereço de rede a nenhum host específico em uma rede: O endereço de rede é essencial para o roteamento. Este conceito é amplamente utilizado em RFCs ( RFC 1812 ). Basta olhar para as tabelas de roteamento ( route
comando); você verá como o endereço de rede local é usado para separar o tráfego da rede local do que deve passar pelo roteador. E se esse endereço de rede local foi atribuído a algum host?
Pior ainda: é melhor não atribuir endereços IP que terminem em zero, mesmo que esse endereço não seja um endereço de rede. Por exemplo, se sua rede é 10.10.0.0/255.255.0.0, o endereço IP 10.10.5.0 não é o seu endereço de rede, mas é melhor não atribuir esse IP, mesmo que seja completamente válido, mesmo em redes IP classful. Algumas pilhas de software / IP herdadas podem ter problemas com isso.
UPDATE: por goblinlord
De acordo com a RFC 1812 (Seção 5.3.5.2), o que chamamos de endereço de rede foi originalmente usado para "transmissões direcionadas" que enviariam um pacote de transmissão para a rede desejada. Esta função ficou obsoleta devido a ataques SMURF. A função foi oficialmente alterada na RFC 2644 . Posteriormente, outras implementações devem silenciosamente descartar pacotes com um endereço de origem, conforme descrito (o endereço de rede). Enquanto isso é o que deve acontecer, estou curioso para saber quantas implementações realmente o fazem.
Isso é adicionado ainda no RFC 3021 quando a sub-rede / 31 foi abordada.
Portanto, a resposta prática é: realmente depende. Isso depende de:
Não tive problemas para acessar sites em testar isso; parece que, em última análise, tudo depende dos caprichos dos administradores de rede. Geralmente, não há como um dispositivo upstream dizer se um endereço faz parte de uma rede ou endereço de broadcast ou não, pois é simplesmente um endereço em um bloco maior para eles ... Portanto, nenhum provedor de serviços de Internet impedirá que você atribua e usando seu endereço de rede, a menos que eles o designem a você e ao administrador da rede o tenha bloqueado explicitamente.
Tenho certeza de que existem analistas de segurança e hackers por aí que possuem estatísticas insanamente detalhadas sobre exatamente quantas variantes de implementações de pilha TCP-IP existem e quais são as funções de acomodar e não acomodar ou permitir e exatamente como e onde eles perdem sua marca .
De fato, estou navegando e postando isso no meu endereço de rede.
Não me chame de netizen ruim, a menos que você tenha uma solução melhor para consertar esse castelo de cartas: a realidade é que, se possível, isso acontecerá. A realidade é que ninguém realmente inteligente o suficiente sentou-se e refletiu sobre tudo isso em todas as suas iterações possíveis para criar um design completamente à prova de idiotas, antes de as pessoas começarem a usá-lo - como na maioria das coisas na vida. O resultado? Padrões em que muitas coisas não se somam e / ou se perdem na tradução.
Bem-vindo ao mundo real. Não deixe isso dissuadi-lo de perseguir os ideais ideais sempre esquivos ... Só não espere apoio dos canais ou fóruns "oficiais", a menos que esteja disposto a sujar as mãos e dedicar seu tempo e vida a ele, construindo o consenso necessário e navegando na política em torno disso.
Então, acho que o que os outros pôsteres estavam tentando dizer: se você deseja fazer essa política oficial e usá-la na produção, está por sua conta. (Mas você não está de qualquer maneira?) Talvez tenhamos sorte e tenhamos uma inteligência de computador projetada para nós um IPv8 compatível com o IPv4 e IPv6 e todas as suas implementações interrompidas.
fonte
Eu sou novo na rede, mas vou dar meus 2 centavos também.
Se eu tiver uma sub-rede / 28 de xxx0 - xxx15 De acordo com as regras predefinidas, teríamos 14 hosts utilizáveis e 2 restantes. o restante é para rede e transmissão.
Vamos, em vez de seguir a regra acima, usar todos os 16 hosts. Então, nesse caso, tudo ficaria bem, sem problemas. Mas se a comunicação fosse necessária fora da rede, não seria possível devido à falta de recursos para enviar ou receber as informações.
Não sou bom em explicar, mas em outras palavras.
Se eu morasse em uma casa em uma rua e a rua continha 14 casas. Uma entrada e saída para acesso à estrada principal.
Meu endereço de correspondência varia de 1-14 Personal Street, Off Network Road.
Isso não seria problema para o carteiro. Agora vamos supor que os desenvolvedores ficaram gananciosos e adicionaram mais 2 casas e se livraram das pistas.
Em seguida, meu novo endereço de correspondência iria de 1-16 Personal Street
Nesse caso, o homem do correio estaria com problemas.
Isso é um palpite, deixe-me saber se estou falando besteira.
fonte
O endereço de rede permite criar tabelas de roteamento com coluna de destino de tamanho fixo (IPv4 de 4 bytes) e operações binárias de tamanho fixo, para que o roteamento de host e o roteamento de rede sejam realmente a mesma coisa.
Imagine uma tabela de roteamento como esta: (este PC possui uma conexão paralela com outro PC e uma placa de rede)
O AND entre o endereço IP e a máscara de rede fornece exatamente o que você precisa, um número de 4 bytes que pode ser comparado com cada linha sem cálculos adicionais.
Portanto, o número zero do host é especial no sentido de que, após a operação AND, seu endereço representa naturalmente toda a rede.
Se você decidisse usar o número da rede como um número de host, isso resultaria em uma tabela como esta:
Isso parece legítimo, então suponho que o conceito de endereço de rede seja usado por razões de roteamento e, portanto, foi decidido arbitrariamente marcá-lo como um endereço especial e proibir seu uso como endereço de host.
Bem ... na verdade não é assim tão simples. Eu decidi experimentá-lo (!!!):
No momento, os programas de rede não me permitem usar um número de rede como um endereço normal.
fonte
Enquanto procurava a resposta para esta pergunta, deparei-me com este artigo da Cisco. A citação a seguir desse artigo resume muito bem, eu acho.
Evitar a confusão é uma razão boa o suficiente para mim.
fonte
A RFC 1122 ("Requisitos para hosts da Internet - Camadas de comunicação") proíbe:
fonte
Um endereço de rede não é considerado um endereço de host, mas é apenas um número. Em áreas limitadas de endereço, como redes ponto a ponto, uma máscara / 30 é usada com frequência, mas ainda utiliza os endereços de host. Uma prática menor, mas que atinge o mesmo princípio, é usar uma máscara / 31 e usar uma extremidade como endereço de rede e a outra como transmissão.
Ex.
fonte