0

I am using my computer for watching TV and also for internet browsing(listening to youtube, soundcloud, etc.).
For watching TV I am using m3u playlist, with a IP addresses from multicast network(e.g. udp://@232.4.1.1:5002 is the first channel). For the internet browsing, I am using broadcast network. So, because there are two networks, I supposed I would use VLANs and routing.

Because I would like to use one ethernet card, I created a VLAN, and on the modem side, I chose trunk port

VLAN3999(VLAN with ID 3999, for IPTV)
According to STP device, and some people that have the same ISP, the ID of VLAN should be 3999
IP address: 10.10.10.10
Subnet mask: 255.255.0.0
Gateway: 10.10.1.1 (I believe I don't need it, but without that, IPTV doesn't work)

Eth0 (I didn't create VLAN for internet access, because it works without)
IP address: 192.168.1.167
Subnet mask: 255.255.255.0
Gateway: 192.168.1.1
DNS: 193.2.1.66

Routing:
default traffic via 192.168.1.1, device eth0 .. default traffic goes through modem(192.168.1.1)
224.0.0.0/4 or 224.0.0.0 240.0.0.0, device VLAN3999 .. multicast traffic(from 224.0.0.0 to 239.255.255.255) goes through VLAN3999

I can't get both networks to work. Only the network, that is set to default routing, works. E.g. Internet works if default route is set to 192.168.1.1 and device eth0, but IPTV doesn't, and IPTV does work if default route is set to 10.10.1.1 and device VLAN3999, but internet doesn't.

I know there is some problem with routing, but what? It looks like the system only insist on default route, everything else, it just ignores. Weird

The OS I am using is ArchLinux.

1 Answer 1

1

Looks like you are going to have to set up some static routes. Get rid of the default gateway 10.10.1.1, and figure out what destinations you need to route via that IP. Then just add them manually like this for example:

# ip route add 10.0.0.0/16 via 10.10.1.1

If you get it to work properly then just put your static routes in a script when your interface comes up to make it all automatic. The scripts that get called automatically when you bring up an interface are called route-{ifname} from example:

# cat /etc/sysconfig/network-scripts/route-eth0
10.0.0.0/16 via 10.10.1.1 dev eth0

UPDATE:

Since your tcpdump capture shows this traffic 95.176.246.71.rfe > 232.4.1.1.rfe, adding that as a static route would be essential.

sudo ip route add 95.176.546.0/24 dev vlan3999
3
  • Where can I find the destination I need to route. The only thing I know is multicast IPs are from 224.0.0.0 to 239.255.255.255 and that setting routing to 224.0.0.0 240.0.0.0 in Ubuntu works. I just don't know why it doesn't work on Arch Linux.
    – kv1dr
    Commented Feb 7, 2015 at 18:15
  • 1
    To be absolutely sure, the best way is to use tcpdump and see what other IPs are being used by your IPTV provider while you are watching TV. That way you can make static routes for those specific networks. I am sure you will find other IPs besides the multicast addresses.
    – Ricardo
    Commented Feb 7, 2015 at 19:10
  • Thanks man for mentioning me tcpdump. Tcpdump showed me IP 95.176.246.71.rfe > 232.4.1.1.rfe: UDP length 1316 so I added route 95.176.246.0/24 to vlan3999(sudo ip route add 95.176.546.0/24 dev vlan3999) and now it works. Please write this as answer so I can mark your answer as correct
    – kv1dr
    Commented Feb 7, 2015 at 19:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .