[AppleTV2] Routing using wired and wireless interfaces
#1
Ok, so I've got this setup with a wireless router setup to connect my AppleTV2 with my old Popcorn Hour A110 (wich acts as a NAS hosting all my media). All communication to the internet is wireless between this router (setup with DD-WRT) and my other wireless router wich is connected to my ISP. Since my DD-WRT router is a weak device I'd like only my traffic on the 192.168.1.0/24 network to utilize the wired interface and all other traffic (desination internet) from the Apple TV2 to use the wireless interface. Is this possible?

Image
Reply
#2
Question 
Even though I set an address on en1 I can't ping the address even from within the ATV2. It seems as it's totaly disabled as soon as I connect the fastethernet cable to the unit. Any ideas around this?

Here's a little something from my SSH session.
----------------------------------------------------------------------------------------
AppleTV:~ root# ifconfig en1 192.168.1.16 netmask 255.255.255.0 broadcast 192.168.1.255
AppleTV:~ root# ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.1.15 netmask 0xffffff00 broadcast 192.168.1.255
ether 28:cf:da:2e:d3:16
en1: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet 192.168.1.16 netmask 0xffffff00 broadcast 192.168.1.255
ether 28:cf:da:2e:d3:15
AppleTV:~ root# ping 192.168.1.16
PING 192.168.1.16 (192.168.1.16): 56 data bytes
--- 192.168.1.16 ping statistics ---
4 packets transmitted, 0 packets received, 100% packet loss
AppleTV:~ root# ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.383 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.263 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.298 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.294 ms
--- 127.0.0.1 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.263/0.309/0.383/0.045 ms
AppleTV:~ root#
----------------------------------------------------------------------------------------
As you clearly can see I can ping my loopback but not the en1 (wireless) interface. Why is that? I have just the same flags as on my en0 interface.
Any thoughts about this?
Reply
#3
Question 
Here's another pice of the session showing my routing table.

--------------------------------------------------------------------------
AppleTV:~ root# netstat -r
Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.1.1 UGSc 15 0 en0
127 localhost UCS 0 0 lo0
localhost localhost UH 1 8 lo0
169.254 link#2 UCS 0 0 en0
192.168.1 link#2 UCS 6 0 en0
192.168.1.1 68:7f:74:11:11:1a UHLW 16 0 en0 1162
192.168.1.2 e0:46:9a:81:43:12 UHLW 0 194 en0 620
192.168.1.5 0:6:dc:43:3f:a2 UHLW 1 341108 en0 336
192.168.1.6 4:c:ce:67:c8:e6 UHLW 0 0 en0 1143
192.168.1.7 0:23:76:4d:9e:91 UHLW 0 0 en0 803
192.168.1.8 0:27:13:f9:ff:db UHLW 2 2069 en0 1198
192.168.1.15 localhost UHS 0 0 lo0

Protocol Family 30:
Destination Gateway Flags Netif Expire
(30) 0000 0000 000 link#1 UHL lo0
(30) 0000 0000 000 (30) 0000 0000 000 Uc lo0
(30) 0000 0000 000 link#1 UHL lo0
(30) 0000 0000 000 link#2 UC en0
(30) 0000 0000 000 28:cf:da:2e:d3:16 UHL lo0
(30) 0000 0000 000 link#3 UC en1
(30) 0000 0000 000 (30) 0000 0000 000 UC lo0
(30) 0000 0000 000 link#2 UC en0
(30) 0000 0000 000 link#3 UC en1
(30) 0000 0000 000 (30) 0000 0000 000 UC lo0
(30) 0000 0000 000 link#2 UC en0
(30) 0000 0000 000 link#3 UC en1
--------------------------------------------------------------------------

As you can read in this table it's only the en0 interface that is actually sending/transmitting any data. I want en0 only to communicate with 192.168.1.2 and 192.168.1.5, all other traffic I want on the en1 interface.
Reply
#4
Its a limitation of iOS. When Ethernet is plugged - WLAN is turned off. You can only use one of both at the same time.

But maybe think about it little while. That wired connection doesn't utilise the router CPU because its just switched. Switching is done in hardware in a router. It only routes when passing different subnets. So just leave it wired.
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#5
Could also be a hw limitation, if wired and wifi share the same data lines, then only one can be used at a time. If you think about this, what other iOS device has both wired and wifi ?
Reply
#6
The problem is that my router (a Netgear WNR3500L with DD-WRT installed) works great over wired connection but the wifi sucks. Initially I get around 2.5MB/sec but after a while it drops to around 250-300kB/sec. This is rather frustrating so I'd rather find a way around this. When bypassing the Netgear router and using wifi on my ATV directly to my Linksys router I get a consistent traffic of 2.5-3MB/sec for hours. Not sure if it's the hardware or if it's my DD-WRT release that is f*cked up. I would rather not re-flash my router to OPEN-WRT just to try...
Reply

Logout Mark Read Team Forum Stats Members Help
[AppleTV2] Routing using wired and wireless interfaces0