Questão Como resolver o domínio dns dinâmico para ip interno SEM NAT Loopback ou mudança de DNS em / etc / hosts?


Eu configurei um servidor nextcloud em um pi de framboesa em minha casa que eu posso acessar de fora do meu wifi através de um domínio dyn-dns noip. De dentro da rede eu não posso usar o domínio embora desde que resolve para o meu ip externo, mas não o ip interno do framboesa.

Para isso eu encontrei duas abordagens que não funcionam no meu caso:

1.) A abordagem mais amplamente recomendada seria ativar um Loopback NAT no roteador. Infelizmente, isso não é possível, pois meu roteador não suporta isso e não estou pensando em comprar um novo apenas para este caso de uso.

2.) Alterando a entrada DNS local. Estou rodando Linux e assim pude alterar o / etc / hosts para mapear o domínio para o ip interno. Funciona bem se eu estiver conectado localmente à minha rede doméstica, mas não funcionar se eu quiser conectar por fora. Talvez houvesse uma maneira de contornar isso, mas outra grande desvantagem dessa abordagem é que eu precisaria editar as entradas de DNS locais para vários dispositivos, incluindo Windows, iOS e Android. Então, prefiro encontrar um método que não precise modificar os vários clientes locais, mas faça isso de uma maneira mais centralizada.

Existe alguma outra maneira de resolver isso?


2


origem


Que tal atribuir ao Raspberry Pi um endereço IP estático na rede local para garantir que ele seja sempre o mesmo, e internamente na sua rede você acessa esse recurso apenas por meio do endereço IP privado estático? O método de acesso de endereço IP dinâmico e externo / público é para acesso externo e, portanto, internamente não é realmente necessário, então eu usaria esse tipo ou método se você não tiver servidor DNS interno, etc. para apontar o endereço IP de volta a capacidade de usar o loopback NAT. - Pimp Juice IT
Obrigado pela sua resposta, Walmart. Infelizmente, essa não é uma solução prática, já que o cliente nextcloud precisa ser configurado com uma URL e mudar isso toda vez que eu me conectar à minha wlan não é muito conveniente. Além disso, eu quero ter vários dispositivos conectados, então estou procurando uma solução que não requer alteração manual toda vez que eu conecto. - onoSendai


Respostas:


Eu resolvi isso configurando um servidor DNS no framboesa.

Por isso eu fiz:

  1. Configurar um IP estático na minha framboesa

  2. Instalado o dnsmasq e configure-o de acordo com este artigo: https://www.raspberrypi.org/forums/viewtopic.php?t=46154 Eu usei o arquivo /etc/dnsmasq.conf fornecido neste artigo, mas ajustei o seguinte:

    #the domain to be accesses from outside and inside
    domain=mydomain.ddns.net
    
    resolv-file=/etc/resolv.dnsmasq  
    min-port=4096
    
    #Google's DNS Server:
    server=8.8.8.8 
    
    # Max cache size dnsmasq can give us, and we want all of it!    
    cache-size=10000    
    
    # Below are settings for dhcp. Comment them out if you dont want    
    # dnsmasq to serve up dhcpd requests.    
    dhcp-range=192.168.0.101,192.168.0.149,255.255.255.0,1440m    
    dhcp-option=3,192.168.0.100    
    dhcp-authoritative
    

    Eu descomentei as linhas sobre o DHCP, o que tornou a framboesa acessível. Como DHCP e DNS estão relacionados neste contexto, eu não entendi muito bem, mas como está funcionando dessa maneira, eu não pesquisei mais.

  3. adicionado a / etc / hosts no framboesa a seguinte linha, para que meu domínio seja resolvido internamente para o IP estático do meu framboesa.

    192.168.0.100   mydomain.ddns.net 
    
  4. definir o IP estático do meu framboesa como o servidor DNS nos diferentes clientes em suas configurações de rede (no meu caso isso funcionou no Linux, Windows, Android e iOS).

ATUALIZAR:

As configurações DHCP do framboesa interferiram no DHCP do meu roteador, então eu o desabilitei no framboesa comentando as linhas referentes ao DCHP em /etc/dnsmasq.conf. Ele funciona sem ele também, desde que você adicione manualmente o IP do framboesa como um servidor DNS nos clientes conectados.

UPDATE2:

Aqui está uma explicação explícita com todas as etapas detalhadas sobre a instalação do servidor DNS no contexto do nextcloud no raspbian: https://ownyourbits.com/2017/03/09/dnsmasq-as-dns-cache-server-for-nextcloudpi-and-raspbian/


0