Page 5 of 6 FirstFirst ... 3456 LastLast
Results 61 to 75 of 86

Thread: ebtables и multicast iptv по wi-fi

  1. #61

    multicast на wl-700ge

    Помогите, пожалуйста настроить роутер для приема мультикаста и возможно ли это вобще.

    Нашел интересный скрипт для OpenWrt создающий мост между сетками для мультикаста.
    Code:
    Code:
    #!/bin/sh
    # Start/stop/restart the bridge.
    #
    
    EBTABLES=ebtables
    IFCONFIG=ifconfig
    
    BRIF="br0"
    
    check_bridge() {
      return `$IFCONFIG | grep $BRIF -c`
    }
    
    bridge_start() {
    
        echo "  Starting bridge.."
        echo "   - Setting ebtables rules.."
    
        # Clear any rules
        $EBTABLES -t broute -F
        $EBTABLES -F
    
        # Default is routing
        $EBTABLES -t broute -P BROUTING DROP
    
        # IGMP bridging is needed
        $EBTABLES -t broute -A BROUTING -p 0x800 --ip-proto igmp -j ACCEPT
    
        # UDP multicast bridging (use --ip-sport or --ip-dport if your traffic is only on one port)
        $EBTABLES -t broute -A BROUTING -d 01:00:00:00:00:00/01:00:00:00:00:00 -p 0x800 \
          --ip-proto udp --ip-dst your_multicast_group_(or 224.0.0.0/4 here) -j ACCEPT
    
        # All other bridging is denied
        $EBTABLES -t broute -A BROUTING -j DROP
    }
    
    bridge_stop() {
      check_bridge
      if [ $? -gt 0 ]; then
        echo "  Stopping bridge.."
                                                                                                                     
        $EBTABLES -t broute -F                                                                                       
        $EBTABLES -t broute -P BROUTING ACCEPT                                                                       
      fi                                                                                                             
    }                                                                                                                
                                                                                                                     
    bridge_restart() {                                                                   
      echo "Restarting bridge:  "                                                        
      bridge_stop                                                                                                    
      bridge_start                                                                                                   
    }                                                                                                                
                                                                                                                     
    bridge_status() {                                                                    
      check_bridge                                                                                                   
      if [ $? -eq 0 ]; then                                                                                          
        echo "  Bridge ($BRIF) status: inactive"                                                                     
        exit 2                                                                                                       
      else                                                                                                           
        echo "  Bridge ($BRIF) status: active"                                                                       
        exit 1                                                                                                       
      fi                                                                                                             
    }                                                                                                                
                                                                                                                     
    case "$1" in                                                                         
    'start')                                                                             
      bridge_start                                                                       
      ;;                                                                                 
    'stop')                                                                              
      bridge_stop                                                                        
      ;;                                                                                 
    'restart')                                                                           
      bridge_restart                                                              
      ;;                                        
    'status')                                   
      ;;                                        
    *)                                          
      echo "usage $0 start|stop|restart|status"
    esac
    
    bridge_status
    Last edited by Omega; 09-03-2012 at 15:49. Reason: fixed

  2. #62
    Несколько вопросов по прошивке:

    1. Если скомпилить ebtables будет ли все нормально работать? Помнится на 2.4 были жуткие проблемы с этим модулем.

    2. Что с UPNP? Бинарник вылетает с ошибкой.

    3. Нет ли там в проекте драйвера UVC (Video for linux) и вообще можно ли его в принципе скомпилять для этого ядра? В ванильном он появился несколько позже.

  3. #63
    Помогите со сборкой прошивки. У меня валится на применении первого броадкомовского патча на ядро (за основу взято 2.6.22.19).

    Кто уже собирал эту прошивку, подскажите плз.

    В исходниках прошивки есть архив lzma457.tbz. В нем нет папки CPP/7Zip/Compress/LZMA_LIB, однако в патче lzma457.patch есть дифы на файлы из этой папки. Одкуда берется LZMA_LIB?

    В итоге прошивка не собирается. Во первых без папки в broadcom/src/lzma
    ругается:
    Code:
    make: *** No rule to make target `/root/router/broadcom/src/lzma/CPP/7zip/Compress`, needed by `/root/router/broadcom/src/lzma`. Stop.
    Но если вручную распаковать lzma457.tbz, ядро собирается, но далее валится при make install из за отсутствующей LZMA_LIB

    Как исправить ситуацию?
    Last edited by Omega; 09-03-2012 at 14:12. Reason: fixed

  4. #64
    Quote Originally Posted by Krey View Post
    Кто уже собирал эту прошивку, подскажите плз.

    В исходниках прошивки есть архив lzma457.tbz. В нем нет папки CPP/7Zip/Compress/LZMA_LIB, однако в патче lzma457.patch есть дифы на файлы из этой папки. Одкуда берется LZMA_LIB?

    В итоге прошивка не собирается. Во первых без папки в broadcom/src/lzma
    ругается:
    Code:
    make: *** No rule to make target `/root/router/broadcom/src/lzma/CPP/7zip/Compress`, needed by `/root/router/broadcom/src/lzma`. Stop.
    Но если вручную распаковать lzma457.tbz, ядро собирается, но далее валится при make install из за отсутствующей LZMA_LIB

    Как исправить ситуацию?
    А что diff настолько ущербен что не может создавать файлы и папки если их нету?

    Могу предложить руками наложить этот патч на распакованную папку.

  5. #65
    Quote Originally Posted by Goletsa View Post
    А что diff настолько ущербен что не может создавать файлы и папки если их нету?
    Могу предложить руками наложить этот патч на распакованную папку.
    Спасибо, помогло.

  6. #66
    На этой прошивке не работают NETFILTER_XTABLES. При установке этой опции в ядре, роутер перестает отвечать на пакеты.

    Жаль что такую вроде бы простую операцию как объединение двух роутеров тунелем второго уровня с резкой DHCP траффика реализовать нельзя.

  7. #67
    Quote Originally Posted by Krey View Post
    На этой прошивке не работают NETFILTER_XTABLES. При установке этой опции в ядре, роутер перестает отвечать на пакеты.
    Жаль что такую вроде бы простую операцию как объединение двух роутеров тунелем второго уровня с резкой DHCP траффика реализовать нельзя.
    можно, через pptp/openvpn, ipsec врядли, l2tp возможно.
    можно поискать по форуму, периодически темы с информацией возникали.
    p.s а при чем тут NETFILTER_XTABLES? оно и так включено.

  8. #68
    Quote Originally Posted by theMIROn View Post
    можно, через pptp/openvpn, ipsec врядли, l2tp возможно.
    можно поискать по форуму, периодически темы с информацией возникали.
    p.s а при чем тут NETFILTER_XTABLES? оно и так включено.
    Я пытался использовать openvpn в режиме бриджа. Сама по себе openvpn работала конечно отлично, но кроме этого что бы все заработало нужно блокировать в тунеле прохождение DHCP трафика. Это можно сделать тремя спосабами:
    1. ebtables
    2. модуль ipt_physdev для iptables
    3. плугин для openvpn

    Для третьего способа я решения пока не нашел, первые два на этой прошивке неработают. Как только включаешь минимально необходимые опции в ядре для их работы роутер перестает отвечать по сети.

    В прошивке с транка можно включить ebtables. При этом необходимые модули будут подключаться, но при выполнении комадны
    ebtables -A INPUT -i tap0 -p IPv4 --ip-protocol udp --ip-destination-port 67:68 -j DROP

    возникает ошибка:
    The kernel doesn't support a certain ebtables extension, consider recompiling your kernel or insmod the extension.
    в логе:
    kernel msg: ebtables bug: please report to author: match->check failed

    Все нужные модули при этом загружены:

    Ebtables v2.0 registered
    kernel msg: ebtables bug: please report to author: match->check failed
    kernel msg: ebtables bug: please report to author: match->check failed
    [admin@gw root]$ lsmod
    Module Size Used by Tainted: P
    ebt_ip 1984 0
    ebtable_filter 1760 0
    ebtables 21888 2 ebt_ip,ebtable_filter
    tun 9632 0
    usb_storage 96192 1
    sd_mod 25008 2
    scsi_mod 104768 2 usb_storage,sd_mod
    ehci_hcd 36112 0
    ohci_hcd 19856 0
    usbcore 137872 4 usb_storage,ehci_hcd,ohci_hcd
    ipt_recent 8832 2
    nf_nat_ftp 2848 0
    nf_conntrack_ftp 8448 1 nf_nat_ftp
    wl 2051616 0
    igs 17936 1 wl
    emf 22688 2 wl,igs
    et 58752 0
    [admin@gw root]$
    При этом комманды ebtables без использования модуля ebt_ip работают нормально: ebtables -A INPUT -i vlan1 -p IPv4 -j DROP

    Мне кажется это оттого что в правилах и конфигах ядра для ebtables не выставлены все нужные зависимости. Конкретно опция NETFILTER_XTABLES нужна для работы ebtables, но по умолчанию она выключена или отсутствует. После ее включения повторяется все то же что и при включении ipt_physdev. Роутер практически не отвечает по сети (очень изредка icmp все же проскакивает).
    Last edited by Krey; 02-04-2010 at 11:08.

  9. #69
    Попрошу разработчиков включить в конфигурации ядра
    CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m

    Это позволит, в частности, фильтровать multicast на одном из интерфейсов (например, WLAN) в бридже.
    © 2008-2013 ABATAPA WL-500gP/128M / Asus RT-N16 / USB Flash / VLAN / PPPoE / VoIP / nShaper / NAS: iStor is607, Sarotech NAS-20, QNap 109 Pro / NFS / Принтер / etc

  10. #70
    Quote Originally Posted by ABATAPA View Post
    Попрошу разработчиков включить в конфигурации ядра
    CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m

    Это позволит, в частности, фильтровать multicast на одном из интерфейсов (например, WLAN) в бридже.
    а сам пробовал? в плане замедления, увеличения размера?

  11. #71
    Quote Originally Posted by theMIROn View Post
    а сам пробовал? в плане замедления, увеличения размера?
    Замедления чего? Ядра?
    Замедление там не больше, чем от самого netfilter.
    Это всего лишь еще одна цель.
    Нужно всего лишь включить "Bridged IP/ARP packets filtering" и "CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m"
    © 2008-2013 ABATAPA WL-500gP/128M / Asus RT-N16 / USB Flash / VLAN / PPPoE / VoIP / nShaper / NAS: iStor is607, Sarotech NAS-20, QNap 109 Pro / NFS / Принтер / etc

  12. #72
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ABATAPA View Post
    Замедления чего? Ядра?
    Замедление там не больше, чем от самого netfilter.
    Это всего лишь еще одна цель.
    Типичное заблуждение
    Нужно всего лишь включить "Bridged IP/ARP packets filtering" и "CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m"
    Увы это невозможно, т.к. BRIDGE_NETFILTER несовместим с броадкомовским драйвером WiFi.

  13. #73
    Quote Originally Posted by lly View Post
    Типичное заблуждение
    Вот только не надо. Замедления на ядре с BRIDGE_NETFILTER и незагруженным модулем (на других системах, в том числе и MIPS) практически нет.

    Quote Originally Posted by lly View Post
    Увы это невозможно, т.к. BRIDGE_NETFILTER несовместим с броадкомовским драйвером WiFi.
    Это точно?
    Плохо, если это так. Это хороший способ фильтровать мультикаст на бридже...
    © 2008-2013 ABATAPA WL-500gP/128M / Asus RT-N16 / USB Flash / VLAN / PPPoE / VoIP / nShaper / NAS: iStor is607, Sarotech NAS-20, QNap 109 Pro / NFS / Принтер / etc

  14. #74
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by ABATAPA View Post
    Вот только не надо. Замедления на ядре с BRIDGE_NETFILTER и незагруженным модулем (на других системах, в том числе и MIPS) практически нет.
    Overhead на увеличении структур и кол-ва проверок игнорируем? Результаты тестов есть?
    Плохо, если это так. Это хороший способ фильтровать мультикаст на бридже...
    Как минимум, нужно корректировать struct sk_buff. Возможно что-то еще связанное - глубже не смотрел.

  15. #75
    Quote Originally Posted by lly View Post
    Overhead на увеличении структур и кол-ва проверок игнорируем? Результаты тестов есть?
    Чтобы иметь тесты на ЭТОМ устройстве, нужно, как минимум, чтобы это заработало.

    Как минимум, нужно корректировать struct sk_buff. Возможно что-то еще связанное - глубже не смотрел.

    Все намного хуже. Собрал модуль и iptables. Но:
    "using --physdev-out in the OUTPUT, FORWARD and POSTROUTING chains for non-bridged traffic is not supported anymore."

    И это довольно давно, судя по git-commits.

    Как теперь фильтровать мультикаст на интерфейсе в бридже - даже и не знаю...
    Last edited by ABATAPA; 26-04-2010 at 05:31.
    © 2008-2013 ABATAPA WL-500gP/128M / Asus RT-N16 / USB Flash / VLAN / PPPoE / VoIP / nShaper / NAS: iStor is607, Sarotech NAS-20, QNap 109 Pro / NFS / Принтер / etc

Page 5 of 6 FirstFirst ... 3456 LastLast

Similar Threads

  1. Settings for IPTV through this router
    By Tellus1 in forum WL-500gP Tutorials
    Replies: 16
    Last Post: 17-10-2010, 20:56
  2. WL700GE igmp (multicast).
    By Gavrila in forum WL-700g Firmware Discussion
    Replies: 2
    Last Post: 05-10-2008, 09:36
  3. Multicast problem
    By luon in forum WL-500w Q&A
    Replies: 4
    Last Post: 03-07-2008, 12:26
  4. playing RTSP multicast streams
    By repulsive in forum WL-500gP Q&A
    Replies: 0
    Last Post: 28-04-2008, 23:29

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •