26

Re: UDPXY на Keenetic

Удаляется через раз=) при этом добавляется тоже. В общем не в нем проблема.
Я уже не знаю куда копать, но к сожалению ретрансляцию udp2http пока не получается настроить. sad

27

Re: UDPXY на Keenetic

Не знаю почему, но udpxy не видит трафик айпи-тв от провайдера, хотя он 100% есть.

2011-06-19 13:15:22.239929 MSD    2374    udpxy 1.0-Chipmunk (build 19) standard: udpxy -p 81 -a br0 -m eth2.2 -R 1 -v -l logfile
2011-06-19 13:15:22.248996 MSD    2374    Starting server [2374]; capacity=[3] clients
2011-06-19 13:15:22.254417 MSD    2374    Setting up listener for [192.168.1.1:81]
2011-06-19 13:15:22.257063 MSD    2374    Server socket=[5] is set up
2011-06-19 13:15:22.259242 MSD    2374    Entering server loop
2011-06-19 13:15:22.260752 MSD    2374    Server is waiting for input: socket=[5], pipe=[2]
2011-06-19 13:16:10.535548 MSD    2374    Accepted socket=[7]
2011-06-19 13:16:10.537625 MSD    2374    Reading command from socket [7]
2011-06-19 13:16:10.545859 MSD    2374    HTTP buffer [59 bytes] received
2011-06-19 13:16:10.548267 MSD    2374    Request=[udp/239.255.2.31:1234], length=[21]
2011-06-19 13:16:10.550689 MSD    2374    Command [udp] with params [239.255.2.31:1234] read from socket=[7]
2011-06-19 13:16:10.553593 MSD    2374    udp_relay : new_socket=[7] param=[239.255.2.31:1234]
2011-06-19 13:16:10.557099 MSD    2374    Added client: pid=[2376], maddr=[239.255.2.31], mport=[1234], saddr=[192.168.1.3], sport=[18801]
2011-06-19 13:16:10.561823 MSD    2374    Closed accepted socket [7]
2011-06-19 13:16:10.563894 MSD    2374    Server is waiting for input: socket=[5], pipe=[2]
2011-06-19 13:16:10.556577 MSD    2374    Client process=[2376] started for socket=[7]
2011-06-19 13:16:10.568790 MSD    2376    min socket buffer = [65536], max space to use = [1500], Rmsgs = [1]
2011-06-19 13:16:10.572058 MSD    2376    Setting up multicast listener
2011-06-19 13:16:10.573852 MSD    2376    current receive buffer size is [112640] bytes for socket [2]
2011-06-19 13:16:10.578040 MSD    2376    multicast-group [ADD]
2011-06-19 13:16:10.583833 MSD    2376    Mcast listener socket=[2] set up
2011-06-19 13:16:10.585883 MSD    2376    min socket buffer = [65536], max space to use = [1500], Rmsgs = [1]
2011-06-19 13:16:10.588823 MSD    2376    Data buffer will hold up to [1] messages
2011-06-19 13:16:10.590828 MSD    2376    UDP stream, RTP check enabled
2011-06-19 13:16:10.592514 MSD    2376    current send buffer size is [16384] bytes for socket [7]
2011-06-19 13:16:10.595496 MSD    2376    current receive buffer size is [112640] bytes for socket [2]
2011-06-19 13:16:10.598450 MSD    2376    send buffer size set to [112640] bytes for socket [7]
2011-06-19 13:16:10.601542 MSD    2376    Sent HTTP response code=[200], reason=[OK] to socket=[7]
2011-06-19 13:16:10.605262 MSD    2376    Relaying traffic from socket[2] to socket[7], buffer size=[2048], Rmsgs=[1], pauses=[0]
2011-06-19 13:16:15.609499 MSD    2376    read_buf: read: Resource temporarily unavailable
2011-06-19 13:16:15.611242 MSD    2376    read_data - EOF
2011-06-19 13:16:15.613231 MSD    2376    Exited relay loop: received=[-1], sent=[0], quit=[0]
2011-06-19 13:16:15.616681 MSD    2376    multicast-group [DROP]
2011-06-19 13:16:15.619574 MSD    2376    Mcast listener socket=[2] closed
2011-06-19 13:16:15.622369 MSD    2376    Child process=[2376] exits with rc=[0]
2011-06-19 13:16:15.625356 MSD    2374    *** Caught SIGCHLD in process=[2374] ***
2011-06-19 13:16:15.627425 MSD    2374    Client [2376] has exited.
2011-06-19 13:16:15.629696 MSD    2374    Deleted client: pid=[2376]
2011-06-19 13:16:15.632003 MSD    2374    Server is waiting for input: socket=[5], pipe=[2]

