- Mikrotik udp to http proxy
- UDP-to-HTTP прокси на Mikrotik
- 19dx.ru — R0WBH
- Mikrotik + IPTV через Udpxy
- IP-TV и UDP Proxy, UDP-to-HTTP
- Настройка Proxy на Wi-Fi роутере (маршрутизаторе)
- Пример настройки HTTP-прокси на маршрутизаторе Eltex WB-2
- Пример настройки UDPXY на роутере D-Link DIR-615
- Пример настройки UDPXY на роутере SNR-CPE-W4N
- Пример настройки UDP-прокси на интернет-центре Keenetic Ultra
- Настройка Proxy на компьютере (прокси-сервер в домашней локальной сети)
Mikrotik udp to http proxy
о том, чего нет в мануалах
UDP-to-HTTP прокси на Mikrotik
Возникла необходимость использования UDP-to-HTTP прокси для стабильной работы IPTV провайдера в приложениях на домашнем SMART TV. Как известно, Микротик кроме IGMP Proxy для возможности просмотра мультикаста в своем распоряжении не имеет такого функционала, как UDP-to-HTTP proxy, который бы преобразовывал мультикаст в юникаст, а держать этот сервис запущенным на домашнем компе неудобно по причине необходимости его круглосуточной активности.
По данной теме предлагается развернуть для этих целей в MetaROUTER-е Микротика связку openwrt + udpxy, у кого-то даже это реально заработало, но информации и мануалов, описывающих процесс, я не встречал, чтобы самому попробовать реализовать подобное.
Был бы признателен во возможную информацию по вопросу, примеры реализации.
Для личного использования может и пошло бы, во всяком случае, попробовать можно было бы, тем более положительные отзывы имеются, но на hAP AC, hAP AC lite и не поставить ничего, в них HDD по 16Мб стоят, из которых 3-4Мб свободного пространства. Ни один образ не разворачивается по причине нехватки дискового пространства.
Ставить гирляндой дополнительный роутер только для перевода мультикаста в юникаст я пока по перфекционистическим соображениям не готов. Использую пока что программную реализацию на домашнем компе.
19dx.ru — R0WBH
Личный блог Гладышева Дмитрия
Mikrotik + IPTV через Udpxy
Микротиком я обзавёлся примерно год назад, сложностей в его настройке у меня почти не возникло. Кроме одной: я не смог настроить IPTV. Все форумы упоминали два возможных варианта:
- Использование IGMP Proxy.
- Установка OpenWRT и использование udpxy.
Первый вариант у меня не заработал. Вообще никак. Пакеты просто не шли.
Все статьи по второму варианту ограничивались лишь фразой, что нужно использовать MetaROUTER. Каких-либо внятных инструкций я не нашёл (либо плохо искал). На тот момент это не было большой проблемой для меня, так как я уже использовал udpxy на домашнем сервере. И вот я решил попробовать всё-таки сделать проброс IPTV на роутере.
У меня Mikrotik RB951Ui-2Hnd. Он содержит 128 Мбайт оперативной памяти и 128 Мбайт флэш-памяти.
Будем считать, что всё основное уже настроено и Интернет работает. Вводные данные по интерфейсам:
- Порт 1 — WAN;
- Порты 2-5 — LAN;
- Мост WAN-brigde содержит в себе WAN;
- Мост LAN-bridge содержит в себе LAN2…LAN5 и WLAN;
- Подключение к Интернету через PPPoE.
Для начала необходимо скачать образ OpenWRT. Сделать это можно, например, отсюда: http://openwrt.wk.cz/trunk/mr-mips/ . Либо с моего сайта: тыц. Также нам понадобится пакет udpxy, который можно будет взять там же.
Скачанный образ необходимо загрузить в Микротик (Files):
Создаём виртуальную машину. Для этого выбираем пункт меню MetaROUTER. Там нажимаем кнопку «Import Image«. Выбираем образ и выставляем 32 MB оперативной памяти, галочку Enabled убираем:
После успешного импорта у нас появилась новая виртуальная машина. Необходимо дважды щёлкнуть по ней для редактирования настроек. Добавляем диск на 12000 Кбайт:
Жмём OK. Теперь в окне MetaROUTERs переходим на вкладку Interfaces. Здесь надо добавить два интерфейса. Для LAN и WAN:
Теперь нашу виртуальную машину можно запустить. Выбираем Enable. Она автоматически перейдёт в состояние «running». Чтобы подключиться к ней — щёлкаем правой кнопкой мыши и выбираем Console. Увидим загрузку операционной системы. Затем для её активации — жмём Enter:
В списке интерфейсов теперь мы можем наблюдать два новых интерфейса — vif1 и vif2:
Необходимо настроить сеть. Для начала убедимся, что eth0 соответствует локальному интерфейсу. Вводим команду ifconfig и смотрим MAC-адрес. Он должен совпадать с MAC-адресом, который указан в интерфейсе подключенном к LAN-bridge:
Выполняем в консоли команду:
Нажимаем клавишу i и редактируем файл. После редактирования нажмаем Esc и вводим :wq для сохранения. Приводим файл к такому виду:
192.168.1.3 — это IP-адрес, который получит виртуальная машина. Смените, при необходимости.
Удаляем встроенный DHCP/DNS сервер:
Вручную поднимаем WAN интерфейс:
Почему бы не поднимать WAN интерфейс автоматически? Дело в том, что у моего провайдера привязка по MAC-адресу. И если виртуальная машина подключится раньше, чем произойдёт установление PPPoE сессии, то доступ в Интернет будет заблокирован. Поэтому будем пускать виртулку в сеть чуть позже.
Теперь, при вводе команды ifconfig увидим что-то подобное:
Убедимся в том, что Интернет в виртуальной машине доступен. Для этого достаточно пропинговать любой сайт по его доменному имени.
Установим пакет udpxy:
Убедимся, что он запускается. Запустим его вручную со следующими параметрами:
Теперь введём в браузере следующий URL и убедимся, что видим страницу статистики udpxy:
Уже хорошо. Но для работы IPTV пока недостаточно. Нужно добавить маршруты:
Конкретные адреса можно узнать у вашего провайдера, либо просто заглянув в плейлист.
Теперь необходимо изменить плейлист. Все ссылки вида udp://@x.x.x.x:1234 заменить на http://192.168.1.3:1234/udp/x.x.x.x:1234 . Это легко делается с помощью поиска и замены в любом текстовом редакторе.
Запускаем IPTV плеер и проверяем работу:
Всё отлично! Осталось только сделать так, чтобы маршруты и udpxy стартовали автоматически. Создаём файлик:
Со следующим содержимым:
И редактируем файл автозагрузки:
В него надо добавить только одну строку:
Осталось сделать файл исполняемым:
Через две минуты после загрузки — автоматически запустится udpxy и добавятся необходимые маршруты. Задержка нужна по той причине, что сеть в виртуальной машине появляется не сразу, а спустя примерно минуту после загрузки.
Все действия проводились на микротике с прошивкой 6.44.6. На последней версии 6.46.1 (на момент публикации) возникала проблема с импортом образов.
Иногда, во время настройки, а особенно при перезагрузке MetaROUTERа — перезагружался полностью Микротик. Судя по всему, это нормальная его реакция. Срабатывает watchdog.
IP-TV и UDP Proxy, UDP-to-HTTP
Следует отметить, что не все устройства такие как смартфоны, планшеты, IPTV-приставки, телевизоры Smart TV и Android TV, а также игровые консоли и различные онлайн ТВ-плееры способны воспроизводить мультикаст трафик (multicast) напрямую. В таких случаях необходимо указывать в настройках самих устройств, или в установленных на них приложениях и программах для просмотра IPTV непосредственно IP-адрес и порт прокси (proxy), указанные в настройках Wi-Fi роутера (маршрутизатора), или прокси-сервера (proxy-server) в локальной (домашней) сети. В роли такого сервера может выступать не только роутер, но и один из ваших персональных компьютеров, подключенных к такой малой сети. Например этот адрес может выглядеть так: 192.168.1.1:1234 .
Глубоко в терминологию, схемы и принципы работы прокси-сервера мы погружаться не будем. Об этом можно прочесть на безграничных просторах интернета. Единственное, что нужно отметить, так это то, что для устройств, не способных воспроизводить IPTV по протоколу UDP , multicast поток преобразуется таким сервером в unicast поток , или UDP в TCP, а точнее — UDP-to-HTTP . Рассмотрим с вами в общих чертах несколько примеров данных настроек.
И начнём мы с роутеров, так как в первую очередь организация домашней сети начинается именно с них и именно от их возможностей зависит, сможете вы смотреть IPTV вашего провайдера, или нет.
Поддержка UDP Proxy имеется в таких моделях роутеров как ASUS, Zyxel Keenetic, Mikrotik, Eltex и др. Также Udpxy — Linux-прокси существует как отдельный компонент, доступный для загрузки и установки на альтернативные прошивки маршрутизаторов: OpenWRT, DD-WRT, Gargoyle и прочих им подобных. Можно попробовать найти и установить такую прошивку, подходящую для модели и аппаратной версии вашего роутера, и произвести необходимые настройки.
Настройка Proxy на Wi-Fi роутере (маршрутизаторе)
В некоторых моделях маршрутизаторов (далеко не во всех), поддерживающих передачу мультикаст-потоков, имеется возможность включить встроенный программный прокси-сервер. Обычно такой пункт в веб-интерфейсе роутера находится во вкладке или на странице «Настройка локальной сети» , «Домашняя сеть» , или «LAN» , возможно «IPTV» , «IP-телевидение» и называется соответственно «UDP Proxy» , «Udpxy» , «Proxy» , «UDP-to-HTTP» , «HTTP Proxy» , «Включить Прокси» , или что-то наподобие.
Имейте в виду, что при наличии и возможности включения IGMP Proxy , как в роутерах Zyxel Keenetic, его нужно обязательно включить.
Следует дополнительно включить UDP Proxy и назначить (прописать) порт, если его значение установлено как 0 . Например: 1234 , или любой другой. Что касается IP-адреса, то он по-умолчанию на различных моделях маршрутизаторов может быть 192.168.0.1 , или 192.168.1.1 , иногда, но редко — 192.168.10.1 . Смотрите инструкцию по настройке вашего роутера. Чаще всего данные об IP напечатаны на нижней крышке или на задней части корпуса маршрутизатора.
Пример настройки HTTP-прокси на маршрутизаторе Eltex WB-2
- Выбираем вкладку IP-телевидение, затем IPTV.
- В открывшихся настройках включаем IPTV (ставим галочку в чекбоксе).
- Выбираем версию IGMP (здесь 3 варианта: Автоматически, V2 или V3, если сомневаемся, то оставляем как есть).
- Включаем HTTP-прокси (также ставим галочку в чекбоксе).
- Указываем порт прокси (в нашем случае это — 1234).
- Применяем настройки нажатием соответствующей кнопки.
Пример настройки UDPXY на роутере D-Link DIR-615
- Выбираем пункт настроек Дополнительно, затем Разное.
- Выбираем версию IGMP (по-умолчанию V3).
- Включаем сервис UDPXY (ставим галочку в чекбоксе).
- Вписываем порт (в нашем случае номер порта — 1234).
- Нажимаем кнопку Применить.
- Сохраняем введённые данные (конфигурацию устройства).
Пример настройки UDPXY на роутере SNR-CPE-W4N
- В настройках нужно выбрать пункт Сервисы, потом Разное.
- Отключить Режим обработки NAT.
- Включить IGMP прокси.
- Преобразование мультикаста в http установить для LAN.
- Ввести номер порта UDPXY — 1234.
- Применить введённые настройки.
Пример настройки UDP-прокси на интернет-центре Keenetic Ultra
- Выбираем в настройках пункт Управление, а затем Общие настройки.
- Нажимаем кнопку Изменить набор компонентов.
- Ищем в списке компонентов Прокси-сервер UDP-HTTP (udpxy).
- Отмечаем его для установки (ставим галочку в чекбоксе).
- Нажимаем кнопку Установить обновления.
- После установки компонента и перезагрузки устройства открываем пункт настроек Управление, затем Приложения.
- Ищем установленный компонент UDP-прокси.
- Включаем прокси-сервер (переводим ползунок в правое положение).
- Переходим в настройки компонента, нажав на ссылку UDP-прокси.
- Вписываем номер порта (в нашем случае — 1234, по умолчанию — 4022).
- В пункте настроек подключения (Подключаться через) нужно выбрать локальную сеть Провайдера (IPoE).
- Сохраняем внесённые данные нажатием соответствующей кнопки.
После всех соответствующих настроек интернет-центра нужно указать (прописать) вручную IP-адрес и номер порта в настройках ваших устройств (виджетов, приложений, или программ), через которые вы хотите смотреть IPTV посредством прокси-сервера домашнего роутера. Если все данные указаны и введены вами верно, то телеканалы будут доступны для просмотра уже не по протоколу UDP, а по TCP.
Настройка Proxy на компьютере (прокси-сервер в домашней локальной сети)
Если ваш роутер поддерживает приём и передачу мультикастового трафика IPTV (например TP-Link, или D-Link с официальной заводской прошивкой), но в нём нет настроек UDP Proxy, то в качестве прокси-сервера можно использовать небольшую утилиту, установленную на один из персональных компьютеров, подключенных к этому Wi-Fi роутеру, то есть к малой локальной сети. При этом не важно какое подключение используется — проводное, или беспроводное.
Для этого нужно скачать специальную утилиту: UDP-to-HTTP Proxy для компьютеров под управлением ОС Windows.
Запускаем UDP-to-HTTP Proxy.exe и переходим к настройкам:
- Устанавливаем интерфейс UDP-мультикаста: 192.168.1.2
- Устанавливаем интерфейс HTTP-сервера: 192.168.1.2
- Указываем порт: 1234 или какой-то другой.
- Сохраняем введённые данные.
- Запускаем программу вручную нажатием соответствующей кнопки, или настраиваем её запуск в качестве сервисной службы. Во втором случае утилита будет запускаться автоматически при включении компьютера.
Далее указываем вручную IP-адрес и номер порта (в нашем конкретном случае это — 192.168.1.2:1234 ) в настройках ваших устройств, виджетов, приложений, или программ, через которые вы желаете смотреть IP-телевидение, используя прокси-сервер на компьютере. Если данные указаны и введены верно, то начнётся воспроизведение телеканалов.
Примечание: Иногда в некоторых приложениях, как например, в настройках виджета OTT-Player для Smart TV, нужно указывать IP-адрес и номер порта следующим образом: http://192.168.1.1:1234
Очень большим плюсом использования UDP Proxy в небольшой домашней сети как на Wi-Fi роутерах, так и на компьютерах является надёжность доставки пакетов трафика IPTV по Wi-Fi и возможность воспроизведения его практически на любых устройствах, а также значительно стабильнее транслируются телеканалы в HD качестве — без подвисаний и различных визуальных, звуковых артефактов.
Помочь в выборе подходящего Wi-Fi маршрутизатора вам помогут статьи на нашем сайте: