Рейтинг:1

Доменное имя недоступно в локальной сети, но вне ее!

флаг au

В нашей локальной сети есть Сервер Ubuntu 20.4, где размещается веб-приложение. Я настроил свой маршрутизатор и DNS домена, я установил Lets'Encrypt сертификат, и мне удалось это https://mydomain.com чтобы показать мое веб-приложение.

Моя проблема в том, что когда я пытаюсь увидеть домен https://mydomain.com изнутри локальной сети браузер отвечает, что «Этот сайт недоступен, но когда я подключаюсь снаружи, сайт виден».

Мне нужно применить новую настройку на сервере Ubuntu, или это вопрос конфигурации маршрутизатора?

Одно решение...

я отредактировал хозяева файл на моем компьютере (C:\Windows\System32\Drivers\etc\hosts), добавив запись

192.168.0.100 мойдомен.com

и сайт теперь виден, но я хотел бы знать, как я могу применить настройку к серверу Ubuntu.

Изменить 1 Если я побегу nslookup mydomain.com из командной строки Windows я получаю:

Сервер: one.one.one.one
Адрес: 1.1.1.1

Неавторитетный ответ:
Имя: mydomain.con
Адрес: Мой_Внешний_IP

Обе Сервер Ubuntu и мой компьютер находятся в одной подсети. Я добавил несколько переадресаций портов (80, 443) на маршрутизатор, чтобы сделать сервер общедоступным.

Vijay Prema avatar
флаг jp
Пожалуйста, объясните, как настроена ваша локальная сеть (частью которой является сервер). Это может быть проблема NAT или шпилька/петля, но мы не можем сказать без какой-либо информации о вашей сети.
FedKad avatar
флаг cn
Локальные IP-адреса (например, 192.168...) будут отличаться от IP-адресов WAN. Вам понадобится метод (локальный DNS-сервер), который обслуживает локальные IP-адреса, в то время как ваш DNS-сервер в Интернете будет обслуживать IP-адреса в Интернете. Другим решением было бы отредактировать файл hosts каждого потенциального клиента (как вы уже сделали).
yaylitzis avatar
флаг au
Этот локальный DNS-сервер, о котором вы упомянули, настроен на роутере или на сервере?
FedKad avatar
флаг cn
Ваш роутер скорее всего не будет иметь такой функции. Но если у вас есть подстановочный сертификат LetsEncrypt, вы можете сделать что-то подобное на своем DNS-сервере в Интернете: `mydomain.com your_external_ip`, как это уже было сделано. Добавьте запись, подобную этой `local.mydomain.com 192.168.0.100`, и получите доступ к своему внутреннему веб-серверу, используя имя https://local.mydomain.com.
Рейтинг:0
флаг cn

Что ж, «проблема» заключается в том, что ваша машина Windows (и другие машины в вашей сети) разрешает доменное имя в общедоступный IP-адрес, который отличается от 192.168.0.100... Таким образом, маршрутизация отличается. Когда вы пытаетесь получить доступ к 192.168.0.100, трафик остается внутри вашей локальной сети. Если вы используете общедоступный IP-адрес, ваш трафик будет проходить через Интернет и возвращаться к вам через маршрутизатор.

Таким образом, вы действительно должны настроить переадресацию портов на своем маршрутизаторе, чтобы входящие запросы на порты 80 и 443 перенаправлялись на локальный адрес сервера, то есть 192.168.0.100 в вашем примере.

Если бы у вас был собственный преобразователь DNS в вашей локальной сети, вы могли бы просто настроить этот домен («зону») локально, чтобы вместо этого возвращался частный IP-адрес, только для локальных пользователей. См. DNS с расщепленным горизонтом.

Редактирование файла hosts может быть приемлемым для тестирования, краткосрочного использования, если у вас не так много клиентов для обслуживания. В противном случае я бы предложил настроить локальный преобразователь DNS (и пересылку) для вашей локальной сети. Пример: dnsmasq.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.