PDA

Bekijk de volledige versie : MiniUPnP вместо UPnP ?



Pages : [1] 2

theMIROn
12-02-2009, 18:39
тут пара знакомых обратилась на предмет мультивана (нескольких pptp), чтобы корректно отрабатывалось поднятие и отключение соединений
сейчас ip_up, ip_down слинкованы на rc
одним из предложений было дополнительно запускать post-firewall.ifname из rc для каждого соединения, и,соответственно, держать их всех самостоятельно

+

есть мысль поменять броадкомовско-асусовский upnp демон на miniupnp (http://miniupnp.free.fr/). Преемущества: поддержка nat-pmp (http://miniupnp.free.fr/nat-pmp.html), меньший размер, прямое взаимодейтсвие с iptables, развитие.

AlexeyS
12-02-2009, 21:37
есть мысль поменять броадкомовско-асусовский upnp демон на miniupnp (http://miniupnp.free.fr/). Преемущества: поддержка nat-pmp (http://miniupnp.free.fr/nat-pmp.html), меньший размер, прямое взаимодейтсвие с iptables, развитие.

У меня тоже была такая идея, но дело в том, что броадкомовский upnp еще умеет оповещат о возможностях и текущих режимах роутера, а miniupnp этого не умеет

theMIROn
12-02-2009, 21:43
У меня тоже была такая идея, но дело в том, что броадкомовский upnp еще умеет оповещат о возможностях и текущих режимах роутера, а miniupnp этого не умеет
гм. я что то пропустил?

p.s скомпилял модуль http://www.ipp2p.org/ для iptables
в Wish List просили, не тестировал.

lly
13-02-2009, 08:27
сейчас ip_up, ip_down слинкованы на rc
одним из предложений было дополнительно запускать post-firewall.ifname из rc для каждого соединения, и,соответственно, держать их всех самостоятельно

Я против нашинковывания скриптов в rc! Сейчас в post-firewall передаётся имена интерфейсов wan и lan. Если человек любит лапшу из скриптов - прекрасно может это сделать сам в post-firewall. Заодно и повод ему подучить shell-script.


есть мысль поменять броадкомовско-асусовский upnp демон на miniupnp (http://miniupnp.free.fr/).
Меня сия мысль посетила позавчера, но высказаться кратче и четче чем AlexeyS, я не смогу ;)

theMIROn
19-02-2009, 20:06
посравнивал upnp, никаких изменений.
кстати, то что miniupnp возвращает информацию про роутер добавить достаточно просто, все в константах + nvram.
lly, в r108 /rc/c-asus.patch фигурирует ping -c 3 140.113.1.1 для поднятия соединения dial-on-demand , вместо nslookup localhost
м.б имеет смысл пинговать wan шлюз. как то это, гм, не боголепно

UPDATE: вчера обновился vsftpd-2.1.0 (ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.1.0.tar.gz)

Oleg
02-03-2009, 19:00
Выложил 10.7.

1) заменил в настройках ftp сервера Read/Write/Erase на Write Only
2) upnp больше не рестартует при синхронизации времени.

theMIROn
02-03-2009, 20:06
Выложил 10.7.
1) заменил в настройках ftp сервера Read/Write/Erase на Write Only
Read/Write/Erase был первым пунктом, поэтому лучше первым оставить Read/Write, а Write Only засунуть поглубже куда. Иначе при применении параметров с этой страницы получим Write Only для юзеров.

2) upnp больше не рестартует при синхронизации времени.т.е в вачдоге не выполняется stop_upnp() и start_upnp()? вместо можно напимер по SIG_USR1 слать адвертайз заново, для случаев если время сильно поменялось.

Oleg
02-03-2009, 20:34
Read/Write/Erase был первым пунктом, поэтому лучше первым оставить Read/Write, а Write Only засунуть поглубже куда. Иначе при применении параметров с этой страницы получим Write Only для юзеров.

А кто сказал, что он первый? :) Всё там нормально.


т.е в вачдоге не выполняется stop_upnp() и start_upnp()? вместо можно напимер по SIG_USR1 слать адвертайз заново, для случаев если время сильно поменялось.
Я там с логикой внутри upnp особо не разбирался. Но у нас время может только сильно вперёд ускать, это приведёт как раз к тому, что upnp проснётся (если он вообще это использует)... Крышу ему по-крайней мере не срывает, как это было с самбой и igmpproxy. Или речь не об этом?

theMIROn
02-03-2009, 22:59
А кто сказал, что он первый? :) Всё там нормально.confirmed

Я там с логикой внутри upnp особо не разбирался. Но у нас время может только сильно вперёд ускать, это приведёт как раз к тому, что upnp проснётся (если он вообще это использует)... Крышу ему по-крайней мере не срывает, как это было с самбой и igmpproxy. Или речь не об этом?Об этом... были посты на форуме о падении upnp, а новых прошивках upnp и разу не изменился. Возможно идея у асусовцев и была в том, чтобы запустить демон, если он упал...
Что думаешь о miniupnp (http://miniupnp.free.fr/)?

1. В сетевых подключениях вылез "Шлюз Интернета". Я что-то не припомню, чтобы он был, но может и был. Однако проблема именно в нем!
это и есть upnp...

Oleg
03-03-2009, 12:28
Об этом... были посты на форуме о падении upnp, а новых прошивках upnp и разу не изменился. Возможно идея у асусовцев и была в том, чтобы запустить демон, если он упал...
Что думаешь о miniupnp (http://miniupnp.free.fr/)?

Я фиксил upnp довольно много раз. Может быть теперь падать не будет? :) Или следует в watchdog добавить проверку на то, что upnp жив и перезапускать его при необходимости...

От miniupnp я вроде когда-то использовал клиента для тестирования нашей реализации. В принципе я не возражаю, если сервер будет заменён, только не представляю совершенно, как miniupnp работает с iptables. Возможно что-то прийдётся крутить, как минимум, чтобы правила попадали в VSERVER.

Hohmach
03-03-2009, 12:36
а новых прошивках upnp и разу не изменился.
В DD-WRT относительно свежий..
http://svn.dd-wrt.com:8000/dd-wrt/browser/src/router/upnp/src

AlexeyS
03-03-2009, 13:24
В DD-WRT относительно свежий..
http://svn.dd-wrt.com:8000/dd-wrt/browser/src/router/upnp/src

Хммм, похоже на новую версию от Broadcom, значит, в отличаи от miniupnp и проблем быть не должно.

al37919
03-03-2009, 14:00
дисклэймер у него какой то нехороший:

This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
the contents of this file may not be disclosed to third parties, copied
or duplicated in any form, in whole or in part, without the prior
written permission of Broadcom Corporation

theMIROn
03-03-2009, 14:46
дисклэймер у него какой то нехороший:
но оно в сорце GPL_1927.tar.gz такое же.
насколько оно новое - гляну

al37919
03-03-2009, 20:51
но оно в сорце GPL_1927.tar.gz такое же.
насколько оно новое - гляну
между этим:

* This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
* the contents of this file may not be disclosed to third parties, copied
* or duplicated in any form, in whole or in part, without the prior
* written permission of Broadcom Corporation.

и этим:

* THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
* KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
* SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
все же есть небольшая разница.

AlexeyS
05-03-2009, 22:46
Ради интереса собрал miniupnpd под нашу прошивку, немного погонял, что я могу сказать - работает не хуже штатной. А вот тонкостей всех и не перечислить:
1. Не сохраняет правила форвардинга при перезапуске
2. Объявляет роутер черти кем, но только не самим собой (ну это я так конфигурацию не допилил...)
3. Пробрасывает порт только с одного интерфейса, в то время, как штатный со всех... (а может так и лучше...)
4. Файл получается больше стандартного...

Моё резюме: если не видно существенной разницы - а нужно ли оно вообще? Разьве что из принципа - искоренять всё от Broadcom... :rolleyes:

theMIROn
06-03-2009, 05:41
Моё резюме: если не видно существенной разницы - а нужно ли оно вообще? Разьве что из принципа - искоренять всё от Broadcom... :rolleyes:
такого принципа нет и не было.
для себя плюсы вижу только в поддержке NAT-PMP (http://miniupnp.free.fr/nat-pmp.html) и в лицензии, разрешающей распространение и использование

AlexeyS
06-03-2009, 07:47
такого принципа нет и не было.
Я имел в виду консерватизм и закрытость кода от Broadcom



для себя плюсы вижу только в поддержке NAT-PMP (http://miniupnp.free.fr/nat-pmp.html) и в лицензии, разрешающей распространение и использование

А вот интересно, много программ поддерживает NAT-PMP? Я пока ни одной не знаю

theMIROn
06-03-2009, 08:06
А вот интересно, много программ поддерживает NAT-PMP? Я пока ни одной не знаюuTorrent как минимум

AlexeyS
27-05-2009, 22:06
Поставил себе 307 релиз, upnp в целом работает, хотя у меня и раньше с ним проблем не было... никаких изменений не заметил...

P.S. забавно конечно, но с родным upnp роутера - винда статистику шлюза не отображает, а вот с miniupnp - цифирьки трафика через шлюз - как на ладони...

lly
28-05-2009, 08:45
с текущим svn невозможно обновиться через web интерфейс.
подозреваю, что что-то поломано c html/js компрессором

странно, у меня получается :confused:
а как выглядит ошибка?


Поставил себе 307 релиз, upnp в целом работает, хотя у меня и раньше с ним проблем не было... никаких изменений не заметил...

P.S. забавно конечно, но с родным upnp роутера - винда статистику шлюза не отображает, а вот с miniupnp - цифирьки трафика через шлюз - как на ладони...
спасибо и за этот тест, а то что-то жалобщики, как всегда, сдулись тестировать :(

Для того, чтобы смигрировать на miniupnp, надо сперва:

понять от какой же точно версии плясал ASUS - 0.92, 0.95 ?
что ASUS'овцы там наворотили своего
актуальны ли все эти модификации
собственно миграция

А может достаточно переехать на linux-igd 1.0 ?

AlexeyS
28-05-2009, 09:01
Для того, чтобы смигрировать на miniupnp, надо сперва:?
У меня создалось впечатление, что Broadcom+Asus хотели сделать многое (судя по исходникам), но в итоге что-то оно не очень пашет, за исключением проброса портов...
Поскольку у меня нет VPN - не могу сказать насколько корректно поведет себя miniupnp с несколькими интерфейсами, но вот при одном интерфейсе почему-то сообщает скорость порта в 10 мбит, в то время как она 100... Впрочем, стандартный upnp и того не делает, а вроде должен...


А может достаточно переехать на linux-igd 1.0 ?

Надо будет попробовать... и сравнить.

lly
28-05-2009, 09:15
У меня создалось впечатление, что Broadcom+Asus хотели сделать многое (судя по исходникам), но в итоге что-то оно не очень пашет, за исключением проброса портов...
Начали, оценили масштаб работ, и плюнули... Судя по тому, что в последних прошивках от 500gpV2 и 520gU в этой части ничего не поменялось, upnp забросили.
Чисто технических различий с linux-igd очень много, а вот нужны ли они все? Желающих продраться сквозь эти дебри пока не нашлось :(

AlexeyS
28-05-2009, 09:29
Начали, оценили масштаб работ, и плюнули... Судя по тому, что в последних прошивках от 500gpV2 и 520gU в этой части ничего не поменялось, upnp забросили.
Чисто технических различий с linux-igd очень много, а вот нужны ли они все? Желающих продраться сквозь эти дебри пока не нашлось :(

Просто, судя по форумам народ не доверяет upnp и пользуется статическим пробросом портов или virtual server. Мне же upnp удобнее, но пока меня и асусовский устраивал, хотя он иногда и не срабатывает с первого раза :( (но, ксчастью это бывает очень редко).

residend
20-10-2009, 17:03
А как убить все перенаправления одной командой, а не перебирать каждый порт из списка?

msevm
20-10-2009, 17:29
И чего мы на MiniUPnP не перелезем...

Omega
21-10-2009, 05:53
А как убить все перенаправления одной командой, а не перебирать каждый порт из списка?

Нужно просто отключить UPnP в web-морде и перезагрузить роутер по питанию ... ;)

ryzhov_al
21-10-2009, 07:14
А как убить все перенаправления одной командой, а не перебирать каждый порт из списка?
Можно так (http://wl500g.info/showpost.php?p=159270&post159270).

theMIROn
24-10-2009, 00:50
Ради интереса собрал miniupnpd под нашу прошивку, немного погонял, что я могу сказать - работает не хуже штатной. А вот тонкостей всех и не перечислить:
1. Не сохраняет правила форвардинга при перезапуске
2. Объявляет роутер черти кем, но только не самим собой (ну это я так конфигурацию не допилил...)
3. Пробрасывает порт только с одного интерфейса, в то время, как штатный со всех... (а может так и лучше...)
4. Файл получается больше стандартного...

Моё резюме: если не видно существенной разницы - а нужно ли оно вообще? Разьве что из принципа - искоренять всё от Broadcom... :rolleyes:
Вот и я собрал
1. Правила можно и нужно заставить сохранять в nvram, не вижу тут особых сложностей
2. Объявление роутера так же допилить, чтобы сообщал что нужно, так же не сложно
3. Тут совсем все просто, даже если использовать стандартные имена:


iptables -t nat -N MINIUPNPD
iptables -t nat -A VSERVER -j MINIUPNPD
iptables -N MINIUPNPD
iptables -A FORWARD -j MINIUPNPD

правда для поддержки log_accept/log_drop придется чуть чуть пилить
4. upnp 76 Кб, miniupnpd 93 Кб, в прошивке - порядка 30 и 37 Кб соответственно.
Но, если miniupnpd собрать без NAT-PMP, то получается 88 Кб и 35Кб в squashfs.
5. Работает, имхо, намного быстрее штатного upnp, во всяком случае - отвечает на запросы в разы быстрее, сохраняет конфигурацию. Хотя, это зависит от доступа к nvram.
6. Поддерживает настройку использования портов в таком виде


# UPnP permission rules
# (allow|deny) (external port range) ip/mask (internal port range)
# A port range is <min port>-<max port> or <port> if there is only
# one port in the range.
# ip/mask format must be nn.nn.nn.nn/nn
# it is advised to only allow redirection of port above 1024
# and to finish the rule set with "deny 0-65535 0.0.0.0/0 0-65535"
allow 1024-65535 0.0.0.0/0 1024-65535
deny 0-65535 0.0.0.0/0 0-65535

7. а так же дополнительная защита от вирей и кривых клиентов


# "secure" mode : when enabled, UPnP client are allowed to add mappings only to their IP.
secure_mode=yes

8. корректно работает статистика ppp соединений
Можно и заюзать вообщем то... Какие мысли у кого?

al37919
24-10-2009, 08:08
3. Тут совсем все просто, даже если использовать стандартные имена:


iptables -t nat -N MINIUPNPD
iptables -t nat -A VSERVER -j MINIUPNPD
iptables -A FORWARD -j MINIUPNPD

сомнительно, что перенаправление из filter в nat будет работать так просто. Да и какой смысл объединять FORWARD и VSERVER?

theMIROn
24-10-2009, 09:02
сомнительно, что перенаправление из filter в nat будет работать так просто. Да и какой смысл объединять FORWARD и VSERVER?
Гм.
miniupnpd содает в таблице nat правила, в которых прописывается DNAT, в фильтре - те же правила ACCEPT
А ты что имел ввиду?

al37919
24-10-2009, 09:10
тогда должны быть две раздельные таблицы:

iptables -t nat -N MINIUPNPD
iptables -N MINIUPNPD
iptables -t nat -A VSERVER -j MINIUPNPD
iptables -A FORWARD -j MINIUPNPD

AlexeyS
24-10-2009, 09:17
Гм.
miniupnpd содает в таблице nat правила, в которых прописывается DNAT, в фильтре - те же правила ACCEPT
А ты что имел ввиду?

Всё-таки, как я понял, лучше применять стандартные имена правил, тогда веб интерфейс начинает показывать пробросы без всяких допилов напильником... Да, и лишних таблиц создавать не надо.. Имена можно поменять через конфиг или прямо в коде:


--- a/upnpglobalvars.c.orig<--->2008-10-06 17:22:02.000000000 +0400
+++ a/upnpglobalvars.c<>2009-10-06 00:30:34.000000000 +0400
@@ -76,8 +76,8 @@
#ifdef USE_NETFILTER
/* chain name to use, both in the nat table
* and the filter table */
-const char * miniupnpd_nat_chain = "MINIUPNPD";
-const char * miniupnpd_forward_chain = "MINIUPNPD";
+const char * miniupnpd_nat_chain = "PREROUTING";
+const char * miniupnpd_forward_chain = "FORWARD";
#endif

int n_lan_addr = 0;

Кстати, как мне показалось, сохранять пробросы в nvram даже вредно... ибо после перезапуска роутера другие динамические параметры не сохраняются... Ну, а если понадобится восстановление пробросов при перезапуске демона, то проще включить LEASEFILE

lly
24-10-2009, 10:16
А конфиги, хоть и обычные текстовики, но каждый раз параметры внутри записываются в случайном порядке и сравнить их действительно не так просто.
В unix есть замечательная командочка sort, которая позволит решить сию проблему :)

Вот и я собрал miniupnpd
...
Можно и заюзать вообщем то... Какие мысли у кого?
размер не проблема, но вот допиливать там еще много... ты хочешь взвалить эту тяжкую ношу на себя?

AlexeyS
24-10-2009, 10:22
размер не проблема, но вот допиливать там еще много... ты хочешь взвалить эту тяжкую ношу на себя?

Собственно, там проблем особых нет, только rc подправить, чтобы правильно конфиг заполнял...

theMIROn
24-10-2009, 10:27
размер не проблема, но вот допиливать там еще много... ты хочешь взвалить эту тяжкую ношу на себя?
Всерьез подумываю об этом


Собственно, там проблем особых нет, только rc подправить, чтобы правильно конфиг заполнял...

Кстати, как мне показалось, сохранять пробросы в nvram даже вредно... ибо после перезапуска роутера другие динамические параметры не сохраняются... Ну, а если понадобится восстановление пробросов при перезапуске демона, то проще включить LEASEFILE
как бы не так. upnp щас как раз в nvram каждую минуту записывает редиректы

lly
24-10-2009, 10:29
Собственно, там проблем особых нет, только rc подправить, чтобы правильно конфиг заполнял...
Я не исследовал сей вопрос подробно, поэтому исхожу из опыта, что проблема может всплыть из-за забытых пары строк ;) Учитывая объем и качество кода upnp, это может вылиться в продолжительные разборки.

А чтобы на 100% ответить на твой вопрос о сохранении редиректов надо читать стандарт upnp.

P.S. Лично мне неохота реанимировать винду ради тестирования сего чуда.

AlexeyS
24-10-2009, 10:30
как бы не так. upnp щас как раз в nvram каждую минуту записывает редиректы

Я знаю, только, по-моему, это было сделано потому, что демон периодически падал и китаезы не нашли ничего более лучшего, чем записывать все пробросы в nvram, чтобы было откуда их восстанавливать после перезапуска демона. Поищи по исходникам, где эти сохраненные значения используются и всё станет ясно.

theMIROn
24-10-2009, 10:30
P.S. Лично мне неохота реанимировать винду ради тестирования сего чуда.Леонид, што за отмазы? =)
Есть же miniupnpc, например

AlexeyS
24-10-2009, 10:35
Я не исследовал сей вопрос подробно, поэтому исхожу из опыта, что проблема может всплыть из-за забытых пары строк ;) Учитывая объем и качество кода upnp, это может вылиться в продолжительные разборки.

А чтобы на 100% ответить на твой вопрос о сохранении редиректов надо читать стандарт upnp.

P.S. Лично мне неохота реанимировать винду ради тестирования сего чуда.

В конце концов, проще включить LEASEFILE и при инициализации перезагрузки роутера или по таймеру сохранять его во flashfs - идиологически будет более правильно.

lly
24-10-2009, 10:44
В конце концов, проще включить LEASEFILE и при инициализации перезагрузки роутера или по таймеру сохранять его во flashfs - идиологически будет более правильно.
Увы, нет - при большом flashfs всё будет тормозить. А вот для jffs2 - да, подойдет вполне.

theMIROn
24-10-2009, 10:49
А вот для jffs2 - да, подойдет вполне.О том же подумал.

sysdemon
29-11-2009, 19:45
4. Есть прошивка dd-wrt by Eko, в варианте mini, которая ведет себя почти стабильно, если не считать что вафля работает ужасно и скорость pptp и l2tp оставляет желать лучшего.

Неправда, после mini можно прошивать big из generic, WiFi работает великолепно, если TX 17, никаких обрывов. производительности PPTP хватает для моих 10 мегабит Корбины. Transmission, miniupnp, mc, proftpd, ushare все шуршит и работает, за сегодня роутер нараздавал на 30 гигабайт. :) Мой выбор dd-wrt пока энтузиасты не соберут прошивку Олега. Желательно с поддержкой JFFS2 на свободный флэш, в dd-wrt 25 мегабайт свободно для своих приложений. А если не соберут, как уже говорили - се ля ви, я не вижу, что не умеет dd-wrt, из того что умеет прошивка Олега. Хотя, я уверен, что соберут, иначе нету будущего. Появится у энтузиастов этот роутер, подсядут, сделают. :)

Wolfgun
12-01-2010, 22:00
Прошивка d1000

Сталкнулся с такой проблемой при включеном UPnP если програма долбится наружу включается vserver

тоесть

-A VSERVER -p udp -m udp --dport 51567:51597-j DNAT --to-source 192.168.40.254
]-A VSERVER -p tcp -m tcp --dport 51567:51597-j DNAT --to-source 192.168.40.241


