У меня есть Windows-машина, на которой работает EasyPHP, на которой размещен мой сайт.

Он находится в беспроводной сети, которая не подключена к Интернету, но находится в общественном месте.

Можно подключиться к веб-сайту, введя IP-адрес сервера в браузере клиента, но я хочу сделать это через доменное имя, то есть mysite.local вместо 192.168.1.100 .

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

Нужно ли запускать DNS-сервер для доступа к этому сайту по имени?

Или есть простое решение?

1 ответ1

1

Да, вам нужен какой-нибудь DNS-сервер. Некоторые маршрутизаторы Wi-Fi имеют встроенную службу DNS. Что вы используете в качестве DHCP-сервера в этой сети? Может быть, вы можете запустить службу DNS на той же коробке. В любом случае вы захотите настроить свой DHCP-сервер так, чтобы он сообщал клиентам о вашем DNS-сервере, когда они получают свои IP-адреса в аренду через DHCP.

Если это похоже на какую-то установку художественной галереи или что-то вроде того, где это ЕДИНСТВЕННЫЙ веб-сервер, к которому люди должны получить доступ из этой сети, то вы могли бы рассмотреть возможность установки вашего веб-сервера в качестве "портала авторизации" в вашей сети. Если вы когда-либо подключались к общедоступной или коммерческой сети Wi-Fi и перенаправляли все ваши веб-запросы на собственный веб-экран входа в систему, то вы знаете, что такое портал с привязкой. Вы можете использовать эту функцию, чтобы заставить всех на ваш сайт. Не требуется, чтобы ваш сайт действительно давал им возможность войти в "остальную часть сети", так что вы можете просто использовать функциональность captive-portal-redirect, чтобы заставить людей заходить на ваш сайт.

Я полагаю, что вы можете сделать это при запуске дистрибутивов встроенного программного обеспечения, таких как OpenWrt, на вашем маршрутизаторе Wi-Fi. В противном случае вам может понадобиться маршрутизатор Wi-Fi корпоративного класса или класса общего доступа, чтобы получить такую функциональность.


Вот почему вы не можете выполнять сопоставления имени хоста с IP-адресом без DNS-сервера:

IETF (орган по стандартам Интернета, который публикует RFC) имеет один метод, позволяющий доменам «.local» работать без DNS-сервера; он называется ZeroConf или "IETF Zero Configuration Networking", и одна из его реализаций - Bonjour от Apple. Авахи для Linux это другое.

К сожалению, у Microsoft есть другая несовместимая вещь, называемая LLMNR, для обеспечения работы доменов «.local» без DNS-сервера. "Конфигурация Windows Zero" от Microsoft - совершенно отдельная вещь, но названа очень запутанно, тем более что оба могут применяться к сетям Wi-Fi.

Я понятия не имею, текущее состояние Android в этом отношении. Я не знаю, по умолчанию ли на устройствах Android работает Avahi или какой-либо демон IETF ZeroConf.

Так что на самом деле не существует стандарта поиска по локальной сети, без имени хоста по IP-адресу, который гарантированно работал бы во всех браузерах на всех ПК и смартфонах / планшетах.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .