Как преобразовать динамический домен DNS во внутренний ip БЕЗ NAT Loopback ИЛИ изменения DNS в / etc / hosts?

2764
onoSendai

Я установил сервер nextcloud на Raspberry Pi у себя дома, к которому я могу получить доступ из-за пределов своего Wi-Fi через домен noip dyn-dns. Изнутри сети я не могу использовать домен, хотя, поскольку он разрешает мой внешний ip, но не внутренний ip малины.

Для этого я нашел два подхода, которые не работают в моем случае:

1.) Наиболее рекомендуемый подход - активировать Loopback NAT на маршрутизаторе. К сожалению, это невозможно, так как мой маршрутизатор не поддерживает это, и я не собираюсь покупать новый только для этого случая использования.

2.) Изменение локальной записи DNS. Я использую Linux и, таким образом, могу изменить / etc / hosts, чтобы сопоставить домен с внутренним ip. Работает нормально, если я локально подключен к своей домашней сети, но не работает, если я хочу подключиться извне. Возможно, был бы способ обойти это, но другой существенный недостаток этого подхода заключается в том, что мне нужно было бы редактировать локальные записи DNS для нескольких устройств, включая Windows, iOS и Android. Итак, я бы предпочел найти метод, который не должен изменять несколько локальных клиентов, но делает это более централизованно.

Есть ли другой способ решить эту проблему?

2
Как насчет назначения Raspberry Pi статического IP-адреса в локальной сети, чтобы он всегда оставался неизменным, а затем внутри вашей сети вы просто получаете доступ к этому ресурсу через его статический частный IP-адрес? Метод динамического и внешнего / публичного доступа по IP-адресу предназначен для внешнего доступа и, следовательно, для внутреннего использования он на самом деле не нужен, поэтому я бы выбрал этот тип или метод, если у вас нет внутреннего DNS-сервера и т. Д., Чтобы указать IP-адрес обратно возможность использовать NAT loopback. Pimp Juice IT 7 лет назад 0
Спасибо за ваш ответ, Walmart. К сожалению, это не практичное решение, так как клиент nextcloud должен быть настроен с URL-адресом, и его изменение при каждом подключении к WLAN не очень удобно. Кроме того, я хочу подключить несколько устройств, поэтому я скорее ищу какое-то решение, которое не требует ручного изменения при каждом подключении. onoSendai 7 лет назад 0

1 ответ на вопрос

0
onoSendai

Я решил это, настроив DNS-сервер на малине.

Для этого я сделал:

  1. Настройте статический IP на моей малине

  2. Установил dnsmasq и настроил его в соответствии с этой статьей: https://www.raspberrypi.org/forums/viewtopic.php?t=46154 Я использовал файл /etc/dnsmasq.conf, представленный в этой статье, но изменил следующее :

    #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 

    Я раскомментировал строки о DHCP, которые сделали малину доступной. Как DHCP и DNS связаны в этом контексте, я не совсем понял, но так как он работает таким образом, я не стал больше заниматься исследованиями.

  3. добавьте в / etc / hosts на raspberry следующую строку, так что мой домен будет внутренне преобразован в статический IP-адрес моей raspberry.

    192.168.0.100 mydomain.ddns.net 
  4. установить статический IP-адрес моей малины в качестве DNS-сервера на разных клиентах в их сетевых настройках (в моем случае это работало на Linux, Windows, Android и iOS).

ОБНОВЛЕНИЕ :

DHCP-настройки малины помешали DHCP моего роутера, поэтому я отключил его на малине, закомментировав строки, касающиеся DCHP, в /etc/dnsmasq.conf. Он работает и без него, если вы вручную добавляете IP-адрес малины в качестве DNS-сервера на подключенных клиентах.

UPDATE2:

Вот подробное описание всех шагов, подробно описывающих установку DNS-сервера в контексте nextcloud на raspbian: https://ownyourbits.com/2017/03/09/dnsmasq-as-dns-cache-server-for-nextcloudpi и-raspbian /

Похожие вопросы