The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
IPTV за NAT freebsd 10, !*! KomaLex, 18-Дек-14, 12:19  [смотреть все]
В общем сломал уже голову, никак не могу настроить. Не работает и все тут. Изначально схема такая:
Есть один маршрутизатор, смотрит в интернет
TP-Link TL-WR741ND
У него внешний адрес статика, внутренний 192.168.8.1/24
В сети несколько IPTV приставок.
Через него все работает. Дальше появилась необходимость в более мощном маршрутизаторе. VPN тунели, прокси, блокировки сайтов и т.д. Решено поставить freebsd. ТП линк отключать не стал, одна ТВ приставка подключена к нему напрямую и все работало. Появилась необходимость настроить еще одну ТВ приставвку, и ТВ на компьютерах. И вот тут уже нет возможности подключить их всех к внешнему маршрутизатору, они все должны ходить через шлюз FreeBSD по заданным правилам. Никак не могу настроить все это дело.
Итак схема такая

WAN (внешний интерфейс смотрит в интернет. TP-Link)
|
LAN(NAT) 192.168.8.1/24 Включен IGMP proxy в автоматическом режиме. Тут IPTV работает.
|
WAN  192.168.8.3 (Freebsd внешний интерфейс)
|
LAN  192.168.10.253 (NAT PF) В этой подсети все компьютеры, тут то и нужно вещать IPTV.

Пробовал настраивать UDPPX что бы хотябы с компьютеров можно было смотреть. установил по умолчанию, запустил


ps -ax | grep udpxy
2783  -  S       0:00.05 udpxy -p 4022 -m 192.168.8.3 -a 192.168.10.253 -l /var/log/udpxy.log

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

настройки pf


]# cat /etc/pf.conf
int_if="re0"
ext_if="re1"
ext_gw="192.168.8.1"
lan_nt="192.168.10.0/24"
######################################
set block-policy return
scrub in all
######################################
######################################
rdr on $ext_if proto tcp from any to any port 80  -> 192.168.10.212
rdr on $ext_if proto tcp from any to any port 3389 -> 192.168.10.254
rdr on $ext_if proto tcp from any to any port 3080 -> 192.168.10.254
rdr on $ext_if proto tcp from any to any port 3081 -> 192.168.10.254
rdr on $ext_if proto tcp from any to any port 8080 -> 192.168.10.254
rdr on $ext_if proto tcp from any to any port 555 -> 192.168.10.254
rdr on $ext_if proto tcp from any to any port 554 -> 192.168.10.254
nat on $ext_if inet from $lan_nt to any -> ($ext_if)
######################################

pass log all
pass in proto igmp all allow-opts
pass out proto igmp all allow-opts
pass proto udp all allow-opts

Опции ядра:


device          pf
device          pflog
device          pfsync

options         ALTQ
options         ALTQ_CBQ        # Class Bases Queuing (CBQ)
options         ALTQ_RED        # Random Early Detection (RED)
options         ALTQ_RIO        # RED In/Out
options         ALTQ_HFSC       # Hierarchical Packet Scheduler (HFSC)
options         ALTQ_PRIQ       # Priority Queuing (PRIQ)
options         ALTQ_NOPCC      # Required for SMP build

options         MROUTING
options         DEVICE_POLLING
options         HZ=1000

Пробовал настроить Igmpproxy


phyint re1 upstream  ratelimit 0  threshold 1
        altnet 192.0.0.0/8

phyint re0 downstream  ratelimit 0  threshold 1


phyint pflog0 disabled
phyint pfsync0 disabled
phyint lo0 disabled
phyint ng0 disabled

Не работает.
igmpproxy -v -d /usr/local/etc/igmpproxy.conf выдает


received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
The origin for route 239.255.255.250 changed from 192.168.8.1 to 192.168.10.128
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.117 shorter (32 bytes) than hdr+data length (24+32)
received packet from 192.168.10.253 shorter (32 bytes) than hdr+data length (24+32)
received packet from 192.168.10.254 shorter (32 bytes) than hdr+data length (24+32)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.241 shorter (32 bytes) than hdr+data length (24+32)
received packet from 192.168.10.254 shorter (32 bytes) than hdr+data length (24+32)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.254 shorter (32 bytes) than hdr+data length (24+32)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)
Removing MFC: 192.168.10.128 -> 239.255.255.250, InpVIf: 1
MRT_DEL_MFC; Errno(49): Can't assign requested address
received packet from 192.168.10.110 shorter (28 bytes) than hdr+data length (20+28)

