Официальный сайт студ.городка НГТУ
Software » проблема с мультикастом через беспроводной интерфейс dir-300 

#1  03.12.09 15:08

VS
Профиль

проблема с мультикастом через беспроводной интерфейс dir-300

Роутер dir-300, залита последняя версия DD-WRT (какой-то линух с примочками и веб-интерфейсом для настроек)
Всё чудно работает, одна проблема:
Мультикаст трафик (телевизор) нормально транслируется на проводные порты.
Если же попытаться смотреть его через вай-фай, то втыкается какое-то "ограничение скорости" - больше полтора мегабита примерно не выдаёт, очень ровным графиком и всё изображение ужасно скомкано.
При том просто вай-фай работает отлично - проблема касается только мультикаста. Закурил до дыр уже гугл и форум dd-wrt, настройки в веб-морде сделаны правильно. Народ пишет что какая-то ошибка в настройке iptables и мультикаст трафик "делится и уходит в разные интефейсы" ничего более содержательного не нашёл.

При этом с родной прошивкой всё показывало нормально.
вот что кажет ps

root@DD-WRT:~# ps
  PID USER       VSZ STAT COMMAND
    1 root      2452 S    /sbin/init noinitrd
    2 root         0 SW<  [kthreadd]
    3 root         0 SW<  [ksoftirqd/0]
    4 root         0 SW<  [events/0]
    5 root         0 SW<  [khelper]
   36 root         0 SW<  [kblockd/0]
   55 root         0 SW   [pdflush]
   56 root         0 SW   [pdflush]
   57 root         0 SW<  [kswapd0]
   58 root         0 SW<  [aio/0]
  582 root         0 SW<  [mtdblockd]
  603 root      2544 S    watchdog
  876 root      3760 S    httpd -p 80
1427 root      2448 S    resetbutton
2192 root       972 S    udhcpc -i vlan2 -p /var/run/udhcpc.pid -s /tmp/udhcpc
2354 root      1360 S    hostapd -B /tmp/ath0_hostap.conf
3818 root      2444 S    process_monitor
8029 root      2448 S    ttraff
8042 root      1340 S    telnetd
8047 root      1092 S    dnsmasq --conf-file=/tmp/dnsmasq.conf
8415 root      1820 S    dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_ho
8552 root      1876 R    dropbear -b /tmp/loginprompt -r /tmp/root/.ssh/ssh_ho
8553 root      1360 S    -sh
8555 root      1344 R    ps
30483 root      2472 S    wland
30493 root       972 S    cron
30498 root       972 S    igmprt

вот что кажет iptables -L

root@DD-WRT:~# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     0    --  anywhere             anywhere            state RELATED,ESTABLISHED
DROP       udp  --  anywhere             anywhere            udp dpt:route
DROP       udp  --  anywhere             anywhere            udp dpt:route
ACCEPT     udp  --  anywhere             anywhere            udp dpt:route
logaccept  tcp  --  anywhere             DD-WRT              tcp dpt:www
logaccept  tcp  --  anywhere             DD-WRT              tcp dpt:ssh
DROP       icmp --  anywhere             anywhere
ACCEPT     igmp --  anywhere             anywhere
ACCEPT     0    --  anywhere             anywhere            state NEW
logaccept  0    --  anywhere             anywhere            state NEW
DROP       0    --  anywhere             anywhere

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     gre  --  192.168.1.0/24       anywhere
ACCEPT     tcp  --  192.168.1.0/24       anywhere            tcp dpt:1723
ACCEPT     0    --  anywhere             anywhere
TCPMSS     tcp  --  anywhere             anywhere            tcp flags:SYN,RST/SYN TCPMSS clamp to PMTU
lan2wan    0    --  anywhere             anywhere
ACCEPT     0    --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     udp  --  anywhere             BASE-ADDRESS.MCAST.NET/4 udp
ACCEPT     tcp  --  anywhere             nnm.cn.ru novotelecom.ru tcp dpt:12346
ACCEPT     udp  --  anywhere             nnm.cn.ru novotelecom.ru udp dpt:12346
TRIGGER    0    --  anywhere             anywhere            TRIGGER type:in match:0 relate:0
trigger_out  0    --  anywhere             anywhere
ACCEPT     0    --  anywhere             anywhere            state NEW
DROP       0    --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain advgrp_1 (2 references)
target     prot opt source               destination
REJECT     tcp  --  anywhere             anywhere            tcp WEBSTR match host vkontakte.ru< > reject-with tcp-reset

