Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Форум
    RouterOS
    Проблема с "застенчивым" хот-спотом (Hotspot Walled Garden).

    Проблема с "застенчивым" хот-спотом (Hotspot Walled Garden).

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Проблема с "застенчивым" хот-спотом (Hotspot Walled Garden)., RouterOS
     
    gallysoft
    Guest
    #1
    0
    01.05.2013 10:32:00
    Всем привет. Я пытаюсь работать с хотспотом, но у меня серьезная проблема. Мне нужно создать "заграждение" (walled garden) для facebook.com, а также .akamaihd.net (для контента Facebook). Если я указываю в "заграждении" dst-host= .akamaihd.net и пытаюсь получить https://fbstatic-a.akamaihd.net/rsrc.php/v2/yG/r/oeyMmgGXkU1.js, я получаю ошибку SSL, но если я пытаюсь получить http://fbstatic-a.akamaihd.net/rsrc.php/v2/yG/r/oeyMmgGXkU1.js, всё работает. Странно, что если я указываю в "заграждении" dst-host=* dst-port=443 и пытаюсь получить https://fbstatic-a.akamaihd.net/rsrc.php/v2/yG/r/oeyMmgGXkU1.js, всё работает. Очевидно, что я не могу "заградить" все hosts по HTTPS… ROS 5.24 на RB493G. Есть какие-нибудь идеи?
     
     
     
    tilah78
    Guest
    #2
    0
    24.06.2013 10:07:00
    Привет, gallysoft! У меня та же проблема, что и у тебя. Нашел ли ты решение? Сейчас расскажу, что я выяснил. Главная проблема в том, что Facebook использует несколько доменных имен и постоянно меняет IP-адреса, а также использует Akamai для распространения контента с динамически генерируемыми DNS, поэтому невозможно внести все доменные имена/IP-адреса, используемые Facebook, в Walled Garden (WG). Можно внести частичные доменные имена с подстановочными знаками, вроде * facebook.com или * akamai.net, в WG, но проблема здесь в том, что Facebook также использует HTTPS-протокол, и эта техника не сработает, потому что WG, специфичный для HTTP и HTTPs-протоколов, извлекает доменное имя из HTTP-заголовка, а заголовок в HTTPs зашифрован. Так что единственный шанс – это список IP-адресов в WG. Здесь нужно вносить IP-адреса или DNS тех хостов, к которым нужно разрешить доступ. Доменные имена здесь должны быть указаны полностью (подстановочные знаки использовать нельзя), потому что WG IP выполняет обратный запрос для получения IP-адреса из DNS и добавляет его в WG. Так что это невозможно. Но можно вносить диапазоны IP-адресов в формате 31.13.24.0/21, и можно получить список диапазонов IP-адресов, используемых Facebook в данный момент, с помощью этой linux-команды: whois -h whois.radb.net – ‘-i origin AS32934’ | grep ^route … Но я пока не знаю, как получить IP-адреса для akamai.net и akamaihd.net, которые используются Facebook… Есть какие-нибудь идеи? Еще одна проблема, с которой я столкнулся: если пользователь вводит HTTPS-адрес в браузере до входа в систему, он перенаправляется динамически создаваемым NAT-правилом на servlet для входа в систему для HTTPS (порт 64875). По умолчанию в браузере вы получите сообщение «страница не найдена», в результате чего пользователь не будет перенаправлен на страницу входа в систему Wi-Fi. Чтобы это заработало, необходимо включить вход через HTTPS в профиле Wi-Fi и установить действительный SSL-сертификат. В моем случае, поскольку сертификат был сгенерирован мной, я получаю предупреждение безопасности в браузере. Я думаю, нужно ли мне купить сертификат, чтобы убрать это предупреждение, или есть другой способ решить эту проблему (например, перенаправить HTTPS (443) на http servlet для входа в систему (64873))? Есть какие-нибудь подсказки по этим вопросам?
     
     
     
    SurferTim
    Guest
    #3
    0
    24.06.2013 10:25:00
    Та же проблема с PayPal. Это не только множественные IP для серверов, но и очень короткое время, установленное в TTL для разрешения. У PayPal может быть всего несколько секунд. http://wiki.mikrotik.com/wiki/PayPal_with_hotspot_and_walled_garden_bypass DNS-кеш используется для разрешения ваших запросов к walled garden, но некоторые сайты используют динамический DNS для балансировки нагрузки на серверы. Walled garden сначала пропустит вас на PayPal, но если вы подождете больше нескольких секунд, чтобы получить доступ к чему-либо еще на сайте PayPal, например, совершить оплату, это может не сработать. Если вы подождете пару минут, что обычно делают, заполняя страницу оплаты, это тоже не сработает. Скрипт выше собирает эти IP-адреса и добавляет их в список "/ip hotspot walled-garden ip", чтобы они были доступны не только на несколько секунд. Может быть, его можно модифицировать для Facebook.
     
     
     
    tilah78
    Guest
    #4
    0
    26.06.2013 07:42:00
    Спасибо, SurferTim, за помощь. Посмотрю эти скрипты. А ты знаешь, все ли это еще проблема в RouterOS v6.1?
     
     
     
    SurferTim
    Guest
    #5
    0
    26.06.2013 08:49:00
    Скорее всего. Если Mikrotik не изменит принцип работы "walled garden" для точки доступа, проблема останется. Например, я обнаружил, что TTL для DNS PayPal составляет около 15 секунд. Невозможно заполнить и отправить страницу оплаты PayPal за 15 секунд.
     
     
     
    tilah78
    Guest
    #6
    0
    26.06.2013 10:38:00
    Это стоило бы лучше задокументировать, тогда бы нам не пришлось гадать, как это реализовано, и мы бы сэкономили массу головной боли… Сейчас я пытаюсь угадывать, как все это работает… Звучит логично, что вы говорите об использовании DNS-кэша для применения правил WG. Похоже, что именно так это работает для записей, внесенных во вкладку Walled Garden. Так что теперь я думаю, что ошибся, когда говорил, что WG "извлекает имя хоста из HTTP-заголовка" и, следовательно, это не будет работать для HTTPs. Возможно, я запутался из-за TTL DNS-кэша, и это привело меня к неверному заключению. Однако, в RouterOS v6.1, при добавлении записи IP-адреса в Walled Garden создается несколько динамических правил в WG (и FW и NAT), которые периодически обновляются. В моем случае для одного целевого хоста есть много динамических правил с разными IP-адресами, и некоторые IP-адреса больше нет в DNS-кэше. Поэтому я думаю, что когда вы вводите имя хоста в список IP-адресов WG, это действует как скрипты в ссылке, которую вы предоставили, то есть, выполняет запланированную задачу, которая разрешает имена хостов и добавляет динамические правила в WG. Кстати, в моем случае список динамических правил в WG/firewall и NAT постоянно растет. На данный момент я вижу около 1000 записей! Интересно, произойдет ли "сброс" в какой-то момент или это заполнит всю память роутера…
     
     
     
    SurferTim
    Guest
    #7
    0
    26.06.2013 11:12:00
    По-моему, это мой первый пост на эту тему. Сентябрь 2010 года. http://forum.mikrotik.com/t/walled-garden-and-ssl-sites-intermittent-problem/40829/1

    Всё это происходит в “/ip dns cache”. Изначально, когда ваш веб-браузер пытается получить доступ к SSL-сайту, он сначала выполняет разрешение DNS. Это помещает IP-адрес сервера в кэш. Позже, когда веб-браузер пытается получить доступ к этому IP-адресу SSL-сайта, хот-спот просматривает список IP-адресов в кэше. Если он находит этот IP-адрес, то проверяет связанное доменное имя и проверяет доменные имена "walled garden" для этого домена.

    Проблема заключается в том, что PayPal и другие загруженные сайты используют TTL DNS в качестве формы балансировки нагрузки. PayPal использует 4 сервера одновременно и циклически меняет эти IP-адреса каждые 30 секунд или около того. Например, предположим, что это IP-адреса серверов PayPal на сегодня: x.x.x.20, x.x.x.21, x.x.x.22, x.x.x.23.

    Когда ваш веб-браузер выполняет первоначальное разрешение DNS, он получает x.x.x.20. Таким образом, вы сразу попадаете на страницу формы оплаты, и это работает, потому что x.x.x.20 находится в кэше DNS со допустимым доменом для обхода хот-спота. Но к тому времени, когда вы заполняете форму и хотите отправить форму оплаты, IP-адрес x.x.x.20 был удален из кэша DNS, потому что истек TTL, и вам НЕ разрешено проходить через хот-спот. Если другой пользователь в той же сети хот-спота выполняет разрешение для PayPal, вероятность того, что он поместит этот IP-адрес (x.x.x.20) обратно в кэш DNS на 15 секунд или около того, составляет 1 из 4. Так что, если вам очень повезет, вас могут пропустить с вашей формой оплаты, если ваш тайминг почти идеальный.

    Редактирование: Теория, лежащая в основе моего wiki-кода, заключается в том, что он использует системный планировщик для разрешения домена до тех пор, пока он не получит все 4 ежедневных IP-адреса серверов PayPal в “/ip hotspot walled-garden ip”. Теперь, независимо от того, какой из этих 4 IP-адресов получает ваш клиент, они все будут в списке IP-адресов "walled-garden" и будут обходить хот-спот нормально. Больше не имеет значения, короткий ли TTL и выпадает ли он из кэша. http://wiki.mikrotik.com/wiki/PayPal_with_hotspot_and_walled_garden_bypass

    Если вы думаете, что это так же просто, как получить эти IP-адреса и ввести их вручную в “/ip hotspot walled-garden ip”, то это не сработает. Я обнаружил, что они выключают один из этих серверов каждые один-два дня. Затем он будет использовать эти IP-адреса: x.x.x.21, x.x.x.22, x.x.x.23, x.x.x.24.

    Если бы я работал в MikroTik, что я не делаю, вот какое решение я бы попытался разработать: я бы разработал рутину, которая, когда домен разрешается хот-спотом, и этот домен находится в хот-споте "walled garden", он добавляет целевой IP-адрес в специальный список адресов с тайм-аутом в 1 день. Затем используйте этот список адресов в качестве проверки обхода. Вы могли бы сделать " /ip hotspot walled-garden ip" тем списком адресов, добавив в него поле "expires".
     
     
     
    TheWiFiGuy
    Guest
    #8
    0
    26.06.2013 15:43:00
    Конечно, можно сделать как я показывал в своих предыдущих сообщениях. Использование DNS HOSTNAMES в /IP walled-garden-ip приводит к тому, что ROuterOS разрешает ВСЕ IP-адреса по домену каждые несколько секунд. Мы используем это для тысяч сайтов с использованием Paypal, Facebook и других социальных медиа-интеграций. Мы обрабатываем более 5 000 000 входов в месяц, никаких проблем не поступало в службу поддержки с момента внедрения. Работает во всех версиях 6.x и более поздних версиях 5.x.
     
     
     
    TheWiFiGuy
    Guest
    #9
    0
    26.06.2013 15:53:00
    Не переживай, у нас более 10 000 записей для некоторых сайтов с большим количеством социальных связей.
     
     
     
    SurferTim
    Guest
    #10
    0
    26.06.2013 16:14:00
    Отлично! Теперь всё работает без дублирующихся динамических записей, спасибо Марис из поддержки. Нельзя использовать “dst-host” и “dst-address” в одной записи в "/ip hotspot walled-garden ip". В V5.x вы не сможете использовать оба параметра в одной записи. Скрипты есть на вики, если хотите попробовать. С использованием этих скриптов у меня не было сбоев при оплате через PayPal через walled garden. @WiFiGuy: Это из той другой темы. Значит ли это, что вам удалось использовать dst-host в "/ip hotspot walled-garden ip"? Если PayPal будет возвращаться по разным IP-адресам каждые несколько секунд, вы можете оказаться в такой же ситуации, в которой оказался я. Он возвращает разные IP-адреса 3 из 4 раза. ?? Если только он не кеширует ВСЕ эти IP-адреса где-то, то в большинстве случаев будет сбой. Клиент делает одно разрешение для этого домена и использует этот IP-адрес для всей транзакции. При текущей схеме IP-адрес клиента должен совпадать с разрешенным IP-адресом для этого домена, и это произойдет только в среднем четверть времени.

    Добавлено: После размышлений понял, что кеширование IP-адресов в списке адресов (или аналогичном) на определенный период времени, когда точку доступа DNS разрешает их (и она соответствует записи в walled garden), - это единственный эффективный способ. Мне жаль мой DNS-сервер из-за того, как я это сделал, и я почти не разрешаю имена. Таким образом, он хранит только IP-адреса, которые соответствовали записи в walled garden и были выданы клиенту. Это должно снизить износ DNS-сервера и связанный с ним интернет-трафик.
     
     
     
    mattpa4
    Guest
    #11
    0
    11.12.2013 13:46:00
    Похоже, это работает с PayPal, но у кого-то был опыт с Facebook? Можно ли модифицировать скрипты для PayPal, чтобы они работали с Facebook, и если да, то как? Спасибо заранее.
     
     
     
    planetcaravan
    Guest
    #12
    0
    31.07.2014 17:18:00
    Я пока не пробовал скрипт, но чтобы быстро решить проблему, я сделал вот это: /ip hotspot walled-garden ip add action=accept comment=AKAMAI disabled=no dst-address=5.178.42.0/24. Это помогло мне. Сейчас проверю скрипт и найду решение. Обновлю эту тему.
     
     
     
    planetcaravan
    Guest
    #13
    0
    05.09.2014 10:13:00
    Я немного поколдовал над скриптом PayPal, чтобы он работал с Facebook и Akamai. Получилось просто отлично!
     
     
     
    steven0
    Guest
    #14
    0
    18.09.2014 18:47:00
    planetcaravan, не могли бы вы поделиться своими скриптами? У меня та же проблема. Привет, стивен.
     
     
     
    planetcaravan
    Guest
    #15
    0
    23.09.2014 11:05:00
    Привет! Я тут воспользовался этим http://wiki.mikrotik.com/wiki/PayPal_with_hotspot_and_walled_garden_bypass и немного подправил, чтобы использовать Akamai. Попробуй у себя и напиши, получилось ли.
     
     
     
    tchus
    Guest
    #16
    0
    27.09.2014 02:31:00
    Все еще использую твой "PayPal script" на своих точках доступа. 2 года спустя, Тим. Сэкономил мне кучу нервов!
     
     
     
    SurferTim
    Guest
    #17
    0
    27.09.2014 10:48:00
    Спасибо! Рад слышать, что мой скрипт всё ещё полезен! Честно говоря, я надеялся, что разработчики Mikrotik уже придумали исправление, чтобы от него можно было избавиться.
     
     
     
    TheWiFiGuy
    Guest
    #18
    0
    29.05.2013 22:02:00
    Ты можешь добавить URL в walled-garden-ip – он принимает IP-адрес или Hostname. Если ты добавишь Hostname, то Mikrotik сам всё прорезолвит и получит связанные IP-адреса.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры