MikroTik RB750gr3 & Comhem IPTV

Har byggt om mitt egna nät här hemma och ersatte bl.a. vår router från Comhem (Technicolor TG389ac) med en MikroTik RB750gr3 (rekommenderas – visat sig vara ett riktigt kanonköp) . Dock var det inte helt självklart hur jag skulle få igång IPTV:n, EPG fungerade bra men fick ingen bild till en början. Så nu när jag väl fått det att lira tänkte jag slänga ihop en liten miniguide.. Mitt nät ser idag ut såhär:

TVBoxen hänger på ett eget interface i MikroTiken (Gi4) så slipper jag lasta övriga länkar med multicasten för IPTVn. Konfigen ser ut enligt följande: Först skapar vi ett IP-interface, lägger porten i en egen brygga samt aktiverar IGMP-Snooping.

/interface bridge
add fast-forward=no igmp-snooping=yes comment=iptv name=bridge2-iptv

/interface bridge port
add bridge=bridge2-iptv interface=ether4

/interface list member
add interface=bridge2-iptv list=LAN

/ip address
add address=192.168.2.1/24 interface=bridge2-iptv network=192.168.2.0

Fixade även DHCP-tilldelning för mediagatewayen:

/ip pool
add name=IPTV ranges=192.168.2.100-192.168.2.150
/ip dhcp-server
add address-pool=IPTV disabled=no interface=bridge2-iptv name=IPTV
/ip dhcp-server network
add address=192.168.2.0/24 gateway=192.168.2.1

Om man vill ha statisk tilldelning:

/ip dhcp-server lease
add address=192.168.2.100 mac-address=D4:0A:A9:A3:54:24 server=IPTV

Vi skapar sedan några brandväggsregler som accepterar IGMP & all UDP-trafik som är multicast (224.0.0.0/).  Kommer nog vara mer specifik här senare efter att ha sniffat lite mer trafik och fångat vilka multicast-adresser som faktiskt används. OBS – Som för vilken accesslista som helst måste dessa komma före generella drop-regler som är konfade(!).

/ip firewall filter
add action=accept chain=input comment=IPTV in-interface=ether1 protocol=igmp
add action=accept chain=forward dst-address=224.0.0.0/4 protocol=udp
add action=accept chain=input dst-address=224.0.0.0/4 protocol=udp

Nu återstår det endast att konfigurera upp IGMP Proxy, som standard följde det inte med något paket som hanterade Multicast i min RB750gr3 utan det måste tankas hem separat här (MMIPS -> Extra Packages). Efter installation & omstart är det bara att sätta ether1 (som är mitt WAN-interface) som upstream och alternative subnets till 0.0.0.0/0 tillsvidare (acceptera allt). Aktiverar även Quick-leave då jag bara har en TVbox bakom min router, annars är det viktigt ändra till no här(!).

/routing igmp-proxy
set quick-leave=yes
/routing igmp-proxy interface
add alternative-subnets=0.0.0.0/0 interface=ether1 upstream=yes
add alternative-subnets=0.0.0.0/0 interface=bridge2-iptv

Nu ska förhoppningsvis TVn hoppa igång. 🙂

[admin@MikroTik] > /routing igmp-proxy mfc print
Flags: X - disabled, A - active, D - dynamic 
 # GROUP SOURCE UPSTREAM-INTERFACE ACTIVE-DOWNSTREAM-INTERFACES 
 0 AD 234.83.248.172 83.255.216.172 ether1 bridge2-iptv 
 1 AD 234.80.217.1 83.255.223.228 ether1 bridge2-iptv

[admin@MikroTik] > /routing igmp-proxy interface print status 
Flags: X - disabled, I - inactive, D - dynamic, U - upstream 
 0 U interface=ether1 threshold=1 alternative-subnets=0.0.0.0/0 upstream=yes source-ip-address=x.x.x.x rx-bytes=927867814 rx-packets=699004 tx-bytes=0 tx-packets=0

1 interface=bridge2-iptv threshold=1 alternative-subnets=0.0.0.0/0 upstream=no querier=yes source-ip-address=192.168.2.1 rx-bytes=0 rx-packets=0 tx-bytes=927885228 tx-packets=699019