Não é possível ssh por nome se o roteador não estiver conectado à internet

0

Eu tenho um problema ao conectar via ssh pelo nome. Eu tenho 1 computador principal (Gigabyte) e outros 4 computadores extras (Odroids). Estou executando o Ubuntu em todos eles. Eu tenho os computadores em uma rede usando um roteador, então quando eu ssh um dos odroids que eu faço:

ssh [email protected]

Se eu tiver o roteador conectado à internet, posso ssh todas as máquinas pelo nome. Mas se o roteador não estiver conectado à internet, não consigo fazer o ssh da última máquina. Então:

ssh [email protected]

não funciona. E isso acontece com dois roteadores que tenho. Eles são roteadores Buffalo. Por outro lado, eu posso me conectar ao odroid4 pelo endereço IP.

ssh [email protected]

Se eu usar ssh -vvv [email protected] , noto que o endereço IP não está correto, isso me dá:

debug1: Connecting to odroid4.local [192.168.11.1] port 22.
debug1: connect to address 192.168.11.1 port 22: Connection refused
ssh: connect to host odroid4.local port 22: Connection refused

192.168.11.1 não é o endereço IP de qualquer máquina. Acho que falta alguma configuração nos roteadores ou nos computadores, mas não sei o quê.

    
por Luis 27.09.2016 / 16:39

1 resposta

1

O ssh -vvv mostra que todas as solicitações são redirecionadas para o seu gateway (se 192.168.1.1 for mesmo isso).

Você provavelmente está usando o DHCP para obter sua configuração de IP local. Com isso, vem a configuração do servidor DNS, que, novamente, é provavelmente o seu gateway local. Geralmente serve como uma retransmissão de DNS que envia suas solicitações de DNS para um servidor DNS externo.

Quando você não tem conexão com a Internet, a maioria dos CPEs (Customer Premises Equipment) oferece um portal cativo que permite que o cliente solucione problemas de conexão à Internet se você tentar acessar um site externo usando seu navegador preferido.

Para fazer isso, o CPE usa spoofing de DNS para redirecionar todas as solicitações para si mesmo. É bastante normal para um CPE, mesmo que geralmente apenas solicitações http sejam redirecionadas para evitar esse tipo de problema, e também apenas solicitações externas. Isso pode ser um defeito do lado de Buffalo.

Para contornar isso, você pode:

  • ofereça-se um novo e agradável roteador all-in-one;
  • menos dispendioso, configure seu próprio servidor DNS em sua LAN para lidar com as solicitações feitas por você;
  • ainda mais mínimo, configure um arquivo de hosts locais.

Configuração de DNS

  • Configuração do arquivo de zona local com os nomes de LAN desejados
  • Use-o como seu servidor DNS primário
  • Use o gateway como seu segundo servidor DNS.

Isso pode fazer com que as solicitações de DNS fiquem mais lentas no caso de uma resolução FQDN externa (como algumas centenas de milissegundos a mais).

Arquivo de hosts locais

Este é um arquivo que você pode editar para registrar FQDNs locais. Seu sistema procurará antes de enviar solicitações de DNS e, se receber uma correspondência, usará o IP associado.

No Windows: C:\Windows\System32\drivers\etc\hosts

Em sistemas Unix (incluindo Mac OS X): /etc/hosts

Sinta-se à vontade para comentar a minha resposta, caso ela não resolva o seu problema e você possa fornecer mais informações a respeito (como você pode ver, eu tive que escrever muito "provavelmente". É aqui que você poderia ter adicionado mais informações em primeiro lugar :)).

    
por 27.09.2016 / 17:12