TCP:8621:192.168.4.2:8621:0:AceStream port 8621 -> 8621
TCP:8622:192.168.4.2:8621:0:AceStream port 8621 -> 8622
TCP:8623:192.168.4.2:8621:0:AceStream port 8621 -> 8623
TCP:8624:192.168.4.2:8621:0:AceStream port 8621 -> 8624
TCP:8625:192.168.4.2:8621:0:AceStream port 8621 -> 8625
TCP:8626:192.168.4.2:8621:0:AceStream port 8621 -> 8626
TCP:8627:192.168.4.2:8621:0:AceStream port 8621 -> 8627
TCP:8628:192.168.4.2:8621:0:AceStream port 8621 -> 8628
TCP:8629:192.168.4.2:8621:0:AceStream port 8621 -> 8629
TCP:8630:192.168.4.2:8621:0:AceStream port 8621 -> 8630
Если много раз перезапускать engine, то вот что получается с miniupnpd."Перезапускать" корректно, или же после падения/насильственного убиения процесса? В первом случае движок всегда отписывается UPNP серверу - "я закончил, редирект можно убрать", т.е подобного быть не должно.
в версии для андройд 3.1.24.2 не срабатывает upnp, на роутере TPlink 1043 upnp включенСпасибо за информацию.
Прошивка на роутере почти родная (из русифицированных) 3.13.11 Build 121102 Rel.51321n, свежей её не назовешьТогда действительно странно - со старыми прошивками проблем быть не должно.
В сети только одно устройство с Ace Stream?Да одно. И в админке роутера не чего не светится в upnp пробросах по этому 8621 порту.
А можно как то увидеть в логах более подробно обмен пакетами"Пакетами" нет, но можно увидеть более развернутый дебаг-лог если перезаписать оригинальный конф-файл этим в каталоге движка - http://dl.acestream.org/utils/configs/debug/android/acestream.conf
Если будут какие то рекомендации с вашей стороны, пишите.Войти-выйти, по колесам постучать? =)
решил проверить как себя будет вести виндовый движок - ситуация такая же как и на андройдовском - upnp не работает. Допускаю, что проблема частично лежит на роутереНе исключено, что проблема обратная - на роутере слишком старая версия (mini)upnpd. Проще всего, конечно, просто обновить прошивку роутера (кстати, я на сайте ТР-Линка "3.13.11 Build 121102" версии софта не нашел - возможно, что совсем старые версии они убрали из загрузок).
нашёл файл (miniupnpc.pyd) в котором проскакивает инфа о заголовках, насколько понимаю, это питоновский скомпиленный файл, следовательно просто в него этот заголовок не забъешь.Все правильно, но вопрос больше не в том, что "не забьешь", а в том, что мы используем готовую (miniupnpc) библиотеку - т.е как ее автор решил, такие заголовки она и шлет.
если я сильно занудил этот вопрос :), вы скажите.... останусь тогда на ручном варианте.В целом мы заинтересованы в том, чтобы с upnp было как можно меньше проблем, но если пользователь сознательно использует софт старых версий (в котором именно с upnp могут быть проблемы), то тут мы врядли чем поможем.
"AceStream port 8621 ⇒ 8621"
AceStream port 8621 ⇒ 8621 - в таком варианте ошибок возникать не будет (ну или не должно :) )Проблема кроется в ошибке парсера xml на роутере(и на этом самом роутере софт времен царя Гороха) на заметку мы это дело возьмем, но править не факт что будем - т.к сейчас исправь "ошибку" здесь, а завтра эта правка аукнется в десятке других мест.
Но по делу, ошибка на роутере вызвана не недоработкой софта роутера, а нарушением стандарта XML.Нет, это как раз "недоработка софта", а именно upnpd-демона, и то, что в последующих версиях она исправлена - говорит в пользу этого довода.
я более чем уверен, что такая проблемма не только у меняНе исключено, особенно если этот "не только я" также упорно использует старую версию софта с багами. Лично я считаю, что такие пользователи ССЗБ, и не понимаю, почему мы должны ради них писать "костыли" для обхода багов в прошивке, пусть даже в конкретном случае это не сильно трудозатратно.
Если вы мне подскажите как подменить библиотеку miniupnpc на андройдеНа выходных врядли, это уже на следующей неделе узнаю.
Не исключено, особенно если этот "не только я" также упорно использует старую версию софта с багами. Лично я считаю, что такие пользователи ССЗБЗлостные Буратины сидят на этих версиях по нескольким причинам:
-Есть предположение, что движок "не дружит" с последними версиями miniupnpd....Получается, как в том анекдоте про пирожок с мясом, мало откусил, еще не видишь мясо, много откусил его опять нет. :)
..........................................
-Тогда действительно странно - со старыми прошивками проблем быть не должно.
..........................................
-Не исключено, что проблема обратная - на роутере слишком старая версия (mini)upnpd.
и не понимаю, почему мы должны ради них писать "костыли" для обхода багов в прошивке, пусть даже в конкретном случае это не сильно трудозатратно.Ну наверное из-за этого...
В целом мы заинтересованы в том, чтобы с upnp было как можно меньше проблем, но....И тут получается, как сказано в одном выражении
Злостные Буратины сидят на этих версиях по нескольким причинам:Не "злостные", а "злобные".
И как же бедному юзверю выбрать эту середину, чтобы в цель попасть :) Особенно если об upnpc upnpd он не чего не знает.Все просто - за "бедного юзверя" подумали производители роутера/прошивок. В свою очередь мы всегда рекомендуем пользователям обновлять софт их роутеров при подозрении, что "что-то не так" именно в прошивке.
Все, что сказано до слова "но" не имеет ни какого смысла...Это передергивание, т.к в первой цитате я специально выделил италиком, что про "ССЗБ" и "не понимаю" - это лично мое мнение, а во второй - наша "заинтересованность" не распространяется на некрофилов. Для "бедного пользователя" же гораздо важнее это сообщение
на заметку мы это дело возьмем- т.е программеры наши о проблеме уведомлены, а уж там как карта ляжет.
но есть же железо которое уже не поддерживается разработчикомСогласен, но в случае упомянутого роутера это не так - на сайте производителя можно найти актуальную версии ПО. Плюс есть как минимум две альтернативы - DD-WRT и OpenWRT. И при всем уважении к "дотошности", лично я сомневаюсь, что были проверены все альтернативные прошивки для этой модели. Скорей поверю в то, что "когда-то не пошло, а теперь и заниматься этим недосуг".
В андройде вроде нашел библиотеку по пути... Это оно?Не знаю. Андроидная версия движка - не моя "парафия".
И при всем уважении к "дотошности", лично я сомневаюсь, что были проверены все альтернативные прошивки для этой модели. Скорей поверю в то, что "когда-то не пошло, а теперь и заниматься этим недосуг".Ну почему же не пошло, я же написал, что на то время из того что было, было выбрано, то что понравилось в работе... не одним upnp живет роутер, есть еще UDP Multicast, нагрузка под торрентами и т.д., да и с upnp проблем не наблюдалось, до этой ситуации. Я не говорю, что все прошивки кроме моей говно.. я говорю о том, что работает, не трожь... ну нашился я в свое время, нашился... :) Если подобные проблемы будут повторятся с другим ПО и это будет критично, возможно займусь поиском на что перепрыгнуть. А пока, для себя лично, считаю, более полезным и интересным не перешивать и тестировать прошивки роутера, находя то одни то другие баги в их работе, гораздо с большим интересом покопался в исходниках той же miniupnpc и попробовал разобраться в её работе, для саморазвития.
"Перезапускать" корректно, или же после падения/насильственного убиения процесса? В первом случае движок всегда отписывается UPNP серверу - "я закончил, редирект можно убрать", т.е подобного быть не должно.
Во втором случае не все так просто, и конктретно для miniupnpd есть смысл посмотреть на его параметры "clean_ruleset_threshold" и "clean_ruleset_interval".
В андройде вроде нашел библиотеку по пути data/data/org.acestream.media/files/python/lib/python2.7/lib-dynload/ судя по содержимому собрана на 12й ubuntu. Это оно?Да. Но - "просто собрать в линуксе" получится только для х86 версий Андроида. Под АРМ нужно городить среду кросскомпиляции "с++/python для АРМ", либо собирать прямо на устройстве с целевым CPU/ABI.
я же написал, что на то время из того что было, было выбрано"На то время" понятно, речь про актуальные (современные) прошивки.
сегодня такое-же поведение при паденииДа, в этом смысле ничего не менялось. Падение и/или принудительная остановка движка - аварийная ситуация, и ради этого городить свой огород вокруr upnp - сомнительная затея, проще отключить его вообще.
Да. Но - "просто собрать в линуксе" получится только для х86 версий Андроида. Под АРМ нужно городить среду кросскомпиляции "с++/python для АРМ", либо собирать прямо на устройстве с целевым CPU/ABI.Понял... Ну что ж, просто только котята родятся... Будем грызть дальше :)
"На то время" понятно, речь про актуальные (современные) прошивки.Под вашим давлением пошел вчера на хбт почитать последние страницы по моему девайсу.... даже руки немного зачесались перепрыгнуть на что то альтернативное, но потом опять передумал :) Ну работает он у меня 24/7 месяцами не перезагружаясь, обслуживая 9 проводных клиентов и столько же по wifi, ну что мне ещё от него должно быть нужно??? Кроме того, меня домашние сожрут пока я буду его настраивать, это же интернет, телик работать не будет... :)
Да, в этом смысле ничего не менялось. Падение и/или принудительная остановка движка - аварийная ситуация, и ради этого городить свой огород вокруr upnp - сомнительная затея, проще отключить его вообще.Понял.
И может быть пойти еще дальше, и сделать перебор нескольких портов, если первый выбранный уже кем-то занят.Это уже сделано посредством upnp - движок запрашивает у роутера проброс порта, и если такой порт уже используется, то значение порта увеличивается на 1.