How to get AirPlay working when Apple TV is hooked up via Ethernet
When I got a new Apple TV, I decided to plug it directly into my Time Capsule via Ethernet to lighten some of the bandwidth load on my home wireless network. My Wi-Fi bandwidth has always been pretty lackluster with my first-gen Time Capsule, even though every device connecting to it is 802.11n-compatible, and adding something as bandwidth-gluttonous as an Apple TV streaming 1080p video from my Mac was only going to make things worse. I guessed that plugging in via Ethernet would roughly halve the bandwidth requirements for streaming to the Apple TV, and checking around with some of my more networking-savvy friends confirmed this. *
Within a couple of days, I noticed some really odd behavior. When using the Apple TV interface on my HDTV, streaming music or other media from my Mac worked without any issues. However, trying to stream media from my Mac to the Apple TV via iTunes on my Mac didn't work at all. The Apple TV showed up in iTunes' list of available AirPlay devices, but selecting it brought up a "Connecting" box that never went away. Trying to set things up via the Remote app on my iOS devices didn't work either.
It didn't make sense to me that streaming would work just fine if initiated from the Apple TV, but not at all from anywhere else. Some Googling around got me a solution to the issue: disabling IPv6 on the Mac via the network settings in System Preferences finally got AirPlay working from all devices.
If you're on a version of OS X older than Lion, it's easy to turn IPv6 off.
- Go into the Network pane in System Preferences
- Select AirPort in the list on the left
- Click "Advanced"
- Go to the TCP/IP tab
- Set "Configure IPv6" to Off
- Click "OK"
- Click "Apply"
OS X Lion got rid of the "Off" setting in the GUI, but the Terminal app in the Finder's Utilities folder comes to the rescue (as always). Open Terminal and input the following two commands exactly to disable IPv6 in OS X Lion:
networksetup -setv6off ethernet
networksetup -setv6off wi-fi
If you have an advanced network setup that requires IPv6 to be enabled for some reason, you're probably better off just unplugging the Apple TV and letting it connect via Wi-Fi. Most users won't run into any problems if they disable IPv6, however, so if you're in a niche like mine where plugging the Apple TV in via Ethernet is a better fit for your network, hopefully this tip helped you out.
* I confirmed this with first-hand testing, as well. When plugged into my Time Capsule via Ethernet, a 1.38 GB movie loaded in its entirety on the Apple TV in exactly 7 minutes, 30 seconds. Tests loading movies of the same 1.38 GB size repeatedly failed when the Apple TV connected over Wi-Fi, because roughly midway through iTunes Home Sharing inevitably decided to stop working. I never experienced this problem when connected over Ethernet.
In both cases, Time Machine was disabled on my Mac, and no other devices were making heavy use of the network.
The "best" result my Apple TV achieved when streaming over Wi-Fi was loading roughly 40 percent of a 1.38 GB movie -- after over 12 minutes -- before iTunes Home Sharing decided to die on me yet again. So at least in my case, connecting the Apple TV via Ethernet makes way more sense than Wi-Fi.