Saturday, March 19, 2016

Apple TV Home Sharing: Ethernet to Wi-Fi

Apple:

For Home Sharing, all of your devices need to be on the same home network.

Unfortunately, they don’t define “network.” I had hoped that I would be able to connect my Apple TV 3 to Ethernet (because it sometimes loads video content very slowly over Wi-Fi) and use it to access music from my MacBook Pro (which is on Wi-Fi because it isn’t near an Ethernet jack and doesn’t have a spare Thunderbolt port for the Ethernet adapter). I’m pretty sure this used to work. And AirPlay works with this setup. However, currently Home Sharing only works if they are both on the same Wi-Fi network. Thus, using Home Sharing is a multi-step process. The Apple TV must be unplugged from Ethernet, so that it will switch over to Wi-Fi. And the Mac must be switched from the 5 GHz Wi-Fi network to the slower one, because the 5 GHz one always stalls on the Apple TV.

12 Comments RSS · Twitter

"Unfortunately, they don’t define “network."

Or, perhaps they just define it wrongly? Is there any accepted definition of "same home network" that means "same 2.4 GHz Wi-Fi network"? (Or, to be generous, even ""same Wi-Fi network"?)

"Thus, using Home Sharing is a multi-step process. The Apple TV must be unplugged from Ethernet, so that it will switch over to Wi-Fi. And the Mac must be switched from the 5 GHz Wi-Fi network to the slower one, because the 5 GHz one always stalls on the Apple TV."

See? It just works™. Also, you were holding it wrong.

I have a working setup very similar to the one you want:

- My Apple TV has its Wi-Fi disabled and is plugged into an Ethernet switch.

- My Mac Mini is connected to a 5 Ghz Wi-Fi network provided by an Apple AirPort Express 2.

- The Apple AirPort Express 2's Ethernet uplink port is then connected to the Ethernet switch

- The Ethernet switch is connected to a Linux-based router, on the other side of which is a cable modem / the Internet

My Apple TV's Computers App can see the iTunes instance running on my Mac Mini and play its audio and video content.

Similarly, iTunes running on my Mac Mini can see the Apple TV and play audio and video content to it via AirPlay.

When Apple says "same home network", they specifically mean the same IP subnetwork. I suspect that in your case your wireless base station is configured to do network address translation (most base stations are configured to do this by default), and thus your Macbook Pro and your Apple TV are not on the same IP subnetwork.

In my case, my AirPort base station is configured to be a bridge for this purpose, and not a router, and the wired and wireless networks share a common IP subnetwork.

Cheers!

@Anon Thanks for trying to help. I have my AirPort Extreme’s uplink port connected to the cable modem, and it’s set to “DHCP and NAT” mode. I think without NAT I would not be able to have multiple devices sharing the same Internet connection. I don’t think a two-router setup should be necessary because the AirPort Extreme is supposed to put all the devices on the same IP subnetwork. I just checked the IP addresses of devices connected via Ethernet, Wi-Fi, and 5 GHz Wi-Fi, and they are all 10.0.1.x. So…that seems good.

Michael, this has always worked for me.

The Apple TV and the Mac must be on the same "network" in terms of Bonjour discovery. That means 2 things. First, both devices must be able to to communicate directly to each other on the required ports (if they can ping each other that's probably good enough on most networks). Second, they need to be able to discover each other. This means broadcast/multicast mDNS traffic must work between the two devices.

I suspect thew problem might be a double NAT. Does your cable modem provide NAT? Is the Apple TV plugged into the cable modem or the AirPort Base Station? If NAT is enabled on the base station, the wireless clients connect to the AirPort and the wired clients connect to the cable modem then you're not going to get mDNS routing.

@D I don’t think the cable modem provides NAT (just one port), but it shouldn’t matter because all devices are connected to the AirPort Extreme. As I said, discovery does work for AirPlay (although the Apple TV shows up as “Living Room Apple TV (332)”, so something isn’t right).

My home sharing iTunes iMac is on Ethernet. My 2 Apple TVs (different generations) are both on wifi and both on different wifi networks (that are connected to same network as the Ethernet iMac). Both Apple TV play media from the iMac via Home Sharing.

My setup is: cable modem with 1 Ethernet port. That port is connected to a ~2009 AirPort Extreme that runs wifi network A. iMac is connected to that AirPort via Ethernet. Another (new) AirPort Extreme is connected via Ethernet to the first AirPort and runs Wifi network B.

So it _seems_ like your setup should work of mine does.

I have two Apple TV 3s. One's connected via Wi-Fi, the other Ethernet and I have no problems.

Many years ago at WWDC I witnessed a very animated Apple Engineer who worked on Home Sharing at an after party. He was ranting about the compromises he was forced to make by the media companies so that they'd allow their content to be licensed and shared via Home Sharing.

My memory is very fuzzy but I think he said he was forced to set the TTL to some arbitrarily low figure so that packets wouldn't "escape". Maybe on Ethernet you've got too many hops in your network and your packets are being discarded, whereas on Wi-Fi you're under the limit. I don't know but as I wrote above I haven't had any problems.

> although the Apple TV shows up as “Living Room Apple TV (332)”, so something isn’t right

I assign static IPs to everything so I've never experienced this weirdness. Maybe that's the problem. I don't know. When the just work they're great, when they don't ୧༼ಠ益ಠ༽୨

"Living Room Apple TV (332)" is the insane discoveryd bug where it apparently sees itself on the network, thinks it's a name collision, and then adds the (incrementing) number to its own name.

The Apple TV 3 never got the OS X 10.10.4 / iOS 9-equivalent update which dropped discoveryd and went back to mDNSResponder, so I guess it's stuck with discoveryd forever. This is why I bought the Apple TV 4.

@Brendan That explains a lot. The Apple TV 3 did get a software update last month, which I hoped would include mDNSResponder, but the networking (even aside from Home Sharing) is still unreliable. It’s a shame to have to get a 4 to fix a bug that didn’t used to be present with the 3.

"That explains a lot."

Yup. Sounds like we finally have an answer!

"It’s a shame to have to get a 4 to fix a bug that didn’t used to be present with the 3."

Silly. Obviously a feature, not a bug.

If you are using an Apple TV (3rd generation), non Rev-A, Apple still signs iOS 6.1.3 for the device.

Grab the IPSW and flash via recovery. Discoveryd is back :)

[…] except the one for the Apple TV 3, which is still for sale. It seems like it will be stuck with the discoveryd regression for […]

Leave a Comment