Sonos networking difficulties

by Volker Weber

The good thing about Sonos networking is that it all works automatically. And the bad thing about Sonos networking is that it all works automatically.

SonosNet is a mesh network. All ZonePlayers and ZoneBridges can talk to each other. What you need to avoid in this mesh of interconnected bridges is to create loops where packets get repeated forever. What they do is, they use the spanning tree protocol to designate a root bridge and then build a tree from there using least cost paths.

I did not know anything about that, and did not need to until I introduced a smart switch into the network, that also worked using STP. Suddenly the network was not working well, since SonosNet had elected one ZonePlayer as the root bridge, and the smart switch started sending all packets to the switch in the ZonePlayer which then relayed them throughout the house wirelessly, instead of using much faster wired connections. I noticed this because streaming clients like the Netgear EVA started complaining about low bandwidth. Looking at the smart switch ports, I could find the EVA behind a ZonePlayer.

I did two things to cure this:

  1. I removed all others devices from the ZonePlayer switches and wired them directly to the smart switch.
  2. I switched off STP in the smart switch.

Everything was working fine, until I found some problems with the new CR200 controller. Sending in the diagnostics, I was alerted that the root bridge was wireless, and that all traffic had to go through that node. When I had the original networking difficulties, the ZonePlayer was still wired, but had been moved after I received a new ZonePlayer. This is the relevant part of my physical network, describing only the Sonos network and the master switch:

There are five wired components: two ZoneBridges, one ZP100 and two ZP120. The wireless components are one ZP100 and two ZP80.

The wireless ZP100, depicted in the middle of the bottom row, was the designated root bridge. And thus the network was completely inverted. I switched on STP in the Netgear switch, and raised its priority all the way up. Now it's the root bridge and all wired components are only one hop away. That should be much better.


I have a similar setup (smart switch, wired and wireless ZonePlayers, etc.).

In your various diagnostic stages - (1) where on your Netgear smart switch did you see "the EVA behind a ZonePlayer" and then later (2) "Send in the diagnostics" ?

Glen Salmon, 2009-08-25

(1) go to Switching/Address Table. That will tell you which hardware addresses are connected to which port. I found most of my network was connected to a single port that had only the ZonePlayer physically connected. From there the traffic was going through SonosNet, so that all other ZonePlayers were on that port, as well as devices connected to ZonePlayers. In Switching/STP it will tell you the designated root with priority and hardware address.

(2) in the Sonos Desktop Controller, there is a menu item Preferences, and in there a page Diagnostics. It will call a web page and dump a lot of XML code in there and waits for you to submit that data to Sonos.

However, you can look at the data yourself, or you go to http://your.zp.ip.address:1400/support/review on one of your ZP addresses (you will find them on any remote in the About page. It will tell you everything you want to know about the Sonos setup. Select a ZonePlayer and look under "/usr/sbin/brctl showstp br0" to verify the designated root found in the Netgear switch.

Volker Weber, 2009-08-25

Thanks ! I discovered I had a dead network port and one of the ZonePlayers was operating off the wireless mesh and not a wired network port.

Glen Salmon, 2009-08-25

Old archive pages

I explain difficult concepts in simple ways. For free, and for money. Clue procurement and bullshit detection.


Paypal vowe