хотя в данный момент торрент не работает
перезагрузка роута данные правила не убивают
в параметрах nvram остаются переменные

наример
forward_port0= ( не помню точно ка на память
данная переменая убивается только uset
можно это както поправить чтоб каректно работал UPnP

Wolfgun
14-01-2010, 09:31
2 lly

А что скажешь про UPnP и проброс портов ??? может гдето что то посмотреть?

lly
14-01-2010, 09:42
2 lly

А что скажешь про UPnP и проброс портов ??? может гдето что то посмотреть?
Да нечего сказать - UPnP делает ровно то, что его попросят. Какая именно прога на твоём компе и зачем так просит, я не знаю. Смотреть запросы UPnP - сниффером.

А как удалять правила вручную не раз писали на форуме.

Wolfgun
14-01-2010, 10:46
Да нечего сказать - UPnP делает ровно то, что его попросят. Какая именно прога на твоём компе и зачем так просит, я не знаю. Смотреть запросы UPnP - сниффером.

А как удалять правила вручную не раз писали на форуме.

Как удалять я знаю
nvram unset
Вопрос не в том.
Проблема заключается в том что программа Skype или uTorrent не работает, или вобще данный комп не включен, а правила на роутере остаются они автоматом не удаляются. Т.е. остаются остаются переменные nvram forward_port, а Skype открывает опять новый порт.

lly
14-01-2010, 10:52
Проблема заключается в том что программа Skype или uTorrent не работает, или вобще данный комп не включен, а правила на роутере остаются они автоматом не удаляются.
Так было задумано и реализовано ASUS'ом. Насколько это (сохранение правил проброса после перезагрузки роутера) правильно? Не знаю. Чтобы ответить точно, надо читать спеки на UPnP.

А по хорошему, программа сделавшая проброс, ответственна и за его удаление.

al37919
14-01-2010, 10:55
upnp правила сохраняет в nvram. Это еще что --- nvram и переполниться таким путем может.

ИМХО, самое правильное --- не использовать upnp вообще. Скайп и так прокинет все что ему надо, а uTorrent можно и вручную прописать. Меня всегда умиляла эта технология --- какой смысл в фарволле, если его может открыть любая программа? Например, вредоносный SMTP-прокси...

Wolfgun
14-01-2010, 11:48
upnp правила сохраняет в nvram. Это еще что --- nvram и переполниться таким путем может.

ИМХО, самое правильное --- не использовать upnp вообще. Скайп и так прокинет все что ему надо, а uTorrent можно и вручную прописать. Меня всегда умиляла эта технология --- какой смысл в фарволле, если его может открыть любая программа? Например, вредоносный SMTP-прокси...

А как же тогда будет работать DLNA server ???? :)))) У меня твонки крутится на телек
А вот я про то что nvram может переполнится и дырки лишнии не нужны
Можноконечно скрипт навоять проверки по netsat и удивать не нужные пробросы. Но все это как то не правильно.
2 lly

Чтобы ответить точно, надо читать спеки на UPnP.

Посмотрю но с англичким я не очень

Wolfgun
14-01-2010, 13:50
2 lly

Можно вопрос
Что конкрено смотреть про UPnP ???

lly
14-01-2010, 14:10
Можно вопрос
Что конкрено смотреть про UPnP ???
Я сам UPnP не изучал - работает и ладно. Мне и проверять то особо не на чем.

Смотреть - то что тебя интересует. Должен ли UPnP отслеживать потерю связи с клиентом (и как?) И что делать в подобных случаях. А также, имеют ли правила срок жизни?

burning shadow
14-01-2010, 21:08
Интерфейс UPnP позволяет как открыть порт, так и закрыть его. Это должна делать программа. Роутер ни за чем следить не должен и не будет никогда.

Wolfgun
15-01-2010, 09:01
Интерфейс UPnP позволяет как открыть порт, так и закрыть его. Это должна делать программа. Роутер ни за чем следить не должен и не будет никогда.

Насколько я вчера бего пробежал спецификацию порты открываются по UUID (UUID существует для индификации клиента котрому пребуется определенные действия). У UUID есть время жизни и часы срок расхождения не должен превышать 100милисекунд. Так что это должен делать server UPnP проверять не просрочено действие UUID. И зачем вносить проброс по UPnP в NVRAM ???

checat
15-01-2010, 13:40
зачем вносить проброс по UPnP в NVRAM ???
Это понятно зачем, чтобы в случае неожиданной перезагрузки проброс портов сохранился. Интересно, что говорит спецификация про такой случай, рассматривает ли вообще возможность перезагрузки шлюза. :)

lly
15-01-2010, 18:40
Насколько я вчера бего пробежал спецификацию порты открываются по UUID (UUID существует для индификации клиента котрому пребуется определенные действия). У UUID есть время жизни и часы срок расхождения не должен превышать 100милисекунд. Так что это должен делать server UPnP проверять не просрочено действие UUID. И зачем вносить проброс по UPnP в NVRAM ???
Если так, то малой кровью не отделаешься , нужно допиливать UPnP :(

Мы вряд ли сможем скоро взяться за эту задачу, вся надежда на добровольцев...

AlexeyS
15-01-2010, 19:52
Если так, то малой кровью не отделаешься , нужно допиливать UPnP :(

Мы вряд ли сможем скоро взяться за эту задачу, вся надежда на добровольцев...

miniupnp умеет убивать неактивные правила

lly
15-01-2010, 19:58
miniupnp умеет убивать неактивные правила
Но и его тоже нужно допиливать под роутер. Патовая ситуация.

AlexeyS
15-01-2010, 20:20
Но и его тоже нужно допиливать под роутер. Патовая ситуация.

У меня в последнее время вполне себе работает, всё делает, только запускается не из rc, а из postboot. Настройки из вебинтерфейса не работают, но пробросы отображаются... С компа тоже все функции работают, только вот время аптайма роутера какое-то нереально большое отображается...

Wolfgun
16-01-2010, 01:19
Это понятно зачем, чтобы в случае неожиданной перезагрузки проброс портов сохранился. Интересно, что говорит спецификация про такой случай, рассматривает ли вообще возможность перезагрузки шлюза. :)

А НЕ ПРОЩЕ КЛИЕНТУ ЕЩЕ РАЗ постучатся с новым uuid ??? Ладно это оффтоп Так не должно быть

2 AlexeyS
А с DLNA (всякими Twoky и MediaTom ) как работает ???
Да вот глянул miniUPnP
Он встроен в OpenWRT и X-WRT может попробуем внедрить в прошивку ??

AlexeyS
17-01-2010, 20:39
2 AlexeyS
А с DLNA (всякими Twoky и MediaTom ) как работает ???
Да вот глянул miniUPnP
Он встроен в OpenWRT и X-WRT может попробуем внедрить в прошивку ??

С таким добром не проверял, но со Strong DC++ работает на ура.

AlexeyS
09-03-2010, 12:57
Добавлю-ка сюда для любопытствующих и для сохранности патч для добавления miniupnp в прошивку... Патч пока очень примерный, RC не исправляет, и потому нужно запускать miniupnpd из postfirewall, подправив предварительно его config и отключив встроенный upnp сервер...
Наложение патча:
1. выполнить шаги инструкции по самостоятельной сборке прошивки до 4.1 включительно
2. распаковать прилагаемый архив и поместить в подпапку miniupnpd архив исходников miniupnp (http://miniupnp.free.fr/files/download.php?file=miniupnpd-1.4.20100308.tar.gz)
3. перейти в каталог miniupnp и выполнить команду: make SRC=/whatever-you-want/broadcom/src/
4. продолжить выполнение инструкции по самостоятельной сборке прошивки.
6092

Unlimited
09-03-2010, 13:07
А в чем отличия от встроенного UPNP сервера?

theMIROn
09-03-2010, 13:10
Добавлю-ка сюда для любопытствующих и для сохранности патч для добавления miniupnp в прошивку...
Вопрос, а что это дает, кроме NAT-PMP?

AlexeyS
09-03-2010, 13:19
1. Просто альтернатива асусовскому upnp..
2. Черные и белые списки портов и адресов (безопасность)...
3. Большая стабильность (надеюсь)
4. Кто что ещё для себя найдёт ;-)

theMIROn
09-03-2010, 13:29
1. Просто альтернатива асусовскому upnp..
2. Черные и белые списки портов и адресов (безопасность)...
3. Большая стабильность (надеюсь)
4. Кто что ещё для себя найдёт ;-)

собственно уже обсуждали
http://wl500g.info/showthread.php?p=165848&highlight=miniupnpd#post165848

AlexeyS
09-03-2010, 13:38
собственно уже обсуждали
http://wl500g.info/showthread.php?p=165848&highlight=miniupnpd#post165848

Да, было дело.. теперь я просто выложил свои наработки... если кого-то заинтересует - хорошо, нет - пусть всё равно лежит...
Просто, например, для случая использования двух раздельных таблиц, а не одной выделенной - miniupnp содержит большой баг - удаляет не те строки из таблицы forward... я это подправил... http://wl500g.info/showpost.php?p=165868&postcount=1931

Unlimited
09-03-2010, 13:54
Вопрос, а что это дает, кроме NAT-PMP?
А что штатный не умеет NAT-PMP? А что он делает вообще?:)


1. Просто альтернатива асусовскому upnp..
2. Черные и белые списки портов и адресов (безопасность)...
3. Большая стабильность (надеюсь)
4. Кто что ещё для себя найдёт ;-)
Что-то какие-то не веские отличия...

theMIROn
09-03-2010, 13:56
А что штатный не умеет NAT-PMP? А что он делает вообще?:)
http://en.wikipedia.org/wiki/NAT_Port_Mapping_Protocol


Что-то какие-то не веские отличия...
у меня по ссылке чуть более подробно описано.

Unlimited
09-03-2010, 13:58
http://en.wikipedia.org/wiki/NAT_Port_Mapping_Protocol
Я имел ввиду что умеет делать штатный UPNP...

theMIROn
09-03-2010, 14:01
Я имел ввиду что умеет делать штатный UPNP...
не поверишь, штатный upnp демон только upnp и умеет :)

Rave
09-03-2010, 14:02
Что-то не работает upnp на моём 500w... Snow Leopard, клиенты - utorrent и transmission. Билд прошивки 1222
Приходится вручную порт открывать через virtual server

AlexeyS
09-03-2010, 14:04
Что-то не работает upnp на моём 500w... Snow Leopard, клиенты - utorrent и transmission. Билд прошивки 1222
Приходится вручную порт открывать через virtual server

А он включен в интерфейсе? У меня работает и встроенный, и miniupnp...

Rave
09-03-2010, 14:20
А он включен в интерфейсе? У меня работает и встроенный, и miniupnp...

Включен, установлено "report wan address"

Unlimited
09-03-2010, 14:53
Включен, установлено "report wan address"
А в уторренте?

Unlimited
09-03-2010, 14:54
не поверишь, штатный upnp демон только upnp и умеет :)
UPNP-PMP это уже не UPNP?

TReX
09-03-2010, 14:54
Включен, установлено "report wan address"

Think different! ))

theMIROn
09-03-2010, 15:10
UPNP-PMP это уже не UPNP?

Это 2 разных протокола, UPNP-PMP - детище apple

TReX
09-03-2010, 15:56
А вот как же все-таки нарисовать правило чтобы один адрес мог пинговать роутер через wan и остальные правила при этом не порушить? ) И в луда его попихать? В post-firewall?

Rave
09-03-2010, 17:27
Think different! ))

Попробовать поставить ман? Вроде где-то на форуме тут читал что для юторрента не имеет значения...

http://i2.fastpic.ru/big/2010/0309/45/eb2ede37446526e6fab26fc4eff5fd45.png

upd: попробовал ставить ман, выключать/включать upnp в utorrent и перезагружать его, не помогло.

AlexeyS
09-03-2010, 18:10
Попробовать поставить ман? Вроде где-то на форуме тут читал что для юторрента не имеет значения...

http://i2.fastpic.ru/big/2010/0309/45/eb2ede37446526e6fab26fc4eff5fd45.png

upd: попробовал ставить ман, выключать/включать upnp в utorrent и перезагружать его, не помогло.

Если порт уже проброшен вручную, то upnp его не пробросит вторично, а выдаст ошибку!

Rave
09-03-2010, 18:52
Если порт уже проброшен вручную, то upnp его не пробросит вторично, а выдаст ошибку!

Вручную проброшен другой порт, этот - рандомный.

п.с. если указать проброшенный порт то никакой ошибки не выдаёт.

TReX
09-03-2010, 19:53
Вручную проброшен другой порт, этот - рандомный.

п.с. если указать проброшенный порт то никакой ошибки не выдаёт.

Это так работает Макинтра... извините ...ош В свое время друг мучался, лазил по форумам, правда юзал он тогда Д-Линк, но симптомы те же, единственное рабочее решение - использовать жесткое мапирование. Так что - учитесь думать по Яблочному ))

maxsnz
01-09-2010, 23:33
http://rghost.ru/2509081/thumb.png (http://rghost.ru/2509081/image.png)
нажимаю Disable - и девайс перезагружается, теряя коннект с ВПНом. Через некоторое время в контекстном меню Disable сменяется на Enable, при нажатии девайс снова перезагружается, интернет восстанавливается. Причем сделать такое безобразие можно с любого компа, подключенного к роутеру.
WTF???
интересует как ограничить такие широкие возможности винды

TheSAS
02-09-2010, 07:43
Отключи upnp на роутере.

maxsnz
02-09-2010, 11:43
спасибо, отключил upnp, получил некоторое представление об этом протоколе

smi
02-09-2010, 19:58
)) Да только вот многим программам UPNP для работы нужен, а так ничего Я лично, таких не встречал, есть такие, которые могут его использовать, но вот чтобы НУЖЕН был, не припомню.

UPNP - ересь, которую следует выключать, самым первым делом, во избежании проблем ;)

TheSAS
02-09-2010, 20:46
UPNP не ересь, а следствие развития Portforwarding-a в автоматическом режиме.

smi
02-09-2010, 21:12
UPNP не ересь, а следствие развития Portforwarding-a в автоматическом режиме. Это я и называю ересью ;) Когда, что то безконтрольно, само открывается и перенаправляется, это грозит не контролируемыми проблемами.
Т.ч. UPNP - более вреден, чем полезен, честно говоря польза от него близка к нулю, экономия 5 минут на явное прописывание проброса, этого не стоит ;)

sfstudio
03-09-2010, 00:55
UPNP не ересь, а следствие развития Portforwarding-a в автоматическом режиме.

Абсолютно несекурная кака легко эксплуатируемая для создания ботсетей и распространения сифилиса. Тому кто эту дрянь выдумал нужно яйца оторвать. Желательно в месте с теми кто выдумал винду =)

Omega
03-09-2010, 20:05
Абсолютно несекурная кака легко эксплуатируемая для создания ботсетей и распространения сифилиса.
Тому кто эту дрянь выдумал нужно яйца оторвать. Желательно в месте с теми кто выдумал винду =)

+ 100500 :) В данных прошивках от энтузиастов исправлена проблема с port 0,
но остальные баги с "родной" upnp от Asus всё ещё ждут своего решения ... ;)

З.Ы. Лучше просто его отключать и использовать DMZ
для проверки проверки проверки проброса портов ... :cool:

sfstudio
03-09-2010, 20:25
но остальные баги с "родной" upnp от Asus всё ещё ждут своего решения ... ;)


А на кой вы его (всмысле родной) вообще в рот тяните? Послений miniupnpd работает прекрасно поддерживает лизы и прочие феньки. Хотя в любом случае в печь эти upnp.

Omega
03-09-2010, 20:43
А на кой вы его (всмысле родной) вообще в рот тяните? Послений miniupnpd работает
прекрасно поддерживает лизы и прочие феньки. Хотя в любом случае в печь эти upnp.

Ну это уже вопрос к нашим уважаемым девелоперам -~ lly и theMIROn ... ;)

З.Ы. Кстати, в дефолтных настройках и у меня также upnp отключен ... :)

sfstudio
03-09-2010, 20:55
Ну это уже вопрос к нашим уважаемым девелоперам -~ lly и theMIROn ... ;)

Хм. Я думал вы тоже принимаете участие... Я для риалтэков перековыривал их miniupnp потом плюнул и оставил его кусок необходимый демону auth для wifi и рядом впихнул свежий miniupnpd. Тем самым не потерял совместимость с бинарными блобами риалтэка и получил вполне работоспособную версию внутри.

С ралинками всё ещё проще ибо блобов нет.


З.Ы. Кстати, в дефолтных настройках и у меня также upnp отключен ... :)

Да я не о том абсолютно, то что по дефолту он должен быть отрублен это однозначно и не обсуждается.

Goblin-NN
04-09-2010, 12:52
что не нравится роутеру wl-500g Pv2? в логе пишет

Jan 1 03:00:06 route: add failed(22) 'Invalid argument': vlan1 dst 85.21.78.93 mask 10.21.8.1 gw 255.255.255.224 metric 4
Jan 1 03:00:06 route: add failed(22) 'Invalid argument': vlan1 dst 217.118.84.134 mask 10.21.8.1 gw 255.255.255.224 metric 4

прописано все правильно
http://i9.fastpic.ru/thumb/2010/0904/4f/cbce8fe9109dff355136a7678ad25c4f.jpeg (http://fastpic.ru/view/9/2010/0904/cbce8fe9109dff355136a7678ad25c4f.png.html)
прошивка сейчас стоит 1.9.2.7-d-r1986. что я неправильно сделал?

и еще давно хотел спросить. зачем проброс портов по UPnP запоминается? даже если выключить роутер потом включить - все равно. я понимаю если жестко прописаны, то нужно. а если не прописаны, то имхо запоминать не стоит.

theMIROn
04-09-2010, 13:33
Кривой и безполезный ;)
UPNP как бы это не только проброс портов, на минуточку.
Плюсом, вкину, не забывайте про apple'вский nat-pmp, который в разы проще.

smi
04-09-2010, 17:56
UPNP как бы это не только проброс портов, на минуточку. Именно, тем и опасен, защиты нет, но натворить можно много :(


Плюсом, вкину, не забывайте про apple'вский nat-pmp, который в разы проще. Не знаю, не смотрел, т.к. яблочные продукты, меня совершенно не интересуют :cool:

TReX
04-09-2010, 18:27
что не нравится роутеру wl-500g Pv2? в логе пишет

Jan 1 03:00:06 route: add failed(22) 'Invalid argument': vlan1 dst 85.21.78.93 mask 10.21.8.1 gw 255.255.255.224 metric 4
Jan 1 03:00:06 route: add failed(22) 'Invalid argument': vlan1 dst 217.118.84.134 mask 10.21.8.1 gw 255.255.255.224 metric 4

прошивка сейчас стоит 1.9.2.7-d-r1986. что я неправильно сделал?

и еще давно хотел спросить. зачем проброс портов по UPnP запоминается? даже если выключить роутер потом включить - все равно. я понимаю если жестко прописаны, то нужно. а если не прописаны, то имхо запоминать не стоит.

А зачем вам мануальные маршруты, если я правильно узнал провайдера, то вам достаточно тех маршрутов что будут полученны на автомате, просто отключите Enable static route. А не нравятся роутеру перепутанные поля при вводе... ( и зачем вам такие метрики, вы что решили альтернативные маршруты делать?)

Goblin-NN
04-09-2010, 19:03
А зачем вам мануальные маршруты, если я правильно узнал провайдера, то вам достаточно тех маршрутов что будут полученны на автомате, просто отключите Enable static route.
я не спрашиваю про "зачем". я спрашиваю "что не нравится роутеру".

А не нравятся роутеру перепутанные поля при вводе...
ничего не перепутано. картинка дана.

Parkinstein, хамам не отвечаю принципиально.

TReX
04-09-2010, 19:37
я не спрашиваю про "зачем". я спрашиваю "что не нравится роутеру".

ничего не перепутано. картинка дана.

Parkinstein, хамам не отвечаю принципиально.

dst 85.21.78.93 mask 10.21.8.1 gw 255.255.255.224 metric 4

ничего странного в этой строчке не видите? и на вашей картинке ничего с метрикой 4 извините нет...

Goblin-NN
04-09-2010, 19:43
dst 85.21.78.93 mask 10.21.8.1 gw 255.255.255.224 metric 4
ничего странного в этой строчке не видите?
вижу перепутано. должно быть так...
dst 85.21.78.93 mask 255.255.255.224 gw 10.21.8.1 metric 2

и на вашей картинке ничего с метрикой 4 извините нет...
потому и спрашиваю. я не прописывал ничего подобного. откуда взялось - не понятно.

theMIROn
04-09-2010, 19:48
вижу перепутано. должно быть так...
dst 85.21.78.93 mask 255.255.255.224 gw 10.21.8.1 metric 2

потому и спрашиваю. я не прописывал ничего подобного. откуда взялось - не понятно.

завтра давайте свяжемся, проверим, сделаем выводы.
контакты отправил в приват

EDIT: не разрешена отправка личных сообщений. нужен tcpdump дамп при получении маршрутов.

TReX
04-09-2010, 20:01
завтра давайте свяжемся, проверим, сделаем выводы.
контакты отправил в приват

EDIT: не разрешена отправка личных сообщений. нужен tcpdump дамп при получении маршрутов.

Кстати у товарища и второй вопрос был правильный -

и еще давно хотел спросить. зачем проброс портов по UPnP запоминается? даже если выключить роутер потом включить - все равно. я понимаю если жестко прописаны, то нужно. а если не прописаны, то имхо запоминать не стоит.

Действительно такой эффект наблюдается даже с последней прошивкой ветки RTN - 1986, таблица портфорворда забивается всякой ерундой которая давно уже не нужна -


ALL UDP 58797 192.168.1.х 58797
ALL UDP 56854 192.168.1.х 56854
ALL UDP 60800 192.168.1.х 60800
ALL UDP 53929 192.168.1.х 53929
ALL UDP 58118 192.168.1.х 58118
ALL UDP 60994 192.168.1.х 60994
ALL UDP 57903 192.168.1.х 57903

rss
04-09-2010, 20:21
Кстати у товарища и второй вопрос был правильный -

Действительно такой эффект наблюдается даже с последней прошивкой ветки RTN - 1986, таблица портфорворда забивается всякой ерундой которая давно уже не нужна -


Есть уверенность, что после перезагрузки маршрутизатора программа сразу же зарегистрирует порт? (два варианта выяснить - посмотреть как работает протокол или потереть при загрузке адреса)

Если не сможет вновь зарегистрировать (например до своего перезапуска), то имеет смысл сделать поле времени устаревания.

Vampik
04-09-2010, 21:36
После перезагрузки маршрутизатора программы, как правило, не регистрируют порт заново, поэтому проброс портов запоминается.

TReX
05-09-2010, 01:17
После перезагрузки маршрутизатора программы, как правило, не регистрируют порт заново, поэтому проброс портов запоминается.

Беда в том, что запоминается навсегда, до полного сброса модема... :(

lly
05-09-2010, 06:01
После перезагрузки маршрутизатора программы, как правило, не регистрируют порт заново, поэтому проброс портов запоминается.

Беда в том, что запоминается навсегда, до полного сброса модема... :(
Старая проблема. По стандарту у правил проброса есть время жизни, но старенький upnpd это не поддерживает. Нужно или допиливать его, или mini-upnpd, но желающих помочь пока не наблюдалось...

TReX
05-09-2010, 06:09
Старая проблема. По стандарту у правил проброса есть время жизни, но старенький upnpd это не поддерживает. Нужно или допиливать его, или mini-upnpd, но желающих помочь пока не наблюдалось...


Хм. Я думал вы тоже принимаете участие... Я для риалтэков перековыривал их miniupnp потом плюнул и оставил его кусок необходимый демону auth для wifi и рядом впихнул свежий miniupnpd. Тем самым не потерял совместимость с бинарными блобами риалтэка и получил вполне работоспособную версию внутри.


Может воспользоваться этими наработками?

AlexeyS
08-09-2010, 11:15
Старая проблема. По стандарту у правил проброса есть время жизни, но старенький upnpd это не поддерживает. Нужно или допиливать его, или mini-upnpd, но желающих помочь пока не наблюдалось...

miniupnp давно допилен, а вот c RC и веб-интерефейсом всё гораздо хуже...

lly
08-09-2010, 11:48
miniupnp давно допилен
Я про связку с драйвером wl. В Tomato от teddy_bear что-то по этому поводу сделано, но подробно я не смотрел.

AlexeyS
08-09-2010, 12:16
Я про связку с драйвером wl. В Tomato от teddy_bear что-то по этому поводу сделано, но подробно я не смотрел.

Насколько я понял, с этим и в родном upnp очень плохо, он попросту не отдает статистику интерфейсов, хотя вроде и должен...

TReX
17-09-2010, 13:49
А можно ли убрать лишние записи из таблицы Port Forwarding, которые туда напихал UPNP не сбрасывая конфигурацию на default и без уничтожения записей внесенных туда через Virtual Server?

dimez
17-09-2010, 13:55
А можно ли убрать лишние записи из таблицы Port Forwarding, которые туда напихал UPNP не сбрасывая конфигурацию на default и без уничтожения записей внесенных туда через Virtual Server?
Если ничего не изменилось, то можно так (http://www.wl500g.info/showthread.php?p=182979#post182979)
Покажи выхлоп nvram show|grep forward_port сначала.

TReX
17-09-2010, 16:04
Если ничего не изменилось, то можно так (http://www.wl500g.info/showthread.php?p=182979#post182979)
Покажи выхлоп nvram show|grep forward_port сначала.


[root]$ nvram show|grep forward_port
size: 20861 bytes (11907 left)
forward_port10=61339-61339>192.168.1.3:61339-61339,udp,on,Teredo
forward_port11=59361-59361>192.168.1.3:59361-59361,udp,on,Teredo
forward_port12=48813-48813>192.168.1.8:48813-48813,udp,on,Skype UDP at 192.168.1.8:48813 (1335)
forward_port13=48813-48813>192.168.1.8:48813-48813,tcp,on,Skype TCP at 192.168.1.8:48813 (1335)
forward_port0=65242-65242>192.168.1.3:65242-65242,udp,on,Teredo
forward_port1=47423-47423>192.168.1.2:47423-47423,udp,on,Skype UDP at 192.168.1.2:47423 (1333)
forward_port2=47423-47423>192.168.1.2:47423-47423,tcp,on,Skype TCP at 192.168.1.2:47423 (1333)
forward_port3=57903-57903>192.168.1.2:57903-57903,udp,on,Teredo
[root]$


Проверил, работает, а вот куда бы эти волшебные строчки при загрузке грамотнее запихать? )

AlexeyS
17-09-2010, 16:08
Прикручиваю тут для себя miniupnp демона, и мне становится всё страннее - зачем запускать демона upnp из start_services(), а потом убивать его и снова запускать из wan_up()? Насколько я понимаю - wan_up() вызывается при поднятии любого wan интерфейса, а сервисы запускаются раньше, когда ещё нет ни одного wan и собственно upnp не нужен, т.к. неоткуда пробрасывать порты...

dimez
17-09-2010, 17:56
[root]$ nvram show|grep forward_port
size: 20861 bytes (11907 left)
forward_port10=61339-61339>192.168.1.3:61339-61339,udp,on,Teredo
forward_port11=59361-59361>192.168.1.3:59361-59361,udp,on,Teredo
forward_port12=48813-48813>192.168.1.8:48813-48813,udp,on,Skype UDP at 192.168.1.8:48813 (1335)
forward_port13=48813-48813>192.168.1.8:48813-48813,tcp,on,Skype TCP at 192.168.1.8:48813 (1335)
forward_port0=65242-65242>192.168.1.3:65242-65242,udp,on,Teredo
forward_port1=47423-47423>192.168.1.2:47423-47423,udp,on,Skype UDP at 192.168.1.2:47423 (1333)
forward_port2=47423-47423>192.168.1.2:47423-47423,tcp,on,Skype TCP at 192.168.1.2:47423 (1333)
forward_port3=57903-57903>192.168.1.2:57903-57903,udp,on,Teredo
[root]$


Проверил, работает, а вот куда бы эти волшебные строчки при загрузке грамотнее запихать? )

Ты хочешь, чтобы при старте роутера не было правил uPnP чтоли?
Тогда надо какое-то более элегантное решение, потому-что моё - это одноразовый костылик.

lly
17-09-2010, 19:10
Прикручиваю тут для себя miniupnp демона, и мне становится всё страннее - зачем запускать демона upnp из start_services(), а потом убивать его и снова запускать из wan_up()? Насколько я понимаю - wan_up() вызывается при поднятии любого wan интерфейса, а сервисы запускаются раньше, когда ещё нет ни одного wan и собственно upnp не нужен, т.к. неоткуда пробрасывать порты...
upnp еще занимается переговорами с виндами...

TReX
17-09-2010, 20:08
Ты хочешь, чтобы при старте роутера не было правил uPnP чтоли?
Тогда надо какое-то более элегантное решение, потому-что моё - это одноразовый костылик.

Кривоватое конечно решение, но у меня кроме Skype и Teredo никто пробросом портов UPNP не пользуется. Teredo сразу при убивании создает соединение заново, так что можно при каждой перезагрузке чистить )

AlexeyS
18-09-2010, 09:11
upnp еще занимается переговорами с виндами...

Понятно, тогда наверное лучше, не убивать демона в wan_up/wan_down, а лишь оповещать его о событии... А вообще, и miniupnpd написан криво, слишком много допущений - шаг в сторону - и мы наткнулись на кривость алгоритма (((

lly
18-09-2010, 09:50
Понятно, тогда наверное лучше, не убивать демона в wan_up/wan_down, а лишь оповещать его о событии...
В идеале - ты прав. Практически, надо ковыряться в upnpd, чтобы понять, насколько корректно он обрабатывает сигналы. В этих местах почти везде оставлен оригинальный асусовский код.

TReX
22-09-2010, 08:44
Из того что запланировано:

возвращаем tcpdump
samba 3.0
mini-dlna/ushare - у кого есть серьёзные аргументы за/против, просьба высказываться
наверное mini-upnp


Первый пункт, и второй просто без коментариев, DLNA, неплохая игрушка IMHO, но пока не более, mini UPNP - на домашней железке, вещь необходимая, снимет кучу вопросов у чайников

Может крамольная мысль, но, не добавить ли Midnight Commander? Понимаю что ставится из репозитария за секунду, но ведь 90% его ставят )))

AlexeyS
22-09-2010, 10:07
Из того что запланировано:

возвращаем tcpdump
samba 3.0
mini-dlna/ushare - у кого есть серьёзные аргументы за/против, просьба высказываться
возможно OpenVPN
наверное mini-upnp


tcpdump - очень полезно, для себя всегда собираю с ним...
mini-upnp - можно будет применить мои наработки. Ещё бы веб интерфейс под него допилить. или кто бы допилил, а то много функциональности mini-upnp не конфигурируется.

theMIROn
22-09-2010, 14:30
tcpdump - очень полезно, для себя всегда собираю с ним...
mini-upnp - можно будет применить мои наработки. Ещё бы веб интерфейс под него допилить. или кто бы допилил, а то много функциональности mini-upnp не конфигурируется.

у него нет ни одного фактического плюса перед броадкомовским upnp, за исключением nat-pmp. зачем?

TReX
23-09-2010, 00:20
у него нет ни одного фактического плюса перед броадкомовским upnp, за исключением nat-pmp. зачем?

Нынешняя реализация UPNP весьма далека от совершенства, например вот эта тема http://wl500g.info/showthread.php?t=24781, или обсуждавшееся здесь замусоривание таблицы Port Forwarding после перезагрузки мертвыми UPNP соединениями...

AlexeyS
23-09-2010, 08:31
Нынешняя реализация UPNP весьма далека от совершенства, например вот эта тема http://wl500g.info/showthread.php?t=24781, или обсуждавшееся здесь замусоривание таблицы Port Forwarding после перезагрузки мертвыми UPNP соединениями...

Или как в других проектах, можно сделать отдельные ветки прошивок ;-)

lly
23-09-2010, 09:30
Или как в других проектах, можно сделать отдельные ветки прошивок ;-)
Их и так уже две поддерживаемых, не считая тулчейна. У нас на всё рук не хватает...

