não pode ssh dentro da LAN, mas pode se conectar de fora

1

Um problema estranho: eu tenho um desktop rodando o Ubuntu 10.04 atrás de um roteador Netgear WNR1000 realizando NAT. Eu gostaria de ser capaz de ssh na área de trabalho do meu laptop (executando o Windows 7 e Cygwin). Quando em casa, tanto a área de trabalho quanto o laptop são conectados por wireless (a área de trabalho fica em uma sala diferente do roteador). O sshd parece estar funcionando bem, já que ssh localhost da área de trabalho funciona sem problemas. Além disso, ssh my.ip.address do meu laptop quando está não atrás do roteador funciona bem (estou encaminhando a porta 22 no roteador para minha área de trabalho). No entanto, ssh same.ip.address de dentro da LAN falha com "Conexão recusada". ssh 192.168.local.ip.address falha com uma mensagem diferente, "Tempo limite da conexão esgotado". Eu posso conectar se primeiro ssh a uma máquina fora da LAN.

Até agora não encontrei nada com o Google porque, com os termos de pesquisa que parecem relevantes, a grande maioria das pessoas tem o problema oposto - ou seja, elas não podem se conectar de fora da LAN, mas podem se conectar dentro dele. Eu posso passar por um servidor remoto quando estou em casa, mas isso parece uma maneira totalmente absurda de conectar dois computadores na mesma LAN doméstica. Eu já tentei parar e iniciar o sshd na área de trabalho. Alguma idéia?

    
por Patrick B. 08.07.2012 / 02:42

1 resposta

1

Parte deste problema é que o seu gateway NAT não está fazendo o hairpinning NAT (às vezes chamado de "reflexo NAT"). É quando um gateway NAT permite que o cliente no lado privado se conecte ao endereço IP público do NAT, e é inteligente o suficiente para perceber que ele tem um mapeamento de porta e, assim, transformar o pacote de volta e enviá-lo para o host mapeado de porta no lado privado do NAT. Você poderia olhar e ver se o seu roteador tem uma configuração para o hairpinning NAT que só precisa ser ativado, mas as chances são de que ele simplesmente não pode fazê-lo. Você pode verificar se está executando o firmware mais recente da Netgear (talvez eles o consertem mais tarde) ou se você pode obter uma distribuição de firmware do mercado de reposição, como o DD-WRT, em execução na sua caixa Netgear. Talvez o DD-WRT ou alguma outra distro que suporte sua caixa Netgear tenha um código adequado de NAT.

A outra parte desta questão é o fato de que você não pode se conectar diretamente do host no lado privado do NAT para outro host no lado privado do NAT, usando diretamente os endereços IP privados. A única coisa que posso pensar é que alguns Wi-Fi APs têm uma caixa de seleção para desabilitar o chamado "Intra-BSS Relay" pela especificação IEEE 802.11. Às vezes, a interface do usuário pode chamar isso de "habilitar isolamento do cliente" ou "desabilitar a comunicação cliente-cliente" ou algo assim.

    
por 08.07.2012 / 03:22

Tags