O NAT mapeia para o endereço MAC ou para o IP local?

3

Eu gostaria de configurar o NAT para colocar um serviço na Internet usando o meu roteador Technicolor TG 582. Eu menciono o modelo de roteador específico apenas para ter uma referência, mas a questão é geral, pois talvez eu precise usar essa programação com diferentes roteadores.

Eu gostaria que o servidor DHCP atribuísse endereços aos serviços, mas, ao mesmo tempo, usasse o NAT para apontar para os serviços.

Os colegas me disseram que, se você permitir que o DHCP atribua o IP ao dispositivo, a regra NAT específica falhará eventualmente, pois o servidor DHCP no roteador, com o tempo, alterará o IP local atribuído, invalidando o NAT link de porta - que é para o IP local, não para o endereço MAC (físico) do dispositivo.

Com base nessas informações, minha prática tem sido usar um IP estático para quaisquer serviços por trás do roteador que devem ser acessados de fora. No entanto, aparentemente, o roteador às vezes "identifica" um dispositivo pelo seu MAC e, outras vezes, pelo seu IP local. Minha própria lógica me diz que o roteador deve "rotear" ou NAT a solicitação de porta específica do lado de fora para o endereço MAC onde eu tenho o serviço, e não para o IP.

Então, qual é? A segunda parte da pergunta seria, se o servidor DHCP for reiniciado, ou, por exemplo, o dispositivo do cliente ficar off-line e, em seguida, voltar, o servidor DHCP tentará manter o IP local anterior atribuído ao dispositivo, ou será basta escolher o próximo IP disponível?

    
por Todd Callison 27.09.2013 / 15:43

3 respostas

4

Para responder à pergunta:

NAT é um efeito de rede de camada 3 - acontece quando os pacotes são roteados, enquanto os endereços MAC são um aspecto de rede de camada 2 - eles são significativos apenas na rede local. Então, para responder à sua pergunta, você não pode NAT para um endereço MAC - a noção de NAT não pode funcionar em camadas.

Para responder à pergunta atual (como posso usar o DHCP e garantir que o NAT ainda funcione):

Você só precisa reservar seu endereço IP no DHCP para que ele não mude com o tempo. Isso está ligado ao endereço MAC da sua máquina. Assim, informa ao servidor DHCP que, se uma solicitação de endereço IP vier de um endereço MAC específico, ele deverá receber um endereço IP específico.

    
por 27.09.2013 / 15:55
1

DHCP server on the router will, over time, change the assigned local IP.

Não, esse é apenas o comportamento padrão. Você pode atribuir um IP específico a um computador com uma reserva MAC.

Como você faz isso varia de acordo com o servidor DHCP:

Muitos dispositivos SoHo têm uma interface da web para fazer isso. Essa interface varia.

No Windows, você pode abrir o console de gerenciamento do servidor DHCP e definir reservas.

Nas instalações do Linux, depende do software usado, mas na maioria das vezes você pode editar /etc/dhcpd.conf e adicionar algo assim:

 host name_of_your_PC
 {
     hardware ethernet 00:11:22:33:44:55;
     fixed-address 1.2.3.4;
 }

Based on this information my practice has been to use a static IP for any services behind the router that are to be accessed from outside.

Endereços IP estáticos para servidores são uma coisa boa.
(Como são endereços IP estáticos para impressoras de rede, scanner e dispositivos semelhantes).

No entanto, você pode defini-los de duas maneiras:
 1. Difícil. Configure o IP estático no dispositivo.  2. Usando o DHCP e definindo reservas.

O último é mais limpo, já que você só tem um lugar para gerenciar as configurações. A única desvantagem é quando (se) seu servidor DHCP ficar inativo. Ambos são opções válidas embora.

However apparently the router sometimes "identifies" a device by its MAC, and other times by its local IP.

