Quais são as diferenças entre os 3 tipos de portas?

3

Eu já li um tópico muito parecido com este, mas ainda não entendi.

Alguém poderia explicar a diferença entre portas bem conhecidas, registradas e dinâmicas.

O que eu sei até agora:

portas bem conhecidas são usadas para ouvir e são encaminhadas por porta para enviar tráfego para um ip específico

As portas dinâmicas são do lado do cliente e são usadas apenas para a sessão ativa. uma vez que expira, a porta se torna disponível novamente. Eles são usados apenas para que o tráfego retorne ao usuário correto.

Registrado - não entende nada

    
por Simon 13.08.2015 / 00:17

4 respostas

6

No que diz respeito aos protocolos TCP e UDP, as portas são todas iguais. Qualquer um deles pode ser usado para que um serviço / daemon ouça, qualquer um deles pode ser encaminhado por porta em um gateway NAT (também conhecido como NAPT, PAT), e qualquer um deles pode ser usado por um cliente para iniciar uma conexão.

Historicamente, muitos protocolos conhecidos, como o HTTP (80), receberam portas padrão abaixo de 1024, portanto muitos SOs, incluindo a maioria dos Unixes e SOs semelhantes a Unix, não permitem que você abra um ouvinte em essas portas, a menos que você tenha credenciais de administrador / raiz. Isto está sob a suposição de que sua caixa Unix é na verdade um sistema multiusuário, e J. Usuário aleatório não deve ser capaz de executar um servidor HTTP na caixa e fazer parecer que o servidor HTTP desse usuário é o servidor HTTP OFICIAL para essa caixa, executando-o na porta 80. Mesmo com SSH (22), Telnet (23), SMTP (25), FTP (21), etc.

Entre 1024 e 49152 estão as portas agrupadas que foram designadas como a porta padrão para muitos protocolos não muito conhecidos, especialmente corporativos / proprietários. É considerado uma boa prática para um sistema operacional tentar não usar essas portas.

Quando um processo de cliente ou servidor solicita a escuta em uma porta, ou pede para iniciar uma conexão TCP de saída ou fluxo UDP, e não especifica uma porta específica, o código de rede TCP e UDP no kernel (a "rede stack ") atribui a eles uma porta não utilizada no momento arbitrariamente. A fim de não atrapalhar os serviços que podem mais tarde usar portas "registradas" proprietárias, a pilha de rede geralmente tentará evitar o uso de portas conhecidas ou registradas para isso e, em vez disso, restringirá-se ao efêmero / portas dinâmicas entre 49152 e 65535.

    
por 13.08.2015 / 00:57
6

Portas bem conhecidas

  • Os números de porta no intervalo de 0 a 1023 são as portas conhecidas ou as portas do sistema. Eles são usados por processos do sistema que fornecem tipos amplamente utilizados de serviços de rede. Em sistemas operacionais do tipo Unix, um processo deve executar com privilégios de superusuário para poder ligar um soquete de rede a um endereço IP usando uma das portas conhecidas

Portas dinâmicas

  • O intervalo 49152–65535 (2 15 +2 14 a 2 16 -1) contém portas dinâmicas ou privadas que não podem ser registradas com a IANA. Esse intervalo é usado para serviços privados ou personalizados ou finalidades temporárias e para alocação automática de portas efêmeras.

Portas registradas

  • O intervalo de números de porta de 1024 a 49151 são as portas registradas. Eles são designados pela IANA para um serviço específico mediante solicitação de uma entidade solicitante. [1] Na maioria dos sistemas, as portas registradas podem ser usadas por usuários comuns. Aqui estão os ports bem conhecidos e aqui estão os portos registrados .

Aqui é uma ótima explicação de quais portas são para, complementa de jcrawford

    
por 13.08.2015 / 00:58
2

Eles são apenas números. Você não precisa pensar neles como algo mais complicado que isso.

Por exemplo, a porta TCP 80 é amplamente reconhecida como sendo a porta HTTP. Como esse serviço foi reconhecido como importante, recebeu um número relativamente baixo na lista de portas da IANA . (Clique no hiperlink "XML" nessa página se você quiser ver toda a lista, não dividida pelo número da porta.)

