Clicky

20190303

XS4ALL (KPN) IPTV met pfSense

Introductie

XS4ALL en KPN bieden Internet Protocol Television (IPTV) aan. Per maart 2019 wordt de netwerk configuratie aangepast. Een mooi moment om de bestaande pfSense en managed switch situatie onderhanden te nemen. Uiteindelijk doel is om met alleen een pfSense computer alle netwerk functies aan te bieden (Internet bedraad en WiFi, telefonie, TV, gast bedraad en WiFi, OpenVPN, pfBlockerNG).

Het doel van deze handleiding is te laten zien hoe IPTV geconfigureerd moet worden voor pfSense en een Set-top-Box (STB). De hier geboden configuratie is toegespitst op standaardisatie, werking en betrouwbaarheid en niet op optimalisatie.

IPTV overzicht

Het aantal gewenste netwerkdiensten vereist een computer met meerdere netwerk aansluitingen. Hier wordt een computer met 6x Intel Gigabit aansluitingen gebruikt.

De minimum configuratie voor IPTV is een computer met 3 netwerk aansluitingen (WAN, LAN, IPTV). Dit mag best een oud beestje zijn waar bijvoorbeeld twee netwerk kaarten bij geplaatst zijn. Controleer vooraf of de ethernet chip van de adapter ondersteund wordt in pfSense. Merk op dat de Interface namen in pfSense afhankelijk zijn van de gebruikte ethernet chip. In dit voorbeeld worden Intel chips gebruikt die pfSense vertaald in "igbN".

Dit is de minimum IPTV configuratie:

IPTV componenten

IPTV maakt gebruik van een aantal netwerk diensten:
  • WAN (PPPoE over VLAN 6)
  • VLAN 4 (IPTV)
  • IGMP Proxy
  • DHCP
  • Een apart subnet

Netwerk configuratie

 De groen gemarkeerde Interfaces worden gebruikt voor de minimum configuratie van IPTV:

 

XS4ALL IPTV

Om IPTV verkeer te filteren in het binnenkomende dataverkeer, moet een virtuale netwerk-interface aangemaakt worden voor VLAN4 op igb0:




WAN_IPTV Interface

De volgende configuratie is nodig om Routed IPTV te kunnen verwerken. Deze virtuele interface (igb0.4) moet een IP adres aanvragen bij XS4ALL en bij de aanvraag een aantal extra parameters opsturen:
  • Send options (DHCP option 60): 
    • dhcp-class-identifier "IPTV_RG"
  • Request options (DHCP option 55: 1, 3, 28, 121): 
    • subnet-mask, routers, broadcast-address, classless-routes

 

 Advanced Configuration:



Met deze instellingen zal de WAN_IPTV Interface een DHCP adres van XS4ALL ontvangen:



De IPTV verbinding tussen pfSense en XS4ALL is nu klaar.

IPTV_STB_1 Interface

De STB heeft een bekabelde aansluiting op pfSense Interface igb3. Aan de poort wordt een vast IP adress toegekend (192.168.250.254/24) van een apart subnet. 

 

 

IPTV_STB_1 DHCP 

De STB krijgt een DHCP adres. Hiervoor moet een DHCP server voor de IPTV_STB1 Interface geconfigureerd worden in het subnet van de igb3 Interface:

 

Na een reboot (power cycle) van de STB zal de progressbar voorbij 10% (DHCP adress aanvraag) moeten komen.

IGMP Proxy

Voor het routeren van Multicast (TV) en Unicast (On Demand) verkeer wordt een IGMP Proxy gebruikt. Dit zijn de instellingen:




Firewall rules

De Interfaces tussen pfSense en XS4ALL (igb0.4) en tussen pfSense en de STB (igb3) zijn nu geconfigureerd. Nu moeten de juiste Firewall Rules aangemaakt worden om het IPTV verkeer te routeren.

 

WAN_IPTV Rules

 

 

IPTV_STB1 Rules

 


Vergeet niet om bij alle Firewall Rules Multicast verkeer toe te laten:

 

Met deze instellingen zal de STB met de juiste XS4ALL IPTV netwerken verbonden worden. Ook zal de STB opnieuw de firmware kunnen laden.

 

Meer dan een STB

Met een werkende IPTV configuratie is het simpel om meer dan een STB aan te sluiten. Mogelijkheden:
  1. Sluit een hub of switch aan op igb3 en koppel de STBs met de hub/switch. igb3 heeft een DHCP server en zal elke STB een eigen IP adres geven met de juiste instellingen voor IPTV. De STB heeft "slechts" een 100Mb interface dus zelfs een 100Mb hub/switch voldoet. Elke STB stream is ongeveer 15Mb/s dus er kunnen makkelijk 3 STBs aangesloten worden.

  2. Als je toch meer dan 3 ethernet aansluitingen hebt op je pfSense computer, dupliceer dan de instellingen van IPTV_STB1 naar de volgende Interface. Gebruik wel een apart subnet voor de extra STB(s)
 
Real Time Web Analytics