AlexeyS
23-09-2010, 09:36
Их и так уже две поддерживаемых, не считая тулчейна. У нас на всё рук не хватает...

Собственно, можно добавить miniupnp в основную ветку, но не включать его в конфигурации по-умолчанию. Кто захочет - сам включит. А по-умолчанию, оставить стандартный upnp.
Кстати, я вот задался вопросом - можно ли прописать конфигурацию так, чтобы конфигуратор понимал, что опции взаимоисключающие?

TReX
25-09-2010, 00:48
Они проблемы не скоро решат.. т.е. не в один-два дня/недель.
Меня раздражает у них, например - что IP иногда 88.x.x.x , а иногда 2.x.x.x... Реально запипирило!! Когда на 2 - не могу попасть на Казанские ресурсы..

Советую для релаксации пожить месячишку на ADSL провайдере, после этого сразу забудете про все "проблемы"))

С локальными ресурсами у Пчелайна это большей частью кривизна нынешней реализации UPNP в прошивке, сейчас попробовал на Реалтеке, там miniupnp, DC сразу все определил без бубна и два дня летал, другое дело, на 16мегабитах L2TP он уже погибает, ну и предназначен он для ADSL ))

LnrMn
25-09-2010, 08:13
Советую для релаксации пожить месячишку на ADSL провайдере, после этого сразу забудете про все "проблемы"))

С локальными ресурсами у Пчелайна это большей частью кривизна нынешней реализации UPNP в прошивке, сейчас попробовал на Реалтеке, там miniupnp, DC сразу все определил без бубна и два дня летал, другое дело, на 16мегабитах L2TP он уже погибает, ну и предназначен он для ADSL ))

Кривизна пчелайна в пиринге с нашими другими провайдерами. никак подружиться не могут.

AlexeyS
30-09-2010, 08:21
Очередная версия патча, для добавления miniupnp в прошивку:
7112
1. Распаковать
2. Поместить в папку miniupnpd архив исходников miniupnpd-1.4.20100921 (http://miniupnp.free.fr/files/download.php?file=miniupnpd-1.4.20100921.tar.gz)
3. В скрипте prepare установить переменную SRC в соответствии с путем к копии SVN прошивки.
4. Для включения miniupnp в файл прошивки - make menuconfig или редактируем .config файл, включая miniupnpd и выключая (обязвтельно!) upnp

TReX
30-09-2010, 09:19
Ключевая фраза "у меня", плюс не у всех девайсов nvram 64k.

Если NVRAM так стоит экономить, то может и miniupnp прикрутить, вместо этого кошмара родного который тот же NVRAM забивает давно умершими пробросами? (99 пар пробросов явно больше одного ключа ))

AlexeyS
30-09-2010, 09:26
Если NVRAM так стоит экономить, то может и miniupnp прикрутить, вместо этого кошмара родного который тот же NVRAM забивает давно умершими пробросами?

Я так понимаю, что быстрее каждый сам себе прикрутит, если оно ему нужно... Мои наработки смотри выше.

TReX
30-09-2010, 09:35
Я так понимаю, что быстрее каждый сам себе прикрутит, если оно ему нужно... Мои наработки смотри выше.

Ага, напомнило ситуацию с Acorp. Написал разработчику что NTP не синхронизуется по времени (например раз в три часа), мне предложили самому его к cron прикрутить, прикрутил, дай думаю переход на летнее время проверю - не работает, похоже еще что-нибудь, куда-нибудь прикручивать придется :D Неблагодарная это работа докручивать когда не знаешь внутреней логики работы устройства, тем более иногда такие завязки дикие бывают, на какой-нибудь старый костыль без которого может черти чего полететь...

lly
30-09-2010, 09:43
Я так понимаю, что быстрее каждый сам себе прикрутит, если оно ему нужно... Мои наработки смотри выше.
Мне проверять upnp не на чем - ни винды, ни торрентов, ни обгрызенного яблока. А Владу не до этого, плюс смотри его замечания по mini-upnp в этой ветке.

TReX
30-09-2010, 09:48
Мне проверять upnp не на чем - ни винды, ни торрентов, ни обгрызенного яблока. А Владу не до этого, плюс смотри его замечания по mini-upnp в этой ветке.

С удовольствием помогу с тестированием как минимум торрентом, скайпом, DC++, eMule, t на RT-N16 (2008R2 и W7), если в меня покидать тестовыми сборками ) Да я думаю и AlexeyS поддержит )

AlexeyS
30-09-2010, 09:51
Мне проверять upnp не на чем - ни винды, ни торрентов, ни обгрызенного яблока. А Владу не до этого, плюс смотри его замечания по mini-upnp в этой ветке.

Я ничего, всё что мог сам - оттестировал, много недочетов подправил, остальное может общественность протестирует...

TReX
30-09-2010, 09:55
Я ничего, всё что мог сам - оттестировал, много недочетов подправил, остальное может общественность протестирует...

Можно еще sfstudio насчет патчиков для miniupnp поспрашивать, его реализация крутится очень стабильно (на Укропе)), на моем наборе софта никаких претензий к miniupnp нет )

lly
30-09-2010, 09:59
Я ничего, всё что мог сам - оттестировал, много недочетов подправил, остальное может общественность протестирует...
К тебе никаких претензий, наоборот - спасибо за труд!

Итого - собираем кворум по mini-upnp (неаргументированные вопли не принимаются)

AlexeyS
30-09-2010, 10:00
Вроде у sfstudio я патчей к miniupnp не видел, а вот из tomato кое-что выдернул, и от себя много чего добавил. Какую прошивку и под какое устройство собрать для тестов?

TReX
30-09-2010, 10:05
Вроде у sfstudio я патчей к miniupnp не видел, а вот из tomato кое-что выдернул, и от себя много чего добавил. Какую прошивку и под какое устройство собрать для тестов?

На Пчелайне у меня RT-N16, соответственно )

theMIROn
30-09-2010, 10:36
Мне проверять upnp не на чем - ни винды, ни торрентов, ни обгрызенного яблока. А Владу не до этого, плюс смотри его замечания по mini-upnp в этой ветке.

Лёня, не обманывай :) есть же miniupnpc, как минимум.
лично я не против выкинуть bcm's upnp и заменить его на miniupnpd, для этого нужно четко понимать следующие вещи:
1. разница в размерах и объемах занимаемой памяти (не смотрел)
2. разница в стабильности работы (upnp стабилен)
3. разница в анонсах и представлении по upnp/ssdp
4. поддерживаемые типы подключений (ethernet, ppp, 802.16, tun/tap)
5. разница в интеграции в iptables и возможные плюсы/минусы в этом
6. разница в поддерживаемых стандартах
7. возможности конфигурирования и защиты (см. мой предыдущий пост на эту тему)

протестил кто бы эти все дела, воткнуть то недолго, была бы реальная польза. то же сохранение в nvram пробросов, вроде и не хорошо, а вроде и полезно при перезагрузках.

lly
30-09-2010, 10:42
Лёня, не обманывай :) есть же miniupnpc, как минимум.
Для этого в нем надо еще разобраться ;) а неохота.

протестил кто бы эти все дела, воткнуть то недолго, была бы реальная польза. то же сохранение в nvram пробросов, вроде и не хорошо, а вроде и полезно при перезагрузках.
К твоим пунктам и добавить то нечего - всё правильно. Сохранение в nvram пробросов хорошо только при жёстком ограничении времени их жизни.

TReX
30-09-2010, 10:46
то же сохранение в nvram пробросов, вроде и не хорошо, а вроде и полезно при перезагрузках.

Обычно за время перезагрузки программа уже дропает соединение )

AlexeyS
30-09-2010, 10:54
лично я не против выкинуть bcm's upnp и заменить его на miniupnpd, для этого нужно четко понимать следующие вещи:


Дык, и пусть желающие потестируют и наступят на грабли... если они есть, а дальше действовать исходя из вида граблей...
От себя скажу: по пункту 2 - у себя падений ни разу не замечал; по 4 пункту - что подсунут, то и переварит, ибо работает только с iptables, а интерфейсы использует только для посылки информации о них клиентам, данные берет из /proc/net/dev

P.S. ксати, как выяснилось, miniupnpc - плохой помощник в тестировании, он работает всегда... в то время, как другие программы не могли совершить проброс из-за emf

TReX
30-09-2010, 11:15
Дык, и пусть желающие потестируют и наступят на грабли... если они есть, а дальше действовать исходя из вида граблей...


Я все понял,сетевое железо покупают мазохисты, сначала все сырое и не работает, к моменту когда после титанического труда разработчиков и тестеров все становится хорошо, выходит новая железка и все повторяется :D

AlexeyS
30-09-2010, 11:21
На Пчелайне у меня RT-N16, соответственно )

Вот, собрал: http://files.mail.ru/R3DNAO
Тестируй на здоровье :D

TReX
30-09-2010, 11:33
Вот, собрал: http://files.mail.ru/R3DNAO
Тестируй на здоровье :D

Ок, спасибо, залито, пошел мучать ) Эмм, еще если бы можно было обновлять эту сборочку например как на ftp://core.dumped.ru/rt-n (если не сложно конечно )

Vampik
30-09-2010, 11:57
Обычно за время перезагрузки программа уже дропает соединение )

Есть программы, которые создают проброс порта при своем запуске и удаляют при закрытии программы, и обрыв соединения их не волнует.

theMIROn
30-09-2010, 11:59
Дык, и пусть желающие потестируют и наступят на грабли... если они есть, а дальше действовать исходя из вида граблей...
От себя скажу: по пункту 2 - у себя падений ни разу не замечал; по 4 пункту - что подсунут, то и переварит, ибо работает только с iptables, а интерфейсы использует только для посылки информации о них клиентам, данные берет из /proc/net/dev

P.S. ксати, как выяснилось, miniupnpc - плохой помощник в тестировании, он работает всегда... в то время, как другие программы не могли совершить проброс из-за emf

miniupnpc еще и использует nat-pmp, если ssdp не вышло, ничего удивительного.
п.4 всмысле? я имел ввиду корректное отображение типа для клиента, скорости, посланных/принятых байт/пакетов.

p.s предварительно залил в транк с корректным выбором, см. r2170/2171

AlexeyS
30-09-2010, 12:05
miniupnpc еще и использует nat-pmp, если ssdp не вышло, ничего удивительного.
п.4 всмысле? я имел ввиду корректное отображение типа для клиента, скорости, посланных/принятых байт/пакетов.

Корректного отображения нет и в стандартном upnp... точнее, там вообще по-моему, эта часть не функционирует. В miniupnp, число принятых/переданных байт, аптайм отображается верно. Скорость - в этом месте чушь, но я так и не нашёл, как же получить корректную скорость интерфейса, если учесть, что в качестве wan у нас vlan... А так вроде всё остальное - достаточно корректно.

AlexeyS
30-09-2010, 12:12
p.s предварительно залил в транк с корректным выбором, см. r2170/2171

Ты забыл залить ещё патч для самого miniupnp, а также rc :(

theMIROn
30-09-2010, 12:16
Ты забыл залить ещё патч для самого miniupnp, а также rc :(

нет, не забыл. в таким виде они не подходят и требуют дополнительного анализа.

TReX
30-09-2010, 12:17
Есть программы, которые создают проброс порта при своем запуске и удаляют при закрытии программы, и обрыв соединения их не волнует.

А нельзя ли что-нибудь из такого безобразия для примера, сейчас как раз miniupnp мучаю, для тестов полезно будет, то же teredo например создает по новой если по таймауту не достучался...

Vampik
30-09-2010, 12:26
А нельзя ли что-нибудь из такого безобразия для примера, сейчас как раз miniupnp мучаю, для тестов полезно будет, то же teredo например создает по новой если по таймауту не достучался...

У меня transmission не обновляет.

AlexeyS
30-09-2010, 12:28
нет, не забыл. в таким виде они не подходят и требуют дополнительного анализа.

Выбрасывать патчи на сам miniupnp не советую, а то слишком там в оригинале на авось полагаются...

theMIROn
30-09-2010, 13:10
Выбрасывать патчи на сам miniupnp не советую, а то слишком там в оригинале на авось полагаются...

ярость афтора понятна, однако preliminary != final
и, если быть внимательным, то увидишь, что miniupnpd не собирается вообще никак

AlexeyS
30-09-2010, 13:18
ярость афтора понятна, однако preliminary != final
и, если быть внимательным, то увидишь, что miniupnpd не собирается вообще никак

Я вижу, просто предупреждаю про засаду в miniupnp (, автору miniupnp я уже отписал, но примет ли он к сведению... В остальном, если улучшишь - я только за :)

TReX
01-10-2010, 11:05
lly
theMIROn
AlexeyS


Как и обещал - Oтчет о тестировании UPNP и miniupnp

Тестирование проводилось на версиях - ftp://core.dumped.ru/rt-n/2169/RT-N16-1.9.2.7-rtn-r2169.trx.gz (в дальнейшем UPNP)
и
http://files.mail.ru/R3DNAO билд rtn-r2169 с miniupnp и его фиксами от AlexeyS (в дальнейшем miniupnp)

Используемые OS -
1. Windows Server 2008R2 (только uTorrent)
2. Windows 7 Ultimate
3. Windows XP SP3

Всего проверенна работа более 50 программ и нескольких аппаратных решений, затраченно более 12 часов и 50 грамм коньяка для снятия стресса после тестирования )

Проверенные програмные и аппаратные решения

1. uTorrent, BitTorrent, BitComet, BitSpirit, etc...
UPNP - замечаний нет
miniupnp - замечаний нет

2. eMule и его клоны
UPNP - замечаний нет
miniupnp - замечаний нет

3. Skype и остальные мессенджеры (проверялся режим видео/аудио чата и передачи файлов)
UPNP - замечаний нет
miniupnp - замечаний нет

4. DC клиенты
UPNP - не работает (описание проблемы есть на нашем форуме)
miniupnp - замечаний нет, подключение, поиск на сервере все работает

5. Аппаратные VOIP телефоны и мосты - SPA3102, Siemens C470IP etc...
UPNP - проблемы с открытием портов (например у C470IP забывает открыть порт для второго звонка) ZyXEL P-2300RDL EE (без проброса ручками вообще не полетел)
P.S. таки удалось запустить Зайкселя с треском с UPNP, эта зараза не хотела оказывается автообновление делать, после запихивания фирмваре насильно, ожил, и даже позволил номер набрать )
miniupnp - замечаний нет

6. teredo
UPNP - замечаний нет
miniupnp - замечаний нет

7. Интернет радио (Philips NP2900)
UPNP - наблюдалось переодическое "залипание" меню
miniupnp - замечаний нет

8. Internet webcam
UPNP - камера Panasonic BL-C131 - переодически "теряет" проброс
miniupnp - замечаний нет

P.S. С проверенными программами мне не удалось обнаружить тех которым помогло бы сохранение пробросов в NVRAM, при перезагрузке роутера, они либо в любом случае теряют соединение (большинство мессенджеров), либо корректно перезапрашивают проброс после перезагрузки роутера (большинство качалок) - поэтому предлагается добавить опцию в интерфейс "включение сохранения портов UPNP в NVRAM" (для включения совместимости с transmission)

P.P.S Закончил тестирование на вынос крыши miniupnp, каждые три секунды просил у него случайный порт выше 7 тысяч потом отпускал и так 11 часов ) Резюме - не сдох таки гад, бодро так сейчас скайпу дал новый портик :D (Это я надеялся утечку памяти найти, если она есть, может и неправ, но другого ничего в голову не пришло))

Fr3nzy
01-10-2010, 16:23
Как и обещал - Oтчет о тестировании UPNP и miniupnp


А в ночных билдах на ядре 2.6 для WL- когда можно будет увидеть miniupnp?

TReX
01-10-2010, 17:14
А в ночных билдах на ядре 2.6 для WL- когда можно будет увидеть miniupnp?

Это когда наши уважаемые разработчики lly и theMIROn проверят и решат что можно влючить в текущую ветку

lly
01-10-2010, 17:45
Как и обещал - Oтчет о тестировании UPNP и miniupnp
Большое спасибо за тесты, обязательно примем к сведению. По крайней мере, mini-upnp выступил не хуже upnp :)

Было бы замечательно еще прояснить несколько пунктов из письма Влада:


лично я не против выкинуть bcm's upnp и заменить его на miniupnpd, для этого нужно четко понимать следующие вещи:
1. разница в размерах и объемах занимаемой памяти (не смотрел)
4. поддерживаемые типы подключений (ethernet, ppp, 802.16, tun/tap)
5. разница в интеграции в iptables и возможные плюсы/минусы в этом
6. разница в поддерживаемых стандартах
7. возможности конфигурирования и защиты (см. мой предыдущий пост на эту тему)
Ну и конечно, надо просмотреть патчи AlexeyS...

TReX
01-10-2010, 17:52
Большое спасибо за тесты, обязательно примем к сведению. По крайней мере, mini-upnp выступил не хуже upnp :)

Было бы замечательно еще прояснить несколько пунктов из письма Влада:

Ну и конечно, надо просмотреть патчи AlexeyS...

Лучше, поскольку роутер все-таки "DUAL-WAN" ;). а кривая работа встроенного UPNP критична для многих любителей DC и его клонов, так как настоить его без плясок с бубном на работу через локальную сеть не удается )

djnik
27-03-2011, 11:18
Что то на прошивках rtn-r2775 - rtn-r2857 ншайпер у меня стал вываливать ошибку:
iptables v1.4.9: unknown option `--todev'
Try `iptables -h' or 'iptables --help' for more information.

Кто может помочь советом?

vvsvic
28-03-2011, 08:32
Что то на прошивках rtn-r2775 - rtn-r2857 ншайпер у меня стал вываливать ошибку:
iptables v1.4.9: unknown option `--todev'
Try `iptables -h' or 'iptables --help' for more information.

Кто может помочь советом?
У меня было такое же после установки miniupnp.
Попробуйте в скрипте шейпера указать полный путь до iptables из прошивки - /usr/sbin/iptables

djnik
28-03-2011, 17:31
У меня было такое же после установки miniupnp.
Попробуйте в скрипте шейпера указать полный путь до iptables из прошивки - /usr/sbin/iptables

vvsvic - спасибо, после явного указания TC=/usr/sbin/tc и IPTABLES=/usr/sbin/iptables все отрабатывает без проблем.

AlexeyS
28-03-2011, 20:54
Очередной патч для добавления текущей версии miniupnpd в прошивку:

7862

vvsvic
29-03-2011, 09:26
Очередной патч для добавления текущей версии miniupnpd в прошивку:
7862
А как вы обошли зависимость miniupnpd от iptables v1.4.9?
У меня на wl500g-1.9.2.7-d-r2624 потребовалось установить iptables из репозитария, что привело к проблеме, описанной в http://wl500g.info/showpost.php?p=228239&postcount=758

AlexeyS
29-03-2011, 09:45
А как вы обошли зависимость miniupnpd от iptables v1.4.9?


Я эти зависимости обхожу просто - я не ставлю из репозитария, а просто встраиваю miniupnpd в прошивку, соответственно он собирается для встроенной iptables, в принципе, могу дать отдельный бинарник под вашу прошивку или собрать вам её со встроенным miniupnp

vvsvic
29-03-2011, 09:59
AlexeyS
Спасибо, бинарнику был бы очень рад.

AlexeyS
29-03-2011, 10:45
AlexeyS
Спасибо, бинарнику был бы очень рад.

Бери тут: http://alxdm.dyndns-at-work.com:808/files/wl-d-miniupnpd-1.5.20110309.gz

Не забудь снести IPTABLES из optware.

vvsvic
29-03-2011, 15:17
Бери тут: http://alxdm.dyndns-at-work.com:808/files/wl-d-miniupnpd-1.5.20110309.gz

Не забудь снести IPTABLES из optware.
Спасибо. Буду пробовать.

AlexeyS
20-05-2011, 08:12
Спасибо, что наконец-то добавили поддержку miniupnpd в прошивку! Но хочу обратить внимание, что во первых вчера выложили новую версию miniupnpd: http://miniupnp.tuxfamily.org/files/download.php?file=miniupnpd-1.5.20110519.tar.gz
А во вторых, тут http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=764 предлагают интересный набор патчей к miniupnp...

Жаль, что патчи RC сырые ещё, даже UUID не генерится...

lly
20-05-2011, 08:26
Спасибо, что наконец-то добавили поддержку miniupnpd в прошивку!
Не до конца, осталось:

генерация uuid, serial как в upnp
сохранение правил/leases в nvram



