O IPv6 pode tornar os números de NAT / porta redundantes?

8

Pelo que sei, cada processo pode ter seu próprio endereço IP, com muitos IPs de sobra.

Quais seriam as desvantagens?

Essencialmente, seu host se tornaria um roteador e cada processo é um host (no sistema atual).

Tobiq
fonte
Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
Ron Maupin
Alguma resposta o ajudou? Nesse caso, você deve aceitar a resposta para que a pergunta não apareça para sempre, procurando uma resposta. Como alternativa, você pode fornecer e aceitar sua própria resposta.
Ron Maupin

Respostas:

13

O IPv6 não possui um padrão NAT como o IPv4 (o NAT quebra a premissa de ponta a ponta do IP e o IPv6 foi projetado para restaurá-lo). Existe uma RFC experimental para NAT IPv6, mas é uma NAT individual na camada de rede, em vez de algo como o NAPT IPv4 que também traduz endereços de porta e, de fato, a RFC NAT IPv6 experimental proíbe expressamente que .

Se você pensar nos vários protocolos de transporte, o TCP e o UDP usam portas, que são realmente endereços para esses protocolos de transporte. Outros protocolos de transporte podem usar outros endereços, e alguns não usam endereços.

Sua ideia possivelmente funcionaria com TCP ou UDP, mas apenas um, e provavelmente não com outros protocolos de transporte. O IPv6 é sem conexão, como o UDP, por isso pode funcionar com o UDP, mas o TCP é orientado a conexões e executa muito trabalho que, caso contrário, precisaria ser executado pelo aplicativo.

Existem requisitos para os protocolos de transporte sem conexão e orientados a conexão. Na verdade, o antecessor do IPv4 tinha o equivalente a IP e TCP como um protocolo único, mas tornou-se necessário dividi-los porque alguns protocolos de transporte precisam estar sem conexão.

Ron Maupin
fonte
9

Uma desvantagem é que as camadas superiores precisam estar cientes dos endereços IP, o que viola o princípio de estratificação. O que aconteceria se você mudasse para o IPv4? Ou alguma outra coisa?

Como as camadas superiores informam à camada de rede que ela deve começar a responder a um endereço IP? Suponha que um novo aplicativo seja iniciado. Como a camada de rede sabe que há um novo endereço para responder?

Teoricamente, o IPv6 poderia eliminar o NAT, mas ainda existem razões pelas quais uma organização pode querer ocultar seus endereços IP internos.

Ron Trunk
fonte
Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
Ron Maupin
6

A necessidade de NATs como forma de compartilhar endereços IP públicos desaparecerá com o IPv6, mas os NATs ainda podem ter alguns usos por razões de segurança.

A remoção de portas pode ser possível em teoria, mas seria uma tarefa enorme. Mesmo se você reservar os últimos 16 bits do endereço IP para o número da porta + 1 bit para o sinalizador TCP / UDP, seria necessário refazer todo o software que descompacta o pactet da 3ª camada para a 4ª para usar os bits do IP endereço para número da porta e protocolo, em vez de dados no pacote.

E essa é a solução "fácil" quando você coloca os nubmers de porta no endereço IP; se você quiser livrar-se ou números de portas, precisará alterar todos os softwares e bibliotecas que usam portas, sejam servidores, clientes, firewalls , etc, etc. Seria basicamente impossível, todo software que diga "servidor aberto na porta X" que funcione bem ao passar do IPv4 para o IPv6 será interrompido instantaneamente se você remover completamente as portas.

É cada vez mais fácil manter apenas as portas.

kajacx
fonte
Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
Ron Maupin
4

Não seria IPv6. É claro que esse sistema é viável, mas seria uma variação do protocolo IP. Hoje, os IPs contêm duas partes: um identificador de host e um identificador de serviço.

Com o seu esquema, seria essencialmente um descritor de serviço. Isso exigiria alterações no DNS (por exemplo, como você diferencia o servidor SMTP por exemplo.com e o servidor www por exemplo.com?)

Não vejo como isso seria benéfico no sistema de hoje com os descritores host: service. Hoje não seria possível nada que não fosse possível.

vidarlo
fonte
Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
Ron Maupin
0

Como já foi dito, ter números de porta é um requisito, mesmo que eles acabem sendo "codificados" no endereço IP do serviço.

Alguns aplicativos precisam de mais de um número de porta. Por exemplo, a maioria dos servidores web precisa das portas 80 e 443 (e talvez outra porta para websockets ou qualquer outra coisa). Esse sistema precisaria de três endereços IP com portas codificadas. Embora tenhamos muitos IPs, (atualmente) significaria que a configuração no nível do sistema seria necessária para suportar esses três números de porta. Usar um número de porta separado significa que os aplicativos podem simplesmente iniciar e usar as portas sem precisar do sysadmin para executar algumas configurações primeiro. Como já foi dito - é mais fácil usar um número de porta.

Quanto ao NAT, sim, o IPv6 deve remover a necessidade do NAT em quase todos os casos. Alguns casos permanecem, portanto, provavelmente não desaparecerá completamente, mas o uso generalizado provavelmente diminuirá significativamente.

Ralph Bolton
fonte
Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
Ron Maupin
0

Os endereços IP e portas, embora geralmente vistos juntos, executam tarefas muito distintas. Os endereços IP são usados ​​para rotear o tráfego para o seu computador especificamente e os números de porta são usados ​​pelos aplicativos.

Uma analogia muito boa é enviar e-mail para um prédio de apartamentos. O endereço do edifício seria equivalente a um endereço IP e os números da unidade seriam análogos a um número de porta. Por essa analogia, diremos que o endereço do prédio é 127 Home Ave. Digamos que você queira enviar uma carta para Henry TT Peterson, para que você envie uma carta para o prédio, ele não a receba porque precisa de mais orientações sobre o apartamento dele. , apartamento 80.

Em teoria, o endereço IPv6 pode substituir os endereços IPv4 e os números de porta, no entanto, isso viola precedentes bem estabelecidos da rede e há algumas desvantagens importantes:

  • Derrota o próprio objetivo que o IPv6 foi criado para aliviar (preocupações sobre o mundo ficar sem endereços IP)
  • As tabelas de roteamento internas aos roteadores e comutadores se tornariam exponencialmente maiores sem oferecer nenhum benefício ( muitos endereços serão roteados para o mesmo computador físico )
  • Todo aplicativo em qualquer computador precisará de um endereço exclusivo e, embora o IPv6 ofereça muitos e muitos mais endereços (2 ^ 128 vs 2 ^ 32), acabaremos rapidamente e, em seguida, criaremos o IPv8, o IPv10 e o IPv12. estará correndo uma curva exponencial e isso praticamente não será divertido.

No que diz respeito ao NAT, isso foi criado por 2 razões, já havia preocupações de que o mundo estivesse ficando sem (ou acabaria) com endereços IP públicos, o que foi aliviado em massa ao permitir às organizações e até redes domésticas uma quantidade incrível de endereços IP que podem ser usados ​​internamente e permite que máquinas importantes sejam "ocultas" do mundo (como seu banco de dados com informações sigilosas ou o laptop do CEO)

Espero que essa explicação tenha sido útil; veja bem, os números de porta e NAT são uma coisa boa , não gostaríamos de substituí-los pelo IPv6, porque é um grande passo para trás, se quisermos realmente expandi- los ou substituí-los por algo ainda melhor

DreadedEntity
fonte
11
1. "Derrota o propósito do IPv6" - Não, não, seu computador provavelmente já possui vários endereços IPv6 sem problemas. Pelo menos 2 ^ 64 endereços são reservados para uma rede doméstica típica. "Tabelas de roteamento se tornariam maiores" - Não, não, apenas uma entrada da tabela de roteamento para toda a sua rede. (E quando você olha de fora do ISP, há apenas uma entrada para todo o ISP.) Você realmente subestima o tamanho de 2 ^ 128. Digamos que você tenha tratado os últimos 16 bits como um número de porta (o que provavelmente não é como isso funcionaria), você ainda tem 2 ^ 112 endereços de computador.
User253751 28/05/19
(Na realidade, a maioria dos computadores não usam todas as 65.536 portas, quer eu guesstimate é inferior a 100 99% do tempo.)
user253751
@immibis coberto tudo o que eu estava pensando ao ler o post
Tobiq