No entanto, se você quiser colocar um serviço diferente (como um servidor SSH) em uma porta não padrão (como a porta TCP 80), isso funcionará. Normalmente, isso significa que tanto o servidor quanto o cliente precisarão especificar configurações não padrão, e pode haver alguns outros efeitos colaterais (como "netstat -a" mostrando "www", embora seja uma conexão SSH), mas trabalho.

Então, o que isso significa é que realmente não há diferença técnica entre uma porta "conhecida" ou uma porta "registrada" ou "dinâmica" / "efêmera". Em muitos casos, as portas se comportam exatamente da mesma maneira e, se as portas são tratadas de maneira diferente com base no intervalo de números em que elas se encaixam, isso geralmente é apenas um comportamento padrão que pode ser substituído.

As portas 1023 e inferiores são agrupadas na categoria "bem conhecida" apenas porque o número é 1023 ou menos. Na verdade, a página da IANA até fornece nomes diferentes para essas categorias: portas "System" (para 0-1023), portas do usuário (para 1024-49151) e portas privadas (para 49152-65535). Então, até mesmo os nomes das categorias podem variar. Em resumo, a menos que você esteja se preparando para um exame, normalmente não precisa se preocupar muito com a categoria em que um número de porta se encaixa.

    
por 13.08.2015 / 02:17
1

Sua definição para portas dinâmicas parece mais clara em alguns aspectos, do que em qualquer uma das respostas.

Você escreve

dynamic ports are client side and are used only for the active session. once it expires the port becomes available again. These are only used so the traffic comes back to the correct user".

Eu acabei de corrigir a última palavra para "cliente".

Os usuários não são relevantes, é tudo sobre os computadores. Os usuários apenas facilitam a comunicação dos computadores!

O servidor pode usar o IP para enviá-lo para o computador correto (o computador cliente). Ele tem um pacote que vê o IP de origem do pacote e ele pode escrever isso como o IP de destino quando ele envia o pacote para fora.

Toomgo aponta em seu comentário que um processo pode iniciar muitas "conversas".

A porta do cliente identificará de qual conversa esse pacote faz parte.

Você escreve

well known ports are used for listening and are port forwarded to send traffic to a specific ip

Eu diria que as portas conhecidas são para ouvir. Então, como você sabe, eles são do lado do servidor. O computador com a porta que escuta é o servidor (de acordo com uma definição principal para o servidor)

Os roteadores NAT, se estiverem fazendo o encaminhamento de porta, encaminhariam para eles. Mas o encaminhamento de porta é algo que se feito, é feito no "roteador NAT", mas você pode se conectar de um computador em sua rede local, para outro computador em sua rede local. Nenhum encaminhamento de porta. Portanto, não faz parte de nenhuma definição de quando você está usando uma porta bem conhecida.

Registered - don't understand at all

Eu não tenho certeza se eu também.

Parece que eles podem ser os mesmos que os conhecidos, mas não tão conhecidos. Por exemplo, pode-se chamá-los de portas menos conhecidas. E os chamados portos bem conhecidos são < 1024, e os chamados portos registrados são mais de 1023.

Realmente tecnicamente, não importa o que a IANA diga que é uma porta. As pessoas podem executar servidores em qualquer porta que desejarem, desde que saibam ou descubram o que está sendo executado na porta, para que saibam ao que estão se conectando e em qual porta conectar-se. É claro que se você está lidando com pessoas que esperam algo em uma porta específica ou que o software espera, então você pode querer usar essa porta. Como a porta 80 para páginas da Web ... e algumas usam a porta 8080 para a Web interna. Ou como uma ajuda de memória, você pode querer manter a convenção. Como uma camada de segurança, as pessoas às vezes executam um servidor em uma porta alta, então um hacker não consegue adivinhá-lo.

Um roteador NAT, se estiver fazendo o encaminhamento de porta, também encaminharia para eles.

Então a distinção que você fez é a melhor. As portas do lado dinâmico do cliente e as portas do lado do servidor. E sim, se qualquer roteador NAT estiver fazendo o encaminhamento de porta, eles farão isso nas portas do lado do servidor. E a IANA parece ter listas que nomeiam os números das portas do lado do servidor com o que convencionalmente estaria lá, e categorizam as listas, com as convenções para portas < 1024 como "bem conhecido" e as convenções para os portos > 1023 como "registrado", que eu acho que é menos conhecido. Mas tecnicamente eu acho que não há diferença além disso.

    
por 13.08.2015 / 01:15