Isso ajuda se você tiver algum histórico de DHCP. Resumidamente, funciona assim:

  • Um novo dispositivo exibe sua placa de rede e transmite "Oi, eu sou AA: BB: CC: DD: EE: FF. Eu gostaria de obter as informações necessárias para trabalhar nesta rede". (DHCP req)
  • Um servidor DHCP percebe a transmissão e responde:
    "AA: BB: CC: DD: EE: FF, você pode esse IP . É válido para este período . " Ele também pode oferecer as configurações para o DNS, para o gateway padrão e um nome de host. Os últimos são opcionais. (DHCP ack)

O servidor também pode negar a solicitação DHCP.

Digamos que o novo dispositivo recebeu o IP 1.2.3.4 e foi informado de que foi permitido usá-lo por 4 horas. Depois de metade desse tempo (2 horas), pedirá uma renovação. "Oi servidor DHCP. Eu já tenho esse IP de você. Eu quero continuar usando um pouco mais. Está tudo bem por mais 4 horas?".

(Pense em alugar um livro na biblioteca e telefonar para renovar o contrato).

Geralmente isso continua para sempre e o dispositivo continuará usando o mesmo IP para sempre. Seu NAT continuará apontando para o lugar certo e tudo ficará bem.

Agora, se você desligar o computador por um dia, ele não poderá mais renová-lo. Terá que pedir um contrato completamente novo. Vamos esboçar isso:

PC1 gets IP 1.2.3.4 for 4 hours.  
PC1 gets power off for the weekend.  
PC2 get boots and gets a IP 1.2.3.4
PC1 boots and asks for an IP. 
    It will get an IP, but not the same one as before.

Isso está operando como projetado. (Caso contrário, os dispositivos antigos preenchiam lentamente a tabela de IPs usados.)

My own logic tells me the router should "route" or NAT the specific port request from the outside to the MAC address where I have the service, and not to the IP.

Não. NAT funciona na camada IP. O NAT não está ciente dos endereços MAC.

If the DHCP server restarts, or, for example, the client device goes offline, then comes back on, will the DHCP server try to maintain the previous local IP assigned to the device, or will it just pick the next available IP?

Isso depende do servidor DHCP. Alguns entregarão o primeiro IP gratuito em sua lista. Alguns se lembrarão de qual IP foi usado anteriormente e, se ainda estiver livre, fornecerão o mesmo IP para o mesmo dispositivo. Não há um tamanho genérico em primeiro lugar, todos respondem aqui.

    
por 27.09.2013 / 15:46
0

NAT é um fenômeno de camada TCP / IP (Transporte OSI), portanto, o MAC não é suficiente para seus propósitos. lembre-se, o TCP / IP é executado em redes diferentes da Ethernet, que podem não usar endereços MAC. Desde que implementado acima da camada Internetwork, você precisa considerar a capacidade de rotear o tráfego encaminhado de NAT para sistemas que não estão na mesma LAN que o gateway NAT (por exemplo, você usa VLANS e tem um roteador para rotear entre eles ou vários sub-redes). você precisa de um endereço IP para rotear entre redes.

Seus colegas estão corretos, a diretriz convencional é que os servidores devem ser estaticamente atribuídos e as estações de trabalho devem ser dinamicamente designadas. Dessa forma, se o servidor ficar inativo, você poderá atribuir esse endereço a um servidor de backup e ele começará imediatamente a atender solicitações.

Os servidores DHCP geralmente atribuem o mesmo endereço IP ao mesmo MAC, mas isso é conhecido por quebrar ocasionalmente. Eu tive uma caixa começar a tomar um novo endereço sem motivo há algumas semanas. O servidor DHCP armazena o IP no mapeamento MAC, portanto, ele ainda estará lá após uma reinicialização. Observe que, se o cliente já tiver um IP e o servidor DHCP for reinicializado, o cliente nem notará, a menos que também tenha sido reinicializado e solicite um endereço novamente.

    
por 27.09.2013 / 15:56

Tags