28

Re: UDPXY на Keenetic

maxtor, заочно тут трудно помочь. Не пробовали ip задавать вместо имен интерфейсов? Или без параметра "-a" запускать?

29

Re: UDPXY на Keenetic

Да, перепробовал много вариантов. В общем написал в zyxel, не уверен что полезной информации выужу из обращения, но надеюсь хоть на какой то сдвиг.

30

Re: UDPXY на Keenetic

На ADSL маршрутизаторе у меня udpxy встроен в прошивку. Запускается (вывод ps) так

 338 root        696 S    /usr/sbin/udpxy -T -a br0 -p 81 -m br1 -c 3 -B 4Kb -R -1 -H 4

И еще несколько выдач:

#brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.00142bXXXXda       no              eth2
                                                        eth3
br1             8000.00142bYYYYda       no              eth1
                                                        eth0
                                                        nas1
br2             8000.000000000000       no
br3             8000.000000000000       no
# ifconfig
br0       Link encap:Ethernet  HWaddr 00:14:2B:XX:XX:DA
          inet addr:10.0.0.2  Bcast:10.0.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:199745953 errors:0 dropped:0 overruns:0 frame:0
          TX packets:209585918 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:3628759214 (3460.6 Mb)  TX bytes:713971780 (680.8 Mb)

br1       Link encap:Ethernet  HWaddr 00:14:2B:YY:YY:DA
          inet addr:172.16.0.1  Bcast:172.16.0.1  Mask:255.255.255.255
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:636313 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:687700460 (655.8 Mb)  TX bytes:0 (0.0 b)

br2       Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

br3       Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

eth0      Link encap:Ethernet  HWaddr 00:14:2B:XX:XX:DA
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:141045 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:16286502 (15.5 Mb)

eth1      Link encap:Ethernet  HWaddr 00:14:2B:XX:XX:DA
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:268579 errors:0 dropped:0 overruns:0 frame:0
          TX packets:786052 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:36105789 (34.4 Mb)  TX bytes:753965320 (719.0 Mb)

eth2      Link encap:Ethernet  HWaddr 00:14:2B:XX:XX:DA
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  ASYMMTU:1500
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:852560 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:177580874 (169.3 Mb)
# ip route
91.77.176.1 dev ppp0  proto kernel  scope link  src 91.77.176.XX
10.0.0.0/24 dev br0  proto kernel  scope link  src 10.0.0.2
239.0.0.0/8 dev br0  scope link  metric 1
default dev ppp0  scope link

# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
91.77.176.1     *               255.255.255.255 UH    0      0        0 ppp0
10.0.0.0        *               255.255.255.0   U     0      0        0 br0
239.0.0.0       *               255.0.0.0       U     1      0        0 br0
default         *               0.0.0.0         U     0      0        0 ppp0

br1 - это спецально созданный бридж для iptv (отдельный PVC). 10.0.0.2 - это ip маршрутизатора (br0).

PS Сомневаюсь, что в Zyxel помогут.

31

Re: UDPXY на Keenetic

Может ошибаюсь, но наиболее близкая к этому реализация у Вас будет такая. Сбриджевать wan и один из lan портов через web-конфигуратор кинетика. Дать этому бриджу произвольный ip (без этого не заработает) через ifconfig. Запустить udpxy указав в параметре -m этот бридж или его ip.

32

Re: UDPXY на Keenetic

В zyxel ответили, что в 4-м квартале собираются добавить udpxy в базовую прошивку.

33

Re: UDPXY на Keenetic

maxtor, попробуйте все-таки, как я предложил чуть раньше. Назначьте фиксированный ethernet порт для iptv.
Может быть и без присвоения ip бриджу (а создается ли он - /bin/bridge.sh ??) прокатит.

34

Re: UDPXY на Keenetic

Если кто будет пытаться настроить UDPXY, рекомендую прочесть это сообщение на форуме ixbt. Собственно прибить модуль ядра igmpsn я предлагал в этой теме раньше в 15-м сообщении.

35

Re: UDPXY на Keenetic

а какой командой можно выгрузить этот модуль?
нашел:

rmmod igmpsn

Отредактировано maxtor (2011-07-12 19:41:21)

36

Re: UDPXY на Keenetic