Но хочу обратить внимание, что во первых вчера выложили новую версию miniupnpd: miniupnpd-1.5.20110519 (http://miniupnp.tuxfamily.org/files/download.php?file=miniupnpd-1.5.20110519.tar.gz)
Пока рано, по отзывам 1.5.20110309 стабильнее, да и полная поддержка IPv6 в miniupnpd пока IMHO не актуальна.

А во вторых, тут http://miniupnp.tuxfamily.org/forum/viewtopic.php?t=764 предлагают интересный набор патчей к miniupnp...

Спасибо за ссылку, интересные фичи, но я бы подождал пока это будет в upstream'е т.к. полноценно их(патчи) протестировать не могу.

AlexeyS
20-05-2011, 08:40
Не до конца, осталось:

генерация uuid, serial как в upnp
сохранение правил/leases в nvram


Ну, как в UPNP не обязательно, главное, чтобы уникально...
А вот второе, по моему мнению, даже вредно: после перезагрузки роутера - обычно и не нужно, а в процессе работы - есть lease file.
Кстати, ещё бы не килять каждый раз демон, а заставить переписывать правила заново по сигналу из файла :rolleyes: (была у меня такая мысля, но так и не реализовал)... Да и upnp_forward_chain равная upnp_nat_chain не очень хорошая идея ((( - первоначально в демоне была ошибка, которая проявлялась, когда это правило не выполнялась, но сейчас её, с моей подачи, исправили...

lly
20-05-2011, 08:49
Ну, как в UPNP не обязательно, главное, чтобы уникально...
Предложенная генерация uuid на основе /dev/urandom не годиться для роутера. В upnp uuid делается из mac-адреса LAN интерфейса, why not?

serial number в upnp игнорируется, в miniupnp он по умолчанию "00000000" - стоит ли менять?


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

Кстати, ещё бы не килять каждый раз демон, а заставить переписывать правила заново по сигналу из файла :rolleyes: (была у меня такая мысля, но так и не реализовал)...
Ты имеешь в виду перечитывание leases файла по какому-либо сигналу? Для каких целей?
Сделано teddy_bear в TomatoUSB по SIGUSR2

AlexeyS
20-05-2011, 09:04
serial number в upnp игнорируется, в miniupnp он по умолчанию "00000000" - стоит ли менять?

тут без понятия (



Давай тогда это обсудим - theMIROn предлагает реализовать эту фичу. Меня смущает только проверка протухших правил в случае если синхронизация времени еще не прошла.

Протухшесть правил можно проверять, только если синхронизация прошла (смотри коррекцию времени uptime в демоне)



Ты имеешь в виду перечитывание leases файла по какому-либо сигналу? Для каких целей?
Сделано teddy_bear в TomatoUSB по SIGUSR2

У teddy_bear видел, но у него не совсем, то... я имел в виду, чтобы после перезапуска интерфейса, правила возвращались назад, а очередь событий UPNP не сбрасывалась (как сейчас происходит при перезапуске демона), а продолжала функционировать и разослала бы всем подписчикам уведомление об этом событии... но поскольку у меня интерфейс static, то идея так и осталась идеей...

theMIROn
20-05-2011, 10:47
Предложенная генерация uuid на основе /dev/urandom не годиться для роутера. В upnp uuid делается из mac-адреса LAN интерфейса, why not?Мне лень было вчера тащить этот код из upnp в rc, но - стоит.


serial number в upnp игнорируется, в miniupnp он по умолчанию "00000000" - стоит ли менять?Не стоит.


Давай тогда это обсудим - theMIROn предлагает реализовать эту фичу. Меня смущает только проверка протухших правил в случае если синхронизация времени еще не прошла.
Ненене, я о другом говорил.
Сохранение правил в nvram нужно было чтобы внутрях start_firewall_* эти правила прописались заново, более незачем. Как побочный эффект - после перезагрузки оно оставалось живым, не учитывая протухание.


Ты имеешь в виду перечитывание leases файла по какому-либо сигналу? Для каких целей?
Сделано teddy_bear в TomatoUSB по SIGUSR2Да, я тоже об этом думал, поможет после пересоздания iptables заново всосать старые правила да еще и с проверкой, в miniupnpd все для этого готово.

Однако, сейчас upnp перезапускается и с существующим lease файлом происходит то же самое, пусть и чуть попозже.

theMIROn
20-05-2011, 10:50
У teddy_bear видел, но у него не совсем, то... я имел в виду, чтобы после перезапуска интерфейса, правила возвращались назад, а очередь событий UPNP не сбрасывалась (как сейчас происходит при перезапуске демона), а продолжала функционировать и разослала бы всем подписчикам уведомление об этом событии... но поскольку у меня интерфейс static, то идея так и осталась идеей...

Я тоже не видел, подозревая что там по SIGUSR2 выставляется флаг, по которому в главном цикле просто вызывается reload_from_lease_file()

lly
20-05-2011, 11:36
Мне лень было вчера тащить этот код из upnp в rc, но - стоит.
Вечером постараюсь залить.


Ненене, я о другом говорил.
Сохранение правил в nvram нужно было чтобы внутрях start_firewall_* эти правила прописались заново, более незачем. Как побочный эффект - после перезагрузки оно оставалось живым, не учитывая протухание.
Ну так код в start_firewall_* тоже неспроста возник.


Я тоже не видел, подозревая что там по SIGUSR2 выставляется флаг, по которому в главном цикле просто вызывается reload_from_lease_file()
Именно - см. tomato_load(), tomato_save().

AlexeyS
20-05-2011, 11:52
Вечером постараюсь залить.
Ну так код в start_firewall_* тоже неспроста возник.

Дык, чтобы при перезапуске UPNP проброс не терялся....



Именно - см. tomato_load(), tomato_save().


Они lease file не используют... видать у них так до появления этой функциональности в демоне сложилось

theMIROn
20-05-2011, 13:44
Именно - см. tomato_load(), tomato_save().
посмотрел. жуть =)
все гораздо проще можно было и нужно сделать.
зачем нужен USR2 если на USR1 висит нотиф о смене адреса. этот обработчик и заиспользовать, иначе придется пинать сначала SIGUSR2 потом 1й...

theMIROn
20-05-2011, 21:58
r3015

[RT-N] switch to miniupnpd. bugreports are welcome
p.s оно все так же пока перезапускается stop/start

TReX
21-05-2011, 08:33
r3015

p.s оно все так же пока перезапускается stop/start

Это у нас теперь miniupnp штатно в прошивке включен??

TReX
30-05-2011, 16:18
Наконец то девайс RT-N16 (1.9.2.7-rtn-r3058) начал корректно распознаваться как UPNP устройство:


+-+ [ASUSTek Wireless Router] (Device)
| | Description: WL500g Router
| | DeviceType: urn:schemas-upnp-org:device:InternetGatewayDevice:1
| | FriendlyName: ASUS Wireless Router
| | ModelURL: http://wl500g.googlecode.com/
| | ManufacturerUrl: http://www.asus.com/
| | Manufacturer: ASUSTek
| | SerialNumber: 00000000
| | ModelNumber: RT-N16
| | ModelName: Wireless Router
| | UDN: uuid:0022142b-aa57-0022-142b-aa5700000000
| | PresentationUrl: http://192.168.1.1/
| |
| +-+ [WANDevice] (Device)
| | | Description: WAN Device
| | | DeviceType: urn:schemas-upnp-org:device:WANDevice:1
| | | FriendlyName: WANDevice
| | | ModelURL: http://miniupnp.free.fr/
| | | ManufacturerUrl: http://miniupnp.free.fr/
| | | UPC: MINIUPNPD
| | | Manufacturer: MiniUPnP
| | | SerialNumber: 00000000
| | | ModelNumber: 20110529
| | | ModelName: WAN Device
| | | UDN: uuid:0022142b-aa57-0022-142b-aa5700000000
| | |
| | +-+ [WANConnectionDevice] (Device)
| | | | Description: MiniUPnP daemon
| | | | DeviceType: urn:schemas-upnp-org:device:WANConnectionDevice:1
| | | | FriendlyName: WANConnectionDevice
| | | | ModelURL: http://miniupnp.free.fr/
| | | | ManufacturerUrl: http://miniupnp.free.fr/
| | | | UPC: MINIUPNPD
| | | | Manufacturer: MiniUPnP
| | | | SerialNumber: 00000000
| | | | ModelNumber: 20110529
| | | | ModelName: MiniUPnPd
| | | | UDN: uuid:0022142b-aa57-0022-142b-aa5700000000
| | | |
| | | +-+ [WANIPConnection] (Service)
| | | | | PortMappingNumberOfEntries: 4
| | | | | ExternalIPAddress: 95.31.62.53
| | | | | ConnectionStatus: Connected
| | | | | PossibleConnectionTypes: IP_Routed
| | |
| | +-+ [WANCommonInterfaceConfig] (Service)
| | | | PhysicalLinkStatus: Up
| |
| +-+ [Layer3Forwarding] (Service)
| | | DefaultConnectionService: uuid:0022142b-aa57-0022-142b-aa5700000000:WANConnectionDevice:1,urn:upnp-org:serviceId:WANIPConn1
|

при этом корректно кричит в локалку свой текущий внешний адрес:


30.05.2011 18:14:02 - NAT external IP address: 95.31.62.53
30.05.2011 18:14:35 - NAT external IP address: 95.31.62.53
30.05.2011 18:15:45 - NAT external IP address: 95.31.62.53
30.05.2011 18:16:20 - NAT external IP address: 95.31.62.53
30.05.2011 18:16:22 - NAT external IP address: 95.31.62.53
30.05.2011 18:16:54 - NAT external IP address: 95.31.62.53
30.05.2011 18:17:29 - NAT external IP address: 95.31.62.53
30.05.2011 18:18:04 - NAT external IP address: 95.31.62.53
30.05.2011 18:18:40 - NAT external IP address: 95.31.62.53
30.05.2011 18:18:41 - NAT external IP address: 95.31.62.53
30.05.2011 18:19:19 - NAT external IP address: 95.31.62.53
30.05.2011 18:20:02 - NAT external IP address: 95.31.62.53
30.05.2011 18:20:44 - NAT external IP address: 95.31.62.53


Перезагрузка роутера:


30.05.2011 18:30:12 - Device removed: ASUSTek Wireless Router [uuid:0022142b-aa57-0022-142b-aa5700000000]
30.05.2011 18:30:46 - Device added: ASUSTek Wireless Router [uuid:0022142b-aa57-0022-142b-aa5700000000]
30.05.2011 18:30:46 - Device external IP address: 95.31.61.25


С версии 3061 перестал кричать в локалку свой внешний адрес

lly
30-05-2011, 18:49
С версии 3061 перестал кричать в локалку свой внешний адрес
Я слабо представляю как правки в igmpproxy и busybox(fuser, dhcp6c) могли повлиять на поведение miniupnpd. Думаю, что тут завязано что-то еще, но информации маловато.

P.S. Если знаешь какую-либо тулзу проверки под линух - скажи.

TReX
30-05-2011, 18:59
Я слабо представляю как правки в igmpproxy и busybox(fuser, dhcp6c) могли повлиять на поведение miniupnpd. Думаю, что тут завязано что-то еще, но информации маловато.

P.S. Если знаешь какую-либо тулзу проверки под линух - скажи.

Я если честно не совсем представляю это только по запросу идет или роутер сам переодически сообщает ))


30.05.2011 20:31:52 - NAT external IP address: 95.31.53.29
30.05.2011 20:35:42 - NAT external IP address: 95.31.53.29
30.05.2011 20:36:21 - NAT external IP address: 95.31.53.29

VicSer
31-05-2011, 10:39
Обновился сегодня до 3061. MiniUPnP пытается грузиться (флудит в лог, что не может найти цепочку UPNP) даже при выставленном в вебе Enable UPnP в "No". После присвоения natpmp_enable значения 0 - более не стартует. :)

theMIROn
31-05-2011, 11:05
Обновился сегодня до 3061. MiniUPnP пытается грузиться (флудит в лог, что не может найти цепочку UPNP) даже при выставленном в вебе Enable UPnP в "No". После присвоения natpmp_enable значения 0 - более не стартует. :)

мде... о таком раскладе я не подумал...

Vampik
11-06-2011, 10:13
Можно как-нибудь убрать спам в логе в случае отключения интернета?

Jun 11 11:00:13 PPTP: Disconnected
Jun 11 11:00:14 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 11 11:00:15 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 11 11:00:16 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 11 11:00:17 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 11 11:00:18 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 11 11:00:19 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 11 11:00:19 pptp[324]: Connection terminated.
Jun 11 11:00:19 pptp[324]: Modem hangup
Jun 11 11:00:20 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:21 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:22 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:23 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:24 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:25 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:26 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:27 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:28 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:29 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:30 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:31 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:32 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:33 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:34 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:35 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:36 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:37 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:38 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:39 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:40 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:41 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:42 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:43 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:44 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:45 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:46 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:47 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:48 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:49 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
Jun 11 11:00:50 miniupnpd[1014]: ioctl(s, SIOCGIFADDR, ...): No such device
и т.д. каждую секунду.

Можно конечно убрать соответствующее сообщение об ошибках из исходников miniupnpd и пересобрать прошивку, но по-моему не очень красивое решение :(

theMIROn
11-06-2011, 11:56
Можно конечно убрать соответствующее сообщение об ошибках из исходников miniupnpd и пересобрать прошивку, но по-моему не очень красивое решение :(

Несмотря на сообщение, если интерфейс отсутствует или несконфигурирован, upnp корректно отрапортует о down/disconnected/0.0.0.0
Поэтому, думаю, достаточно понизить уровень логгирования.

theMIROn
11-06-2011, 13:00
Попробуй вот такой патч, у самого пока нет времени :(


--- miniupnpd.orig/getifaddr.c 2008-10-15 10:16:28.000000000 +0000
+++ miniupnpd/getifaddr.c 2011-06-11 10:33:38.000000000 +0000
@@ -29,6 +29,8 @@ getifaddr(const char * ifname, char * bu
int ifrlen;
struct sockaddr_in * addr;
ifrlen = sizeof(ifr);
+ int ret = -1;
+
if(!ifname || ifname[0]=='\0')
return -1;
s = socket(PF_INET, SOCK_DGRAM, 0);
@@ -38,20 +40,28 @@ getifaddr(const char * ifname, char * bu
return -1;
}
strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+ if(ioctl(s, SIOCGIFFLAGS, &ifr) < 0)
+ {
+ syslog(LOG_DEBUG, "ioctl(s, SIOCGIFFLAGS, ...): %m");
+ goto err;
+ } else
+ if ((ifr.ifr_flags & IFF_UP) == 0)
+ goto err;
if(ioctl(s, SIOCGIFADDR, &ifr, &ifrlen) < 0)
{
syslog(LOG_ERR, "ioctl(s, SIOCGIFADDR, ...): %m");
- close(s);
- return -1;
+ goto err;
}
addr = (struct sockaddr_in *)&ifr.ifr_addr;
if(!inet_ntop(AF_INET, &addr->sin_addr, buf, len))
{
syslog(LOG_ERR, "inet_ntop(): %m");
- close(s);
- return -1;
+ goto err;
}
+ ret = 0;
+
+err:
close(s);
- return 0;
+ return ret;
}

alig83
15-06-2011, 15:35
Подключился к дом.ру, теперь в статусе вот это(вложение), а в логах появляется:

Jun 15 03:07:25 miniupnpd[219]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 15 03:07:25 miniupnpd[219]: Failed to get IP for interface vlan2

Хоть всё и так работает, но может это можно поправить? Или отключить miniupnp?
Прошивка 3053.

Vampik
15-06-2011, 20:59
Подключился к дом.ру, теперь в статусе вот это(вложение), а в логах появляется:

Jun 15 03:07:25 miniupnpd[219]: ioctl(s, SIOCGIFADDR, ...): Cannot assign requested address
Jun 15 03:07:25 miniupnpd[219]: Failed to get IP for interface vlan2

Хоть всё и так работает, но может это можно поправить? Или отключить miniupnp?
Прошивка 3053.

У вас в пункте "Enable UPnP?" стоит "Yes, report MAN address"? Если так, то смените на "Yes, report WAN address". Как я понимаю, у вас PPPoE подключение и IP-адрес в локальной сети провайдер не выдает.

theMIROn
15-06-2011, 21:02
интересуюсь, патч помог?

alig83
15-06-2011, 21:04
У вас в пункте "Enable UPnP?" стоит "Yes, report MAN address"? Если так, то смените на "Yes, report WAN address". Как я понимаю, у вас PPPoE подключение и IP-адрес в локальной сети провайдер не выдает.

Да, соединение PPoE и адрес не выдаётся.
А вот "Enable UPnP?" выставлено "No".

Vampik
15-06-2011, 21:33
Да, соединение PPoE и адрес не выдаётся.
А вот "Enable UPnP?" выставлено "No".

А, ясно.. Баг с неотключаемым UPnP исправлен только в r3062.
Все не было времени собрать новую версию, не проверял еще :(

alig83
15-06-2011, 21:37
А, ясно.. Баг с неотключаемым UPnP исправлен только в r3062.
Все не было времени собрать новую версию, не проверял еще :(

Ясно. Ждём новую прошивку :)

TReX
07-08-2011, 03:29
Странно как то себя ведет miniupnpd :( RT-N16-1.9.2.7-rtn-r3170




client: Synchronizing time with pool.ntp.org...
2011-08-05 16:28:39 Kernel.Emerg 192.168.1.1 Aug 5 16:28:39 ntp client: Synchronizing time with pool.ntp.org...
2011-08-05 16:37:34 Daemon.Warning 192.168.1.1 Aug 5 16:37:34 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:35 Daemon.Warning 192.168.1.1 Aug 5 16:37:35 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:36 Daemon.Warning 192.168.1.1 Aug 5 16:37:36 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:37 Daemon.Warning 192.168.1.1 Aug 5 16:37:37 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:38 Daemon.Warning 192.168.1.1 Aug 5 16:37:38 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:39 Daemon.Warning 192.168.1.1 Aug 5 16:37:39 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:40 Daemon.Warning 192.168.1.1 Aug 5 16:37:40 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:41 Daemon.Warning 192.168.1.1 Aug 5 16:37:41 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:42 Daemon.Warning 192.168.1.1 Aug 5 16:37:42 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:43 Daemon.Warning 192.168.1.1 Aug 5 16:37:43 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:44 Daemon.Warning 192.168.1.1 Aug 5 16:37:44 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:45 Daemon.Warning 192.168.1.1 Aug 5 16:37:45 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory
2011-08-05 16:37:46 Daemon.Warning 192.168.1.1 Aug 5 16:37:46 miniupnpd[371]: cannot read /sys/class/net/ppp0/speed file : No such file or directory

Уже не в первый раз и без видимых причин

lly
07-08-2011, 16:55
Странно как то себя ведет miniupnpd :( RT-N16-1.9.2.7-rtn-r3170

В 1.6 автор добавил определение скорости интерфейса через фичу новых ядер - /sys/class/net/<if>/speed , а в нашем ядре этого просто нет. Подумаем, что можно сделать - бекпортнуть фичу или заткнуть miniupnpd

theMIROn
07-08-2011, 17:06
В 1.6 автор добавил определение скорости интерфейса через фичу новых ядер - /sys/class/net/<if>/speed , а в нашем ядре этого просто нет. Подумаем, что можно сделать - бекпортнуть фичу или заткнуть miniupnpd

фича не плохая, может пользоваться для qos в т.ч.

lly
07-08-2011, 17:32
фича не плохая, может пользоваться для qos в т.ч.
Угу, но беда, как всегда, одна - наша версия драйвера WiFi не экспортирует ethtool_ops :( Опять придётся придумывать какие-то подпорки.

Для et доделать поддержку тривиально, но скорость какого из портов свитча выдавать? Да и для ppp0 (см. drivers/net/ppp_generic.c) интерфейс ethtool_ops не реализован. В сухом остатке - ценность фичи для роутера близится к нулю :(

theMIROn
07-08-2011, 17:51
Угу, но беда, как всегда, одна - наша версия драйвера WiFi не экспортирует ethtool_ops :( Опять придётся придумывать какие-то подпорки.

проверять на наличие ethtool_ops и если это wl - иметь обертку?

lly
07-08-2011, 17:54
проверять на наличие ethtool_ops и если это wl - иметь обертку?
Да, но как малой кровью определить скорость wl, я пока не знаю.

P.S. Дополнил свой предыдущий ответ насчёт ppp0

theMIROn
07-08-2011, 18:34
Для et доделать поддержку тривиально, но скорость какого из портов свитча выдавать? Да и для ppp0 (см. drivers/net/ppp_generic.c) интерфейс ethtool_ops не реализован. В сухом остатке - ценность фичи для роутера близится к нулю :(
Для свича - первого активного порта в vlan-е, думаю... или минимальную из всех подключенных.
Вообщем да, лучше сделать поддержку этого добра в miniupnpd опциональной.

lly
07-08-2011, 19:57
Для свича - первого активного порта в vlan-е, думаю... или минимальную из всех подключенных.
Хм достаточно много придётся вытягивать в первом случае и получим 10 во втором.

Плюс еще только что выяснил, что для свитча в etc.c:etc_watchdog() не обновляются поля etc->speed, etc->duplex из которых позже берёт инфу родная процедура et_linux.c:et_ethtool(). Т.е. доделывать придётся некисло.


Вообщем да, лучше сделать поддержку этого добра в miniupnpd опциональной.
Угу, тупо заткнуть ругань - нет инфы, ну значит не судьба.

Stepashka
27-09-2011, 15:36
Имеется Asus WL-500W прошивка от энтузиастов, перешёл недавно на тариф 50 Мбит/с и начались траблы, сперва скорость закачки выше 30 Мбит/с не поднималась, вроде вылечилось в свежих прошивках.
Теперь, на прошивке 1.9.2.7-rtn-r3300, максимальную загрузку канала роутер выдерживает максимум 5 мин потом соединение рвётся, поднимается правда без проблем потом в теч минуты. Поможите исправить сие безобразие, пожалуйста.
выглядит это примерно так (ip изменены):

Sep 26 22:56:03 dnsmasq-dhcp[229]: DHCPREQUEST(br0) 192.168.1.115 00:00:00:00:00:00
Sep 26 23:10:48 miniupnpd[387]: send(res_buf): Connection reset by peer
Sep 26 23:10:48 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:11:26 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:11:27 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:11:31 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:11:35 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:34 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:34 pppd[367]: LCP terminated by peer
Sep 26 23:12:34 pppd[367]: Connect time 22.5 minutes.
Sep 26 23:12:34 pppd[367]: Sent 97454433 bytes, received 1824880069 bytes.
Sep 26 23:12:34 pppd[367]: Terminating on signal 15
Sep 26 23:12:34 pppd[367]: Modem hangup
Sep 26 23:12:34 pppd[367]: Connection terminated.
Sep 26 23:12:34 dnsmasq[229]: read /etc/hosts - 2 addresses
Sep 26 23:12:34 dnsmasq-dhcp[229]: read /etc/ethers - 1 addresses
Sep 26 23:12:34 dnsmasq[229]: using nameserver 222.222.2.2#53
Sep 26 23:12:34 dnsmasq[229]: using nameserver 58.11.182.9#53
Sep 26 23:12:34 L2TP: Disconnected
Sep 26 23:12:34 pppd[367]: Exit.
Sep 26 23:12:34 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:35 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:36 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:37 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:38 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:39 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:40 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:41 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:42 miniupnpd[387]: send(res_buf): Broken pipe
Sep 26 23:12:43 miniupnpd[387]: send(res_buf): Broken pipe

melky
06-10-2011, 12:00
Oct 6 13:58:10 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:11 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:12 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:13 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:14 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:15 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:16 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:17 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:18 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:19 miniupnpd[372]: send(res_buf): Broken pipe

Интернет при этом работает! Но загрузка процессора стремиться к 100 процентам. Процесс который сжирает всё процессорное время miniupnd. Также при всем при этом трафик остается в пределах десятков килобит в секунду. После перезагрузки проблема исчезла пока.

theMIROn
06-10-2011, 19:06
Oct 6 13:58:10 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:11 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:12 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:13 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:14 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:15 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:16 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:17 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:18 miniupnpd[372]: send(res_buf): Broken pipe
Oct 6 13:58:19 miniupnpd[372]: send(res_buf): Broken pipe

Интернет при этом работает! Но загрузка процессора стремиться к 100 процентам. Процесс который сжирает всё процессорное время miniupnd. Также при всем при этом трафик остается в пределах десятков килобит в секунду. После перезагрузки проблема исчезла пока.

интересно, и как, воспроизводится?

p.s просьба перенести в профильную тему

andrusha7778
09-10-2011, 09:35
Добрый день всем. Использую rt-n16 с RT-N16-1.9.2.7-rtn-r3300
периодически ловлю такой глюк - загрузка ЦП роутера составляет 100%, исследование запуском команды top на роутере показало что виноват в этом miniupnpd.
надо сказать что на одной из машин висит торрент, на всякий случай отключил в нем upnp переадресацию и nat-pmp тоже, в роутере открыл статический порт на этму машину. Также на этой машине висит TVersity mediaServer чтобы давать контент на плеер который в этой же сети есть.
Не подскажете, в чем может быть проблема с этим miniupnpd ?

andrusha7778
09-10-2011, 12:22
Как можно воспроизвести проблему? Что по шагам нужно сделать, чтобы увидеть возникновение глюка с miniupnpd?
При диагностике лучше сравнить перечень открытых портов ($ netstat -lna) и перечень открытых соединений ($ cat /proc/net/ip_conntrack). Если сделать выводы по результатам этих команд будет затруднительно, то прикрепите его к своему посту. В выводе этих команд нет никаких приватных данных.

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

Lezz
10-10-2011, 16:22
Аналогичные траблы.WL-500W. Через день после апдейта на 1.9.2.7-rtn-r3300.

Соединений дофига т.к. лимит увеличен в торренте. торрентов за рутером 3.

Инет браузит абсолютно нормально.скорость отдачи если и ниже чем обычная для данного времени суток, то всего раза в 2. Вход по SSH висит сначала секунд 10 - проц сильно перегружен.

Надо отметить, что вчера же поменял
Internet Firewall - Basic Config ->Number of connections to track: на 65535. Т.к. дропало все подряд, и веб глючил жёстко.

Но чего он глючит непонятно, ещё ж 5МБ RAM свободно... Проца не хватает?
Mem: 23828K used, 5224K free, 0K shrd, 2640K buff, 7252K cached

PS
вот ещё что, возможно, интересно.
В virtual server настроена проброска, например 40232 на 192.168.1.80 и точно то же правило дублируется UPNP. (см скрин) Ничего страшного в этом, насколько я понимаю, нет, и настроено так уже с прошлой прошивки (1.9.2.7-rtn-r2972). При апдейте на 1.9.2.7-rtn-r3300 настройки не сбрасывал.

Всю запрошенную инфу, вроде бы, приложил.

http://img822.imageshack.us/img822/385/capturecr.th.png (http://imageshack.us/photo/my-images/822/capturecr.png/)http://img411.imageshack.us/img411/6193/capture2ssd.th.png (http://imageshack.us/photo/my-images/411/capture2ssd.png/)

melky
17-10-2011, 11:40
Стал замечать что время от времени miniupnpd начинает кушать все процессорное время. В логах только это:
Oct 17 13:33:59 miniupnpd[431]: send(res_buf): Broken pipe
Oct 17 13:34:00 miniupnpd[431]: send(res_buf): Broken pipe
Oct 17 13:34:01 miniupnpd[431]: send(res_buf): Broken pipe
Вот вывод ps aux
Симптомы проходят на некоторое время после перезагрузки. Версия r3300. Может кто знает в чем проблема? :(

lly
17-10-2011, 12:22
Во-первых, неплохо было бы почитать форум ДО написания письма. И, обнаружить профильную тему MiniUPnP вместо UPnP ? (http://wl500g.info/showthread.php?t=26349)

А во-вторых, это бага в самом miniupnpd. Автору видимо некогда, нам пока тоже.

Как вариант, можно попробовать написать в http://miniupnp.tuxfamily.org/forum/viewforum.php?f=2

Updated: Поправил зацикливание в r3479. Первопричину проблемы, если только она не из-за исчерпания лимита соединений conntrack'а, тоже хорошо бы найти, но как это сделать без владения strace/tcpdump я не знаю.

maxicom
23-10-2011, 16:07
wl-500gp v1 прошивка rtn 3300
после установки в логах постоянно идет


18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: delete_redirect_and_filter_rules() : iptc_init() failed : Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: upnp_event_create_notify: socket(): Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: upnp_event_create_notify: socket(): Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: upnp_event_create_notify: socket(): Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: delete_redirect_and_filter_rules() : iptc_init() failed : Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: upnp_event_create_notify: socket(): Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: upnp_event_create_notify: socket(): Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: upnp_event_create_notify: socket(): Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: get_redirect_rule() : iptc_init() failed : Too many open files
18:01:18 23-10-2011 (err|daemon|miniupnpd) miniupnpd[24796]: addnatrule() : iptc_init() error : Too many open files


как это можно отключить?

voidshah
26-10-2011, 03:47
Вроде бы есть баг в Makefile.linux (gateway/miniupnpd для RT-N16)


ifeq "$(wildcard /etc/gentoo-release )" ""
LIBS ?= -liptc
else
# the following is better, at least on gentoo with iptables 1.4.6
#В*see http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=1618
# and http://miniupnp.tuxfamily.org/forum/viewtopic.php?p=2183
LIBS ?= -lip4tc
CFLAGS := -I/usr/src/linux/include -DIPTABLES_143 $(CFLAGS)
endif
прошивка не собирается, т.к. include не там ищет
если заменить на
CFLAGS := -I$(SRCBASE)/include -DIPTABLES_143 $(CFLAGS)
то так прошивка собирается:)

P.S. собираться то собирается, но роутер потом не заводится
PPS Пересобрал... и все норм:),

lly
26-10-2011, 09:25
Вроде бы есть баг в Makefile.linux (gateway/miniupnpd для RT-N16)

У тебя gentoo? Это секретный баг для настоящих гентушников!
Во всех остальных дистрибутивах эта ветка не используется. Уберу затычку на досуге.

voidshah
26-10-2011, 10:33
У тебя gentoo? Это секретный баг для настоящих гентушников!
Во всех остальных дистрибутивах эта ветка не используется. Уберу затычку на досуге.

ага, gentoo:). дык раньше ведь все норм было....

lly
26-10-2011, 10:37
ага, gentoo:). дык раньше ведь все норм было....
Это к автору miniupnpd - нафига такая куча затычек :confused:

voidshah
26-10-2011, 11:07
Это к автору miniupnpd - нафига такая куча затычек :confused:
так по вашему changelog'у вроде с miniupnpd ничего не делалось... ничего нипонимаю:confused:

lly
26-10-2011, 11:22
так по вашему changelog'у вроде с miniupnpd ничего не делалось... ничего нипонимаю:confused:
Смотри внимательней - http://miniupnp.tuxfamily.org/files/changelog.php?file=miniupnpd-1.6.20110730.tar.gz

voidshah
26-10-2011, 16:32
Смотри внимательней - http://miniupnp.tuxfamily.org/files/changelog.php?file=miniupnpd-1.6.20110730.tar.gz

посмотрел... извиняюсь канечно, мож туплю, но там последний change 2011/07/30. А у меня все вплось до r3512 (23.10.211) собиралось нормально.

lly А сорцы 3512 никак не скачать? Просто, ну, хочу разобраться...

andrusha7778
26-10-2011, 18:00
Некоторое время назад писал в этой теме про процессорное время и miniupnpd (когда он грузит процессор). Как я выяснил у меня тоже самое происходит, в логах надпись только miniupnpd[321]: send(res_buf): Broken pipe каждую секунду. Как правило интернет и iptv начинают тормозить при этом.

Netizen
04-11-2011, 10:19
BolenB
На последней прошивке (3558), похоже, с upnp что-то не то. Системный лог:

Jan 1 07:00:04 syslogd started: BusyBox v1.19.3
Jan 1 07:00:05 kernel: klogd started: BusyBox v1.19.3 (2011-11-04 11:44:17 OMST)
Jan 1 07:00:05 kernel: Linux version 2.6.22.19 (root@localhost) (gcc version 4.4.6 (GCC) ) #1 Fri Nov 4 11:43:32 OMST 2011
Jan 1 07:00:05 kernel: CPU revision is: 00019740
Jan 1 07:00:05 kernel: Found a 8MB ST compatible serial flash
Jan 1 07:00:05 kernel: Determined physical RAM map:
Jan 1 07:00:05 kernel: memory: 04000000 @ 00000000 (usable)
Jan 1 07:00:05 dnsmasq[210]: started, version 2.59 cachesize 512
Jan 1 07:00:05 dnsmasq[210]: compile time options: IPv6 GNU-getopt no-RTC no-DBus no-i18n DHCP no-scripts no-TFTP no-conntrack no-IDN
Jan 1 07:00:05 dnsmasq-dhcp[210]: DHCP, IP range 192.168.1.2 -- 192.168.1.254, lease time 1d
Jan 1 07:00:05 dnsmasq[210]: read /etc/hosts - 3 addresses
Jan 1 07:00:05 dnsmasq-dhcp[210]: read /etc/ethers - 1 addresses
Jan 1 07:00:05 miniupnpd[211]: version 1.6 started
Jan 1 07:00:05 miniupnpd[211]: HTTP listening on port 42310
Jan 1 07:00:05 miniupnpd[211]: Listening for NAT-PMP traffic on port 5351
Jan 1 07:00:06 kernel: usbcore: registered new interface driver usbfs
Jan 1 07:00:06 kernel: usbcore: registered new interface driver hub
Jan 1 07:00:06 kernel: usbcore: registered new device driver usb
Jan 1 07:00:06 kernel: ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
Jan 1 07:00:06 kernel: USB20H mdio control register : 0x80000010
Jan 1 07:00:06 kernel: ehci_hcd 0000:00:04.1: EHCI Host Controller
Jan 1 07:00:06 kernel: ehci_hcd 0000:00:04.1: new USB bus registered, assigned bus number 1
Jan 1 07:00:06 kernel: ehci_hcd 0000:00:04.1: irq 5, io mem 0x18004000
Jan 1 07:00:06 kernel: ehci_hcd 0000:00:04.1: USB 0.0 started, EHCI 1.00
Jan 1 07:00:06 kernel: usb usb1: configuration #1 chosen from 1 choice
Jan 1 07:00:06 kernel: hub 1-0:1.0: USB hub found
Jan 1 07:00:06 kernel: hub 1-0:1.0: 2 ports detected
Jan 1 07:00:06 kernel: ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
Jan 1 07:00:06 kernel: USB20H mdio control register : 0x80000010
Jan 1 07:00:06 kernel: ohci_hcd 0000:00:04.0: OHCI Host Controller
Jan 1 07:00:06 kernel: ohci_hcd 0000:00:04.0: new USB bus registered, assigned bus number 2
Jan 1 07:00:06 kernel: ohci_hcd 0000:00:04.0: irq 5, io mem 0x18009000
Jan 1 07:00:06 kernel: usb usb2: configuration #1 chosen from 1 choice
Jan 1 07:00:06 kernel: hub 2-0:1.0: USB hub found
Jan 1 07:00:06 kernel: hub 2-0:1.0: 2 ports detected
Jan 1 07:00:06 kernel: usbcore: registered new interface driver usblp
Jan 1 07:00:07 dnsmasq[210]: read /etc/hosts - 3 addresses
Jan 1 07:00:07 dnsmasq-dhcp[210]: read /etc/ethers - 1 addresses
Jan 1 07:00:07 dhcp client: deconfig: lease is lost
Jan 1 07:00:10 miniupnpd[276]: version 1.6 started
Jan 1 07:00:10 dnsmasq[210]: read /etc/hosts - 3 addresses
Jan 1 07:00:10 dnsmasq-dhcp[210]: read /etc/ethers - 1 addresses
Jan 1 07:00:10 dnsmasq[210]: using nameserver 81.1.192.5#53
Jan 1 07:00:10 dnsmasq[210]: using nameserver 82.200.22.227#53
Jan 1 07:00:10 miniupnpd[211]: received signal 15, good-bye
Jan 1 07:00:10 miniupnpd[276]: MiniUPnPd is already running. EXITING
Jan 1 07:00:10 kernel: vlan2: dev_set_allmulti(master, 1)
Jan 1 07:00:10 dhcp client: bound IP : ххх.ххх.ххх.ххх from ххх.ххх.ххх.ххх
Jan 1 07:00:11 dnsmasq-dhcp[210]: DHCPREQUEST(br0) 192.168.1.2 f4:6d:04:9b:85:f5
Jan 1 07:00:11 dnsmasq-dhcp[210]: DHCPACK(br0) 192.168.1.2 f4:6d:04:9b:85:f5 Netizen
Nov 4 16:12:57 ntp client: Synchronizing time with pool.ntp.org...

Port forwarding остается пустым.
И вот из лога торрент клиента например:

[2011-11-04 16:15:21] UPnP: No cached host. Returning false from CheckCachedUpnpHost()
[2011-11-04 16:15:24] UPnP: Could not map UPnP Port on this pass, retrying.
[2011-11-04 16:15:29] UPnP: Could not map UPnP Port on this pass, retrying.
[2011-11-04 16:15:34] UPnP: Could not map UPnP Port on this pass, retrying.
[2011-11-04 16:15:39] UPnP: Unable to map port 192.168.1.2:58363 with UPnP.


Откатился на 3552. Там нормально.

BolenB
04-11-2011, 11:15
BolenB
На последней прошивке (3558), похоже, с upnp что-то не то. Откатился на 3552. Там нормально.
Патч не менялся. У меня все работает. Могу посоветовать сделать полный сброс и настроить все заново.

Netizen
04-11-2011, 11:32
Патч не менялся. У меня все работает. Могу посоветовать сделать полный сброс и настроить все заново.

Хм... со второго раза все нормально встало и заработало. Спасибо еще раз за актуальные версии.

ping1
05-11-2011, 12:30
"На последней прошивке (3558), похоже, с upnp что-то не то."

У меня на всех прошивках после 3497, с upnp что-то не то, работает через раз..

BolenB
05-11-2011, 13:29
"На последней прошивке (3558), похоже, с upnp что-то не то."

У меня на всех прошивках после 3497, с upnp что-то не то, работает через раз..
Прошивка r3497 последняя на старом Broadcom SDK. Все последующие версии идут на новом Broadcom SDK 5.60.127.
Так что при переходе через версию r3497 нужно делать полный сброс
System Setup -> Factory Default -> Clear all и настраивать все заново руками (а не через сохранение - восстановление настроек).

lly
05-11-2011, 15:19
BolenB
Да не такие уж революционные изменения при переходе SDK 5.10 -> 5.60. В части WiFi много, но полный сброс, это совсем не обязательно.
Вот при переходе с 10.7 или d (SDK 4.150) => rtn (SDK 5.10), это да, однозначно полезный совет. Или апгрейд с древних билдов...

Не вижу способа как новый SDK мог напрямую повлиять на miniupnpd. И, пока детализация проблем будет на уровне "а у меня в подвале стук", ничего сделать нельзя. И вполне возможно, что minupnpd где-то не логгирует проблему в syslog.

BolenB
05-11-2011, 15:29
BolenB
И, пока детализация проблем будет на уровне "а у меня в подвале стук", ничего сделать нельзя. И вполне возможно, что minupnpd где-то не логгирует проблему в syslog.
Мой пост перенесли из темы по WNR3500L. У себя я проблем с upnp не замечал, но судя по уже двум жалобам в той теме думаю лучше сделать сброс, а потом смотреть проявится ли проблема.

Lezz
08-11-2011, 04:51
Опять выскакивает
Nov 8 06:37:53 miniupnpd[379]: send(res_buf): Broken pipe
Nov 8 06:37:55 miniupnpd[379]: send(res_buf): Broken pipe
Nov 8 06:37:57 miniupnpd[379]: send(res_buf): Broken pipe
Nov 8 06:37:58 miniupnpd[379]: send(res_buf): Broken pipe
симптомы те же, что уже описывал выше. Но, на этот раз даже странички перестали грузится на какое-то время. Потом опять начали (возможно ещё и потому, что просто нагрузка на входящий канал уменьшилась в какой-то момент).

Netizen
09-11-2011, 06:22
Это, наверное, какой-то бред, но у меня вчера все получилосьь именно так...
Прошил 3574, upnp не работает. Вообще никак, даже в системных логах никаких упоминаний про miniupnpd. Сбросил не дефолт, не работает. Выключил, применил, включил, применил в настройках - не работает.
Прошил 3571 - не работает. Опять сбросы и всякая возня не помогли.
Прошил 3563 - не работает!
Прошил 3558 - заработало как надо, все хорошо.
Прошил с 3558 на 3574 - не работает, никакие танцы не помогают.
Прошил обратно 3558 - работает.
Прошил с 3558 на 3563 - работает. Подгрузил свои, ранее сохраненные настройки, все работает...
Сижу на 3563 в непонятках.

BolenB
09-11-2011, 14:49
Это, наверное, какой-то бред, но у меня вчера все получилосьь именно так...
Прошил 3574, upnp не работает. Вообще никак, даже в системных логах никаких упоминаний про miniupnpd. Сбросил не дефолт, не работает. Выключил, применил, включил, применил в настройках - не работает.
Прошил 3571 - не работает. Опять сбросы и всякая возня не помогли.

С r3571 сломался miniupnpd.
В Status & Log - System Log miniupnpd никак не отображается.
В Status & Log - Port Forwarding ни одного проброса тоже нет.
uTorrent на компьютере рапортует что порт проброшен, но судя по скорости отдачи это не так.

Последняя рабочая версия r3570.

TReX
09-11-2011, 15:39
С r3571 сломался miniupnpd.
В Status & Log - System Log miniupnpd никак не отображается.
В Status & Log - Port Forwarding ни одного проброса тоже нет.
uTorrent на компьютере рапортует что порт проброшен, но судя по скорости отдачи это не так.

Последняя рабочая версия r3570.

Подтверждаю для RT-n16, в логе чисто, UPNP tester 2.9 роутера не видит...

TReX
09-11-2011, 15:41
С r3571 сломался miniupnpd.
В Status & Log - System Log miniupnpd никак не отображается.
В Status & Log - Port Forwarding ни одного проброса тоже нет.
uTorrent на компьютере рапортует что порт проброшен, но судя по скорости отдачи это не так.

Последняя рабочая версия r3570.

Да, на n16 все те же симптомы, отписал в основную ветку по прошивке...

lly
09-11-2011, 16:50
Подтверждаю для RT-n16, в логе чисто, UPNP tester 2.9 роутера не видит...
Ну ты же не чайник?! Ну так опиши подробнее - miniupnp есть в списке процессов или нет, что конкретно есть в логе, а не "чисто" и т.д.

TReX
09-11-2011, 17:09
Ну ты же не чайник?! Ну так опиши подробнее - miniupnp есть в списке процессов или нет, что конкретно есть в логе, а не "чисто" и т.д.



[root]$ ps
PID USER VSZ STAT COMMAND
1 admin 1564 S /sbin/init
2 admin 0 SW< [kthreadd]
3 admin 0 SW< [ksoftirqd/0]
4 admin 0 SW< [events/0]
5 admin 0 SW< [khelper]
23 admin 0 SW< [kblockd/0]
49 admin 0 SW [pdflush]
50 admin 0 SW [pdflush]
51 admin 0 SW< [kswapd0]
52 admin 0 SW< [aio/0]
101 admin 0 SW< [mtdblockd]
198 admin 1376 S syslogd -m 0 -O /tmp/syslog.log -S -D -l 7 -b 1 -LR
201 admin 1376 S klogd
203 admin 1148 S nas
207 admin 1384 S telnetd
210 admin 1208 S dropbear -p 2222
212 admin 1220 S httpd vlan2
216 admin 848 S radvd
217 admin 1020 S snmpd -c /tmp/snmpd.conf
220 nobody 972 S dnsmasq
229 admin 0 SW< [khubd]
236 admin 1084 S lld2d br0 eth1
270 admin 0 SW< [scsi_eh_0]
271 admin 0 SW< [usb-storage]
305 admin 812 S /usr/sbin/igmpproxy /etc/igmpproxy.conf
307 admin 1388 S /sbin/udhcpc -i vlan2 -p /var/run/udhcpc0.pid -bN61
310 admin 1072 S l2tpd
326 admin 1584 S watchdog
327 admin 1608 S pppd sync nodetach noaccomp nobsdcomp nodeflate nopc
378 admin 0 SW< [kjournald]
381 admin 1012 S /usr/sbin/vsftpd
2765 admin 1384 S -sh
3340 admin 1384 S -sh
3640 admin 1280 S dropbear -p 2222
3641 admin 1384 S -sh
3642 admin 1380 R ps
[root]$


и лог

ConstAntz
09-11-2011, 17:11
miniupnp есть в списке процессов или нет, что конкретно есть в логе

Если killall_w (http://code.google.com/p/wl500g/source/browse/trunk/rc/services.c?spec=svn3571&r=3571#377) стучится к busybox`у, то у аплета killall не включена опция -w

theMIROn
09-11-2011, 17:23
Если killall_w (http://code.google.com/p/wl500g/source/browse/trunk/rc/services.c?spec=svn3571&r=3571#377) стучится к busybox`у, то у аплета killall не включена опция -w

в бизибоксе не реализовано -w

lly
09-11-2011, 17:23
Если killall_w (http://code.google.com/p/wl500g/source/browse/trunk/rc/services.c?spec=svn3571&r=3571#377) стучится к busybox`у, то у аплета killall не включена опция -w
Влад сделал эмуляцию отсутствующей опции "-w", потом допилим сам апплет.


и лог
Что, "| grep miniupnpd" уже не осилил? :p
А "cat /etc/miniupnpd.conf" слабо было?


P.S. Вижу что не запускается, будем смотреть.

theMIROn
09-11-2011, 17:24
Ну так опиши подробнее - miniupnp есть в списке процессов или нет, что конкретно есть в логе, а не "чисто" и т.д.

нету. потому что killall_w всегда 0 возвращает.
щас починю

TReX
09-11-2011, 17:53
Что, "| grep miniupnpd" уже не осилил? :p
А "cat /etc/miniupnpd.conf" слабо было?


Я же написал - нет никаких упоминаний, раз не верят, выложил полный ;)
Так же как и


[root]$ cat /etc/miniupnpd.conf
cat: can't open '/etc/miniupnpd.conf': No such file or directory

lly
09-11-2011, 18:04
Я же написал - нет никаких упоминаний, раз не верят, выложил полный ;)

Мне еще раз тебя процитировать? Пожалуйста -

Подтверждаю для RT-n16, в логе чисто, UPNP tester 2.9 роутера не видит...
Не находишь ли, что "чисто", как понимают большинство - это без ошибок, не является синонимом "нет никаких упоминаний"?

А также, что чёткая формулировка проблемы, а не "+1", "у меня тоже" и многочисленные кросспосты способствует более быстрому устранению ошибок?

theMIROn
09-11-2011, 18:29
Девочки, не ссорьтесь, r3581 :)

lly
09-11-2011, 18:47
Девочки, не ссорьтесь, r3581 :)
Offtopic: Ходют тут всякие, а потом галоши пропадают!! :p

TReX
09-11-2011, 21:24
Мне еще раз тебя процитировать? Пожалуйста -

Не находишь ли, что "чисто", как понимают большинство - это без ошибок, не является синонимом "нет никаких упоминаний"?

А также, что чёткая формулировка проблемы, а не "+1", "у меня тоже" и многочисленные кросспосты способствует более быстрому устранению ошибок?

Признаю свою ошибку, формулировка неоднозначная... :rolleyes: А кроспост, изначальное сообщение было в теме о WNR3500L, как оказалось дело не в конкретной железке, а затрагивает всю линейку, поэтому кинул в общую...

1.9.2.7-rtn-r3583 -

ps
222 admin 960 S miniupnpd

log
Jan 1 04:00:02 miniupnpd[222]: version 1.6 started
Jan 1 04:00:02 miniupnpd[222]: HTTP listening on port xxxxxx
Jan 1 04:00:02 miniupnpd[222]: Listening for NAT-PMP traffic on port xxxx

Все замечательно живет )

МИНЗДРАВ
04-02-2012, 08:08
А что означает вывод:

Feb 3 21:18:47 miniupnpd[453]: remove port mapping 48347 TCP because it has expired
Feb 3 21:18:47 miniupnpd[453]: remove port mapping 48347 UDP because it has expired
Feb 4 01:27:10 kernel: printk: 1 messages suppressed.
Где можно посмотреть эту логовскую мессагу?

TReX
04-02-2012, 08:38
А что означает вывод:

Feb 3 21:18:47 miniupnpd[453]: remove port mapping 48347 TCP because it has expired
Feb 3 21:18:47 miniupnpd[453]: remove port mapping 48347 UDP because it has expired
Feb 4 01:27:10 kernel: printk: 1 messages suppressed.
Где можно посмотреть эту логовскую мессагу?

Программа (скорее всего торрент) перестала пользоваться портом, и миниупнп убрал его мапирование по таймауту.

gest
11-02-2012, 09:33
Не подскажете поменял недавно роутер с 500v2 на N-16, прошивка последняя релизная для rtn версии (RT-N16-1.9.2.7-rtn-r3702.trx). Появляется сообщение в логе:

Feb 11 12:25:48 miniupnpd[205]: HTTP Connection from 172.16.0.32 closed unexpectedly.

Прочитал ветку, появляется только при включенном торренте, порты пробросил в Virtual Server

http://i.imgur.com/IHk9A.png

Заранее извиняюсь, до гуру иксов мне далеко, помогите решите проблему.

ache
27-03-2012, 15:33
Там есть такая строчка:

allow 1024-65535 192.168.1.0/24 1024-65535
которая не позволяет проковырять дырку ни для sshd (22) ни для ident (113), www (80) и прочего ниже 1024.
Со старым upnpd этой проблемы не было.
Я пытался редактировать этот файл, заменив 1024 на 1, но после ребута изменения не запоминаются. Запоминал вот так, наверно неправильно:
flashfs save && flashfs commit && flashfs enable && reboot
и даже пробовал
echo /etc/miniupnpd.conf > /usr/local/.files
и
nvram save
поиском пользовался, но как записывать файлы в /etc - не нашёл.

Как вообще запоминать отредактированные файлы из /etc?

И, может, стоит сделать опцию в веб-интерфейсе для нижнего порта upnp?

Насчёт замечания про virtual server - в miniupnpd дырки ковыряются (и удаляются) динамически через miniupnpc с локальной машины, а в виртуал сервер скрипт надо писать, который довольно сложно заставить динамически отслеживать присутствие машины в сети и нужной OS на ней.

theMIROn
27-03-2012, 18:20
И, может, стоит сделать опцию в веб-интерфейсе для нижнего порта upnp?
врядли.
перевесьте сервисы на этом динамическом хосте выше 1024 и продолжайте пользоваться upnp клиентом.