И ничего не показывает.
tcpdump на внутреннем интерфейсе

tcpdump -n -i re0 igmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on re0, link-type EN10MB (Ethernet), capture size 65535 bytes
capability mode sandbox enabled
18:41:56.819739 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:41:57.383493 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:41:58.319207 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:41:58.883136 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:42:00.819170 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:42:01.383218 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:42:02.319128 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:42:02.883248 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233

на внешнем тишина.

Пробовал вот этот скрипт

https://www.opennet.ru/tips/2649_multicast_proxy_igmp_freebsd...

Тоже не работает.
Пакеты видны и на внутреннем и на внешнем, но ничего не показывает.


[root@blgw /usr/ports/net/udpxy]# tcpdump -n -i re1 igmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on re1, link-type EN10MB (Ethernet), capture size 65535 bytes
capability mode sandbox enabled
18:44:41.846531 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:42.387113 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:43.347685 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:43.887653 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:43.973850 IP 192.168.10.254 > 225.1.2.240: igmp v2 report 225.1.2.240
18:44:45.848310 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:46.387220 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
^C
7 packets captured
109 packets received by filter
0 packets dropped by kernel
[root@blgw /usr/ports/net/udpxy]# tcpdump -n -i re0 igmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on re0, link-type EN10MB (Ethernet), capture size 65535 bytes
capability mode sandbox enabled
18:44:51.348279 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:51.887260 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:53.848426 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:54.387332 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:55.349210 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
18:44:55.887343 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
^C
6 packets captured
104 packets received by filter
0 packets dropped by kernel

Пробовал Freebsd напрямую подключать в интернет, без TP-link результат такой же. Не работает и все.
Голову сломал уже. Подскажите еще чем можно настроить? или что не так? И возможно ли вообще через 2 шлюза прокинуть?

mrouted тоже не работает.

  • IPTV за NAT freebsd 10, !*! KomaLex, 13:22 , 18-Дек-14 (1)
    >[оверквотинг удален]
    > 18:44:51.887260 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
    > 18:44:53.848426 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
    > 18:44:54.387332 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
    > 18:44:55.349210 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
    > 18:44:55.887343 IP 192.168.10.110 > 232.44.44.233: igmp v2 report 232.44.44.233
    > ^C
    > 6 packets captured
    > 104 packets received by filter
    > 0 packets dropped by kernel
    >

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


  • IPTV за NAT freebsd 10, !*! KomaLex, 12:20 , 19-Дек-14 (2)
    >[оверквотинг удален]
    > ^C
    > 6 packets captured
    > 104 packets received by filter
    > 0 packets dropped by kernel
    >
    > Пробовал Freebsd напрямую подключать в интернет, без TP-link результат такой же. Не
    > работает и все.
    > Голову сломал уже. Подскажите еще чем можно настроить? или что не так?
    > И возможно ли вообще через 2 шлюза прокинуть?
    > mrouted тоже не работает.

    Через UDPXY заработало, только через проигрыватель VLC. Включением на интерфейсах promisc mode. Но мне нужно что бы ИП ТВ приставки работали и на телевизор показывали.
    Кто то настроил через igmpproxy? или может есть этот скрипт модифицированый на замену IP подозреваю, что мультикаст реализован через L3 и там то как раз рубятся адреса локальные.

    • IPTV за NAT freebsd 10, !*! Andrew Kolchoogin, 21:08 , 20-Дек-14 (3)
      • IPTV за NAT freebsd 10, !*! KomaLex, 06:08 , 22-Дек-14 (4)
        >> Кто то настроил через igmpproxy? или может есть этот скрипт модифицированый на
        >> замену IP подозреваю, что мультикаст реализован через L3 и там то
        >> как раз рубятся адреса локальные.
        > Совершенно необязательно, может Multicast TTL выставлен в 2.
        > Тогда через первый Multicast-роутер данные пойдут, через второй — нет.

        Ну я на freebsd поднимал TTL пакетам, scrab in all min-ttl 10 не помогает. Да и потом, писал же что пробовал подключать напрямую шлюз на freebsd не помогает, все равно не работает.


        • IPTV за NAT freebsd 10, !*! KomaLex, 04:36 , 26-Дек-14 (5)
          Обновил ось до 10.1 поставил все патчи, обновил все порты включил на интерфесах
          ifconfig re1,0 promisc
          Заработало, но только через VLC плеер. И как то притормаживает, но это думаю уже с чем то другим связанно.
          А через их плеер, ну который провайдер рекомендует на своем сайте IP-TV pleer так и не работает ни в какую.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру