С некоторого времени я стал замечать, что при подключении к московскому метровайфаю на Андроидах перестала вылезать нотификация о том, что необходимо залогиниться. Что было весьма удобно, так как встроенный андроидный HTTP-клиент никогда не показывал мне рекламу, и закрывался сразу же после авторизации, не грузя стартовую страницу wi-fi.ru, также обильно пестрящую рекламой.

Судя по всему, граждане из Максима-Телеком посчитали, что слишком уж много пользователей проплывает мимо их рекламы таким образом и, посчитав себя зело ехидными, точечно разрешили доступ к URL google.com/generate_204, который и запрашивает HTTP-клиент Dalvik для проверки доступности интернета. Из названия ручки очевидно, что ожидается код 204.

Таким образом, эта проверка стала давать false positive, вынуждая пользователя логиниться через браузер, просматривая рекламу. Беглый поиск по данному вопросу выявил наличие в хранилище настроек Android переменной captive_portal_server, которая по умолчанию не установлена, но если записать в нее FQDN какого-нибудь хоста, /generate_204 будет запрашиваться уже с него. Очевидное решение проблемы тут же напросилось само собой.

На своем сервере я добавил в конфигурацию nginx такие строки:

server {
    listen 0.0.0.0:80;
    location /generate_204 {
        return 204;
    }
}


На Android-устройстве выполнил такую команду (да, минус этого способа — нужен root):

root@shamu:/ # settings put global captive_portal_server our-nginx.domain.tld


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

P.S. Я не упомянул здесь возможность использования различных программ-авторизаторов, работающих в фоновом режиме, так как сам раньше пользовался подобным софтом, и оказалось, что создатели captive-портала активно противодействуют таким мерам, и рано или поздно авторизация перестает работать

Комментарии (9)


  1. BupycNet
    14.10.2015 12:27
    +2

    Я купил платное снятие рекламы и логина. Захожу в метро — смотрю WIFI у меня не работает как обычно. Точнее ни один сайт не открывает.
    Смотрю по сторонам — вокруг все сидят через WiFi, видно даже, как то то при мне залогинился.
    То есть я оплатил и ничего не работает.

    PS. Пока не платил, есть такой лайфхак:
    Если ты нажмешь на Войти, то тебе будет показан рекламный ролик, причём часто он не загружается даже.
    Я просто кликаю на рекламный баннер выше и все работает сразу. Интересно, как скоро у Максима-Телеком схлопнется реклама от скликивания, если все будут этим пользоваться.


    1. Feliksas
      14.10.2015 12:43

      Был еще вариант с выбором пункта Отключить рекламу, но он опять же был полезен при использовании внутреннего HTTP-клиента, который убивал страничку сразу же после появления доступа


  1. Revertis
    14.10.2015 13:55
    +2

    P.S. Я не упомянул здесь возможность использования различных программ-авторизаторов, работающих в фоновом режиме, так как сам раньше пользовался подобным софтом, и оказалось, что создатели captive-портала активно противодействуют таким мерам, и рано или поздно авторизация перестает работать
    «Автовход Wi-Fi в Метро», которая на 4pda, отлично с этим справляется. Поставил и забыл о том, что куда-то надо логиниться и рекламу смотреть. Подхожу к только что подъехавшему вагону а у меня уже нотификация о новом письме или сообщении в Телеграм приходит. Удобно.


  1. past
    14.10.2015 14:06
    +2

    Скрипты в таскере тоже отрабатывают без проблем.


  1. Feliksas
    14.10.2015 14:10

    Варианты, которые я пробовал, обычно выходили из строя, как только дизайн страницы авторизации полностью переписывали, и, очевидно, ожидаемый скриптом элемент перестает существовать


  1. qteb
    14.10.2015 15:49
    +3

    Есть такое приложение, называется «Автовход Wi-Fi в Метро», если мне память не изменят. Гуглится на ура.
    Из плюсов: не нужно ничего делать руками, не нужен root.


    1. Stepanow
      14.10.2015 16:53
      +1

      Под iOS такое-же приложение в стадии тестирования аппстором, вот блог разработчика blog.m4rr.ru/all/mauth
      Не сочтите за рекламу, ибо приложения в аппсторе ещё нет.


      1. navion
        14.10.2015 20:00
        +1

        Вряд ли пропустят, а я бы скачал только ради иконки.


  1. Adnako
    16.10.2015 10:55

    За одно то, что компания Максимателеком считает допустимым удалить со вкладки браузера загруженный мною контент, заменив своим, будем откровенны, убогим способом авторизации, оставив меня без возможности вернуться к той странице, что я читал, я лучше дам денег разработчику, который предоставит мне возможность авторизоваться в этом вай-фае сохранив мои данные на открытых вкладках.