Chain advgrp_10 (0 references)
target     prot opt source               destination

Chain advgrp_2 (0 references)
target     prot opt source               destination

Chain advgrp_3 (0 references)
target     prot opt source               destination

Chain advgrp_4 (0 references)
target     prot opt source               destination

Chain advgrp_5 (0 references)
target     prot opt source               destination

Chain advgrp_6 (0 references)
target     prot opt source               destination

Chain advgrp_7 (0 references)
target     prot opt source               destination

Chain advgrp_8 (0 references)
target     prot opt source               destination

Chain advgrp_9 (0 references)
target     prot opt source               destination

Chain grp_1 (1 references)
target     prot opt source               destination
advgrp_1   0    --  anywhere             anywhere            MAC 00:21:5D:BD:60:60
advgrp_1   0    --  anywhere             anywhere            MAC 00:21:5D:BD:60:60

Chain grp_10 (0 references)
target     prot opt source               destination

Chain grp_2 (0 references)
target     prot opt source               destination

Chain grp_3 (0 references)
target     prot opt source               destination

Chain grp_4 (0 references)
target     prot opt source               destination

Chain grp_5 (0 references)
target     prot opt source               destination

Chain grp_6 (0 references)
target     prot opt source               destination

Chain grp_7 (0 references)
target     prot opt source               destination

Chain grp_8 (0 references)
target     prot opt source               destination

Chain grp_9 (0 references)
target     prot opt source               destination

Chain lan2wan (1 references)
target     prot opt source               destination
grp_1      0    --  anywhere             anywhere

Chain logaccept (3 references)
target     prot opt source               destination
ACCEPT     0    --  anywhere             anywhere

Chain logdrop (0 references)
target     prot opt source               destination
DROP       0    --  anywhere             anywhere

Chain logreject (0 references)
target     prot opt source               destination
REJECT     tcp  --  anywhere             anywhere            tcp reject-with tcp-reset

Chain trigger_out (1 references)
target     prot opt source               destination
root@DD-WRT:~#

А вот ifconfig

root@DD-WRT:~# ifconfig
ath0      Link encap:Ethernet  HWaddr 00:22:B0:90:D0:D1
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5168642 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4894097 errors:0 dropped:81 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:525925100 (501.5 MiB)  TX bytes:1593707093 (1.4 GiB)

br0       Link encap:Ethernet  HWaddr 00:22:B0:90:D0:D1
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:40448224 errors:0 dropped:0 overruns:0 frame:0
          TX packets:46058429 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:834088473 (795.4 MiB)  TX bytes:4218217949 (3.9 GiB)

eth0      Link encap:Ethernet  HWaddr 00:22:B0:90:D0:D2
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:91781325 errors:0 dropped:0 overruns:0 frame:0
          TX packets:82656274 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1680614746 (1.5 GiB)  TX bytes:1846994863 (1.7 GiB)
          Interrupt:4 Base address:0x1000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING MULTICAST  MTU:16436  Metric:1
          RX packets:320 errors:0 dropped:0 overruns:0 frame:0
          TX packets:320 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:28644 (27.9 KiB)  TX bytes:28644 (27.9 KiB)

vlan0     Link encap:Ethernet  HWaddr 00:22:B0:90:D0:D2
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:37885539 errors:0 dropped:0 overruns:0 frame:0
          TX packets:42706900 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:744795033 (710.2 MiB)  TX bytes:416286065 (397.0 MiB)

vlan2     Link encap:Ethernet  HWaddr 00:13:D4:FC:21:06
          inet addr:172.24.131.98  Bcast:172.24.131.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:52607893 errors:0 dropped:0 overruns:0 frame:0
          TX packets:39949374 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4222838535 (3.9 GiB)  TX bytes:1430708798 (1.3 GiB)

vlan2:0   Link encap:Ethernet  HWaddr 00:13:D4:FC:21:06
          inet addr:169.254.255.1  Bcast:169.254.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