айпи-тв пропало совсем и к сожалению updxy так и не заработал(

12 Июл 20:44:20    udpxy[6531]    read_buf: read: Resource temporarily unavailable

Отредактировано maxtor (2011-07-12 19:45:19)

37

Re: UDPXY на Keenetic

Работает udpxy на кинетике - http://forum.ixbt.com/topic.cgi?id=14:54600-34#1078
Добавил udpxy в репозитарий пакетов.

38

Re: UDPXY на Keenetic

IgorGolubev с ixbt предлагает такой скрипт запуска udpxy, дорабатываем, пишем сюда свои варианты.

#!/bin/sh

MOUNT="/media/DISK_A1/system"

export PATH=$MOUNT/bin:$MOUNT/sbin:$MOUNT/usr/bin:$MOUNT/usr/sbin:/sbin:/usr/sbin:/bin:/usr/bin
export LD_LIBRARY_PATH=$MOUNT/lib:$MOUNT/usr/lib:/lib:/usr/lib

#for pure PPPoE without ip add any ip to eth2.2 
#ifconfig eth2.2 10.10.99.1 up

rmmod igmpsn
# Forcing setting IGMPv2
echo "2" > /proc/sys/net/ipv4/conf/all/force_igmp_version
# route add -net 239.0.0.0 netmask 255.0.0.0 br0 (не обязательно, работает без этого маршрута)
iptables -D INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
iptables -I INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
udpxy -a br0 -p 8888 -m eth2.2 -c 20 -B 4Kb -R -1 -H

После чего проверяем в VLC задавая URL вида
http://<ip keenetic>:8888/udp/239.255.2.65:5500

39

Re: UDPXY на Keenetic

Подтверждаю, udpxy работает! Спасибо всем, скрипт утянул к себе=)

Zyxmon, не подскажете как создать автоматический скрипт запуска?
Создал файл S88udpxy в директории \\keenetic\DISK_A1\system\etc\init.d, внутри этого файла текст скрипта, но к сожалению автоматически не запускается.

Отредактировано maxtor (2011-07-16 11:58:42)

40

Re: UDPXY на Keenetic

maxtor, скрипты из папки init.d запускаются с параметром. Нужно обеспечить обработку параметров start, stop, restart - как минимум. Иначе возникнет определенный "бардак". Скрипт приблизительно должен выглядеть так

#!/bin/sh

MOUNT="/media/DISK_A1/system"

export PATH=$MOUNT/bin:$MOUNT/sbin:$MOUNT/usr/bin:$MOUNT/usr/sbin:/sbin:/usr/sbin:/bin:/usr/bin
export LD_LIBRARY_PATH=$MOUNT/lib:$MOUNT/usr/lib:/lib:/usr/lib


start() {
#for pure PPPoE without ip add any ip to eth2.2 
#ifconfig eth2.2 10.10.99.1 up
rmmod igmpsn
# Forcing setting IGMPv2
echo "2" > /proc/sys/net/ipv4/conf/all/force_igmp_version
# route add -net 239.0.0.0 netmask 255.0.0.0 br0 (не обязательно, работает без этого маршрута)
iptables -D INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
iptables -I INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
udpxy -a br0 -p 8888 -m eth2.2 -c 20 -B 4Kb -R -1 -H 4
}

stop() {
iptables -D INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
killall updpxy
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        sleep 1
        start
        ;;
    link_up)
        ;;
    ppp_up)
        ;;
    link_down)
        ;;
    ppp_down)
        ;;
    *)
        echo "Usage: $0 {start|stop|restart|link_up|link_down|ppp_up|ppp_down}"
        ;;
esac 

41

Re: UDPXY на Keenetic

отлично, все заработало, когда исключил параметр -H в строчке

udpxy -a br0 -p 8888 -m eth2.2 -c 20 -B 4Kb -R -1 -H

42

Re: UDPXY на Keenetic

maxtor :

отлично, все заработало, когда исключил параметр -H в строчке

После флага -H следует указать число

 -H : maximum time (sec) to hold data in buffer (-1 = unlimited) [default = 1]

В первом варианте у IgorGolubev было число 4.

Добавил этот параметр в "полный" скрипт. Скрипт перед тем, как его помещаете в "автозапуск" следует потестировать.
Запустить с параметром start - убедиться, что udpxy запустился (команда ps) и работает. Потом остановить с параметром stop, убедиться что остановлен (команда ps). Проверить, что работает restart, возможно увеличить паузу в sleep.

При загрузке кинетика скрипты запускаются два раза - первый раз start, второй раз - restart. При монтировании usb носителя - один раз (start). При размонтировании носителя скрипты выполняются с параметром stop.

43

Re: UDPXY на Keenetic

Запросто может оказаться, что при запуске предыдущего скрипта интерфейс eth2.2 (wan) еще не получил ip. В этом случае udpxy не запустится. Скрипт должен быть более сложным.

44

Re: UDPXY на Keenetic

Тем не менее скрипт работает, все ок.
Правда загрузка цп на кинетике от одного коннекта тв выросла до стабильных 45%

45

Re: UDPXY на Keenetic

