Chromecast ethernet DIY adapter works, but unable to start cast from wifi via router, why?

Jul 9, 2015
11
0
0
Visit site
Chromecast ethernet DIY adapter works, but unable to start cast from wifi via router

So I made myself a Ethernet adapter for my Chromecast, using a Dlink usb adapter, some cables and some soldering....
It is working, I can see it gets assigned an IP address from my dhcp server, and I can stream to ut using i.e. Chromecast extension in chrome on a stationary LAN PC with no wifi.

So Chromecast is on my Ethernet now, and streaming from LAN is working. That confirms my DIY kit worked, right?

Before connecting my Chromecast to Ethernet streaming from wifi was working fine.

My Lan is connected to a wifi wireless access point via a Linux server, and I know the LAN IP address of the chromecast device.

The Linux server does not have any active firewall rules between wifi and LAN zones (shorewall policy ACCEPT in both directions)

The Problem:
I can ping chromecast from any wifi unit, BUT.....No wifi unit is able to "find" the chromecast device to start streaming to it.

So when I do a ping from a wifi unit, that ping goes to the wifi access point, on to the eth2 port of my linux server, gets routed to eth1 port, and passed through a hub before it reaches the chromecast device. That is working, I get the ping response....so why can't my wifi units "find" the chrome cast device?

Anyone got any idea why this may be?

Other network traffic, like i.e. remote desktop, works just fine between wifi and LAN.
 
Last edited:

Rukbat

Retired Moderator
Feb 12, 2012
44,529
26
0
Visit site
Re: Chromecast ethernet adapter, wifi units unable to find chromecast

So I made myself a Ethernet adapter for my Chromecast, using a Dlink usb adapter, some cables and some soldering....
It is working, I can see it gets assigned an IP address from my dhcp server, and I can stream to ut using i.e. Chromecast extension in chrome on a stationary LAN PC with no wifi.

So Chromecast is on my Ethernet now, and streaming from LAN is working. That confirms my DIY kit worked, right?
For casting through the LAN, yes.

My Lan is connected to a wifi wireless access point via a Linux server, and I know the LAN IP address of the chromecast device.

The Linux server does not have any active firewall rules between wifi and LAN zones (shorewall policy ACCEPT in both directions)

The Problem:
I can ping chromecast from any wifi unit, BUT.....No wifi unit is able to "find" the chromecast device to start streaming to it.

So when I do a ping from a wifi unit, that ping goes to the wifi access point, on to the eth2 port of my linux server, gets routed to eth1 port, and passed through a hub before it reaches the chromecast device. That is working, I get the ping response....so why can't my wifi units "find" the chrome cast device?
Because Chromecast doesn't work the same way other devices do - it needs an active 802.11 connection to be found.

Other network traffic, like i.e. remote desktop, works just fine between wifi and LAN.
But direct connection between a wifi device and Chromecast's wifi radio doesn't - evidently that radio isn't connected for some reason, or your modification is causing the Chromecast's OS to ignore wlan0 in favor of eth0.

Using the original setup - wlan0 in the Chromecast dongle - will allow it to get streams from both wired and wireless connections, as far as I've seen. (I only tried an eth connected laptop once, just to see, but it streamed from Chrome to a wirelessly-connected Chromecast.)
 
Jul 9, 2015
11
0
0
Visit site
Re: Chromecast ethernet adapter, wifi units unable to find chromecast

For casting through the LAN, yes.

Because Chromecast doesn't work the same way other devices do - it needs an active 802.11 connection to be found.

But direct connection between a wifi device and Chromecast's wifi radio doesn't - evidently that radio isn't connected for some reason, or your modification is causing the Chromecast's OS to ignore wlan0 in favor of eth0.

Using the original setup - wlan0 in the Chromecast dongle - will allow it to get streams from both wired and wireless connections, as far as I've seen. (I only tried an eth connected laptop once, just to see, but it streamed from Chrome to a wirelessly-connected Chromecast.)


For setup I understand that the only way is to use an wifi network, however that part is done, and I have been using it on wifi for some time now. The way I understand it the chromecast device disables wifi in favor of Ethernet. Since my network, wifi and LAN is all connected together via access point and Linux server, traffic should be routed through.
When a Chromecast app searches for an already set up chromecast, it sends IP packets on to the network. The application doesn't even know if it is going through an wifi network or a wired network, and shouldn't care. It opens a socket, and sendsservice discovery request on DIAL or mDNS depending on SDK version, and this is where I think?! the problem could be. Maybe these broadcast requests are not routed through my Linux server like regular non broadcast IP packets?

Reading up on this url:
Chromecast Deployment Guide, Release 7.6 - Cisco

I also see some interesting talk about TTL beeing set to 1.

Here is a sketch of my network:
ipsetup.png

eth0 Internet IP
eth1 10.20.30.253
eth2 10.20.31.253
Chromecast 10.20.30.143

So chromecast device is connected to my LAN, and has the IP address 10.20.30.143. I can ping this IP address from my wifi laptop, meaning the routing of ICMP packets do work throught the chain.

Futher more I can access i.e. http://10.20.30.143:8008/apps/YouTube
and get the response:

<?xml version="1.0" encoding="UTF-8"?>
<service xmlns="urn:dial-multiscreen-org:schemas:dial">
<name>YouTube</name>
<options allowStop="true"/>
<state>stopped</state>
<discovery>DIAL,CastV2</discovery>
</service>

My laptop is able to communicate through my network chain, to the Chromecast device that is on my LAN.

Again, it seems to me that the discovery of service is the issue, DIAL og mDNS broadcast messages not getting through?

If disconnect my Ethernet adapter from chrome cast, it connects to my WiFi access point again, and gets a new ip address:
Chromecast on wifi network: 10.20.31.186.
In this scenario my WiFi Laptop is able to "discover" the Chromecast device, but my stationary PC is not.
The scenario is now completely reversed. My stationary PC is able to ping the Chromecast device on the wifi network, and it's able to access the url: http://10.20.31.186:8008/apps/YouTube

The Google cast extension to Chrome is however not able to find the device any longer (like it was when Chromecast was connected to LAN via Ethernet adapter).

Again this seems to me to be an issue with the broadcast messages not getting through?

My Linux server is running ubuntu with shorewall, and it does have an ACCEPT policy between LAN and WiFi, as well as routing between the two subnets, but I do not know how the DIAL and mDNS broadcast messages will get handled, or if indeed the TTL=1 mentioned in the url above comes into play.

What I want to achieve is that the Chromecast device is available in both LAN and wifi zones, so if anyone has done similar setups, or can see what the problem is and how to fix it that would be greatly appreciated.

So if anyone can help to resolve this
 

Forum statistics

Threads
943,134
Messages
6,917,447
Members
3,158,834
Latest member
Nikoczzzz