wifi0     Link encap:UNSPEC  HWaddr 00-22-B0-90-D0-D1-00-00-00-00-00-00-00-00-00                                                                              -00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2634457 errors:0 dropped:0 overruns:0 frame:298631
          TX packets:3910033 errors:7334 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:195
          RX bytes:374768248 (357.4 MiB)  TX bytes:358071551 (341.4 MiB)
          Interrupt:3 Memory:b0000000-b00ffffc

root@DD-WRT:~#

Может кто что подскажет? Нифига не могу понять с этой бедой делать...
Клиентский бук не виноват - другой бук с другой ОС и вай-фай адаптером так же показывает и оба при проводном подсоединении нормально играют.
Адреса каналов этого чудо-телевидения выглядят так udp://@239.0.2.201:1234

Offline

#2  03.12.09 18:55

Re: проблема с мультикастом через беспроводной интерфейс dir-300

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

VS написал(а):

TX packets:3910033 errors:7334 dropped:0 overruns:0 carrier:0

хотя пакетов почти 4млн, получается 1 из 533 пакетов, вроде нормально....

Исправлено Fire Stream (03.12.09 18:59)

Offline

#3  07.12.09 10:25

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

воткни туда udpxy, все нормально должно быть
прога ловит мультикастовые UDP на внешнем интерфейсе и передает клиенту поток через ТСР. Просто мульткастовые пакеты на многом железе ничем не отличаются от бродкастовых, но так же во многом железе есть аппаратная фильтрация бродкаст-шторма (да и мультикаст-шторма)
А если зарулить это серез ТСР то все окейно. Правда есть лаг где-то в секунду на буферизацию, но это фигня.

Offline

#4  07.12.09 21:12

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

Вот за что я люблю это дело - захочешь пёрнуть, придётся изучить пол гугла.

Задался целью поставить updxy, поставил winscp для заливки на роутер. Нашёл исходники, залил.

make...

root@DD-WRT:~# make
-sh: make: not found

Ок, нашёл скомпиленый udpxy, запускаю...

line 1: syntax error: "(" unexpected

Нашёл другие скомпиленые udpxy (кстати, один на h-net.ksn.ru лежит архивчиком), те же результаты, с вариациями до

line 1: syntax error: word unexpected (expecting ")")

Сижу думаю как скомпилить так, чтобы работало...
покрутил cygwin, всякую фигню, перерыл гугл... нифига не получается.
WTF??? =)

Offline

#5  07.12.09 22:21

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

тот что на ашнете лежит - это я компилил :) но дома на линксисе сейчас работает

технология вроде простая, но пришлось напильником пилить
качаешь SDK. в моем случае это было от openwrt, в твоем похоже от ddwrt
мэйкфайл не хотел собирать из исходников, я писал вручную gcc bla-bla для каждого файла, компилил объектники и потом их слинковал. вообще думаю можно мэйкфайл поправить. но там файлов всего что-то типа 8 шт, так что вручную - тоже не долго

закачал. запускаю. ругается что анрезолвед симбол. ну чорт! оказалось в СДК и в прошивке разные версии библиотек. скачиваю с роутера библиотеки и кидаю в каталог с СДК. перекомпиливаю, перелинковываю
заливаю опять на роутер бинарник. о Боже! заработало!

но у тебя какая-то ошибка странная: "line 1: syntax error: ....." ты уверен что бинарник запускаешь? это похоже на "блевотину" шелла

P.S. SDK надо разворачивать в линуксе конечно. если линукса нет под рукой, то можно по простому в виртуалочку поставить что-нить простенькое с make/gmake (в смысле нормальный "боевой" дистриб, а не чтонибудь новомодное, гед много красивых окошек но нихр@на скомпилить нельзя)

Offline

#6  07.12.09 22:33

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

попробуй внагляк сунуть бинарник
http://sourceforge.net/projects/udpxy/files/

udpxy_1.0-Chipmunk-11_mipsel.ipk

закачать, а потом что-то типа ipkg install udpxy_1.0-Chipmunk-11_mipsel.ipk

или бинарник из релиза  udpxy-wl500g подсунуть, авось стартанет

я там в коде полазил - ничего необычного, голый С
проблема можеть быть только с либцами (там они резанные и называются что-то типа uclibc)

Offline

#7  09.12.09 14:47

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

>ipkg install
Он такое не умеет

>udpxy-wl500g
подсовывал, не канает (

>проблема можеть быть только с либцами
похоже на то...

Offline

#8  09.12.09 23:09

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

Max написал(а):

udpxy_1.0-Chipmunk-11_mipsel.ipk

открой его винраром внаглую, это архив
в нем еще один архив, тыкай не стесняйся


там будет 2 архива, data.tar.gz и control.tar.gz
тыкай в data.tar.gz
там будет каталог /opt/bin
в нем 2 бинарника
это уже выполняемые файлы. нужно udpxy вытащить оттуда и закачать
потом выполнить chmod a+x udpxy и запускать пробовать

p.s. пока писал это , подумалось: а ты не забыл чмод сделать??

Offline

#9  10.12.09 04:49

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

Ох мать перемать...

утром запробую, спасибо =)

Offline

#10  10.12.09 04:50

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

Эх, если бы каждый в нашей стране должен был освоить всё это чтобы посмотреть телик...

Offline

#11  10.12.09 11:19

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

я это настроил. но телик не смотрю :) спортивный интерес был видимо

Offline

#12  10.12.09 15:45

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

Вытащил из ипк, засунул,

./udpxy: line 1: syntax error: word unexpected (expecting ")")

Ненависть... =)

Offline

#13  10.12.09 15:49

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

chmod не забыл сделать?
la -la покажи

Offline

#14  10.12.09 16:20

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

Не забыл...

root@DD-WRT:/tmp# la -la
-sh: la: not found
root@DD-WRT:/tmp# la
-sh: la: not found

Offline

#15  10.12.09 20:51

Re: проблема с мультикастом через беспроводной интерфейс dir-300

ls -la

Offline

#16  10.12.09 21:26

VS
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

root@DD-WRT:/tmp# ls -la
drwxrwxrwx    9 root     root            0 Dec 10 08:13 .
drwxr-xr-x   16 root     root          153 Oct 10 01:18 ..
-rw-r--r--    1 root     root         3242 Dec  8 19:47 .ipt
-rw-r--r--    1 root     root           20 Dec  8 19:47 .rule
-rw-r--r--    1 root     root            9 Dec  8 19:47 .wanuptime
-rw-r--r--    1 root     root          292 Jan  1  1970 ath0_hostap.conf
drwx------    2 root     root            0 Dec  8 19:47 cron.d
-rw-r--r--    1 root     root            0 Dec  8 19:47 crontab
-rw-r--r--    1 root     root          274 Jan  1  1970 dnsmasq.conf
-rw-r--r--    1 root     root          311 Dec 10 10:26 dnsmasq.leases
drwx------    2 root     root            0 Jan  1  1970 etc
-rw-r--r--    1 root     root           61 Jan  1  1970 hosts
-rw-r--r--    1 root     root          215 Dec  8 19:47 igmpproxy.conf
-rw-r--r--    1 root     root           86 Jan  1  1970 loginprompt
drwxr-xr-x    2 root     root            0 Jan  1  2000 nvram
drwxr-xr-x    3 root     root            0 Jan  1  1970 oet
-rw-r--r--    1 root     root           53 Jan  1  1970 resolv.conf
-rw-r--r--    1 root     root           51 Jan  1  1970 resolv.dnsmasq
drwx------    3 root     root            0 Jan  1  1970 root
lrwxrwxrwx    1 root     root            8 Jan  1  1970 udhcpc -> /sbin/rc
-rw-r--r--    1 root     root            6 Dec 10 04:46 udhcpc.expires
-rwxr-xr-x    1 root     root       142500 Mar 25  2009 udpxy
drwxr-xr-x    8 root     root            0 Jan  1  1970 var
drwxr-xr-x    2 root     root            0 Jan  1  2000 www
root@DD-WRT:/tmp#

Offline

#17  11.12.09 03:44

Max
Профиль

Re: проблема с мультикастом через беспроводной интерфейс dir-300

ну тьфу ты , опечатался. со мной такое часто

но в общем-то ls -la ничего не прояснил
попробуй найти SDK и скомпилить

Offline

Software » проблема с мультикастом через беспроводной интерфейс dir-300 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.049 сек.
Выполнено 11 запросов.