Я пытаюсь реализовать заставку / целевую страницу Wi-Fi в моей существующей общедоступной сети Wi-Fi, используя метод DNS, упомянутый в Wiki, на котором я размещаю собственный DNS-сервер, который перенаправит ВСЕ поисковые запросы DNS на локальный адрес, на котором размещен веб-сервер, для всех пользователей, прежде чем они нажмут «Согласиться».
После того, как пользователь нажал кнопку «Согласиться», мой настраиваемый DNS-сервер начинает возвращать правильный IP-адрес для поиска, таким образом, пользователь сможет выйти в Интернет.
Примечание. Мы полностью понимаем, что это никоим образом не защищает нашу сеть и даже не подвергает ее риску. Но цель здесь - просто чтобы открыть целевую страницу перед нашими пользователями.
Этот подход действительно работает на Windows Phone (Windows 8, которую я тестировал) в качестве заставки, и даже на компьютере, когда я пытаюсь открыть случайный веб-сайт, он перенаправляет меня на мою страницу, и после того, как я нажимаю «Согласен», я могу перейти в Интернет. .
Когда я пробую его на iPhone / Android, как только я подключаюсь к точке доступа, страница-заставка / целевая страница Wi-Fi отображаются должным образом (потому что устройство пытается проверить доступ в Интернет, перейдя на набор страниц) тем не мение, после того, как я нажму «Согласен» и разрешу доступ в Интернет, заставка iPhone и Android не исчезнет. Я должен заставить iphone "использовать этот Wi-Fi без сети" для выхода.
Интересно, есть ли специальный (javascript?) Метод, который я могу вызвать на странице, или какой-то пакет, который мне нужно отправить на устройство? Я заметил, что на iOS, если я нажимаю ссылку на App Store, заставка исчезает без отключения от сети. Итак, я думаю, мне здесь что-то не хватает. Уже неделю гуглил, похоже, ничего не появилось.
кстати, я создаю свой собственный DNS-сервер на узле js с модулем dnsd.