# IPTV multicast list



## Seeker (Aug 20, 2014)

I have list of all multicast IP channels. Sometimes, few of them get IP changed by ISP. I find them, but would like to know how does STB receives or requests IP multicast list of all channels, so I could do the same?


----------



## macfreek (Sep 6, 2014)

This will depend on the set top box, as well as your ISP. I have a Amino set top box, and my ISP is XMS in the Netherlands, which uses the IPTV services of Glashart Media. In my situation, I had to connect my set top box to a specific UTP port on my modem, without a router in between. I used a (very old) Ethernet Hub (not a switch) to sniff the traffic, and found this behaviour:


 Set top box requests and ISP router does a DHCP discover/offer/request/ack exchange, and include vendor specific information (DHCP options 43 and 60). This vendor specific information contains a couple of URLs
 The set top box does some regular ARP, NTP and DNS request (it got the IP of the NTP and DNS in the DHCP message as well)
 The set top box makes a request to a server, and seems to receive some sort of X509 certificates
 The set top box makes a HTTP get request to the server for some data. It seems to use the URLs that was provided in the DHCP offer. In particular, it seems to request information about multicast channels, and than the tvmenu. In my case, the URL was http://w.zt6.nl/?multicastdomain=wba. While this DNS resolves over the regular internet, it seems it can only be reached over my IPTV channel. I'm certain the URL will differ in your case (I live in the Netherlands, and this is a Dutch URL). I assume you are looking for such a multicast list, but for your situation.
 The set top box makes a HTTP post request to the server, and receives a bunch of information concerning my subscriptions. At least the reply contains my name, address, type of subscription, pin code for parental controls, name of my ISP, etc.
 The set top box makes a HTTP post request to the server, and receives the program guide (EPG data) in zipped JSON format.
 The set top box makes a IGMPv2 request to a multicast address.
 The set top box send a UDP packed to this same multicast address.

I didn't bother to do more reverse engineering. In my case, all I wanted to do is place my FreeBSD router between the ISP and my set top box. Basically because I was curious, and didn't want to add a VLAN or second UTP cable in my house.


----------