maxtor, Вы с помощью 'top' смотрите загрузку? Это именно udpxy столько cpu "кушает"? ИМХО так быть не должно.

46

Re: UDPXY на Keenetic

нет, на интерфейсе кинетика.

47

Re: UDPXY на Keenetic

maxtor, посмотрите в 'top'.
PS Можно поставить "красивый и функциональный" htop (opkg install htop).
Скриншот htop
http://keenetic.zyxmon.org/files/htop.png

48

Re: UDPXY на Keenetic

при запуке скрипта выходит сообщение

 /media/DISK_A1/system/etc/init.d/K30udpxy start
iptables: Bad rule (does a matching rule exist in that chain?)

сам скрипт

#!/bin/sh

MOUNT="/media/DISK_A1/system"

export PATH=$MOUNT/bin:$MOUNT/sbin:$MOUNT/usr/bin:$MOUNT/usr/sbin:/sbin:/usr/sbin:/bin:/usr/bin
export LD_LIBRARY_PATH=$MOUNT/lib:$MOUNT/usr/lib:/lib:/usr/lib


start() {
#for pure PPPoE without ip add any ip to eth2.2 
#ifconfig eth2.2 10.10.99.1 up
rmmod igmpsn
# Forcing setting IGMPv2
echo "2" > /proc/sys/net/ipv4/conf/all/force_igmp_version
# route add -net 239.0.0.0 netmask 255.0.0.0 br0 (не обязательно, работает без этого маршрута)
iptables -D INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
iptables -I INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
udpxy -a br0 -p 8888 -m eth2.2 -c 20 -B 4Kb -R -1
}

stop() {
iptables -D INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT
killall updpxy
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        sleep 1
        start
        ;;
    link_up)
        ;;
    ppp_up)
        ;;
    link_down)
        ;;
    ppp_down)
        ;;
    *)
        echo "Usage: $0 {start|stop|restart|link_up|link_down|ppp_up|ppp_down}"
        ;;
esac 

описание сети

/media/DISK_A1/system/root # ifconfig
br0       Link encap:Ethernet  HWaddr CC:5D:4E:2B:EF:7C
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:21735 errors:0 dropped:0 overruns:0 frame:0
          TX packets:65135 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3741613 (3.5 MiB)  TX bytes:64720425 (61.7 MiB)

eth2      Link encap:Ethernet  HWaddr CC:5D:4E:2B:EF:7C
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:85154 errors:0 dropped:0 overruns:0 frame:0
          TX packets:37285 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:68109220 (64.9 MiB)  TX bytes:6570854 (6.2 MiB)
          Interrupt:3

eth2.1    Link encap:Ethernet  HWaddr CC:5D:4E:2B:EF:7C
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1045 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4182 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:179740 (175.5 KiB)  TX bytes:1053752 (1.0 MiB)

eth2.2    Link encap:Ethernet  HWaddr CC:5D:4E:2B:EF:7D
          inet addr:31.148.52.208  Bcast:31.148.52.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:66859 errors:0 dropped:0 overruns:0 frame:0
          TX packets:14842 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:64749483 (61.7 MiB)  TX bytes:1660535 (1.5 MiB)

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

ra0       Link encap:Ethernet  HWaddr CC:5D:4E:2B:EF:7C
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:46270 errors:0 dropped:0 overruns:0 frame:0
          TX packets:67469 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:7574477 (7.2 MiB)  TX bytes:68589650 (65.4 MiB)
          Interrupt:4

49

Re: UDPXY на Keenetic

Sabsem, uppxy при этом запускается?
Попробуйте удалить "iptables -D INPUT -i eth2.2 -d 239.0.0.0/8 -j ACCEPT" в функции start.
При подобных проблемах следует запускать приложения ручками, или вставлять отладочные echo или logger в скрипты.

Как я написал в wiki:

Не следует относится к этим скриптам, как к окончательным и устоявшимся. Часто их можно и нужно редактировать, дорабатывать под себя. После таких доработок переименуйте окончательный вариант скрипта K??* в S??* для автоматического запуска.

Похоже никто wiki не читает  sad. Это видно по статистике googlecode.

50

Re: UDPXY на Keenetic

Приветствую, форумчане. Существует такая проблема: У моего Екатеринбургского провайдера IPTV имеет зашифрованные каналы, поэтому заставляют пользоваться либо VLC плеером, либо UDPXY со встроенным механизмом шифрования ссылка на UDPXY http://dl.dropbox.com/u/6788542/udpxy-acrypt-src.tar.gz и на библиотеку  http://promo.weburg.net/vlc-src/libacrypt.so-mips. Подскажите пожалуйста, как мне установить это дело в мой ***** перешитый в Keenetic