Skip to content

Use Wireshark for protocol research

ghcs27 edited this page Apr 23, 2018 · 4 revisions

In many cases it is helpful to know how the official Sonos controller communicates with the players. To find out, you can use Wireshark. Wireshark is an application to capture network traffic and analyze it.

To capture your Sonos packets with Wireshark, you can do the following:

  • Download and install Wireshark if you haven't got it already.
  • Open Wireshark and select the connection type you are using.
  • Press enter to start capturing.
  • Go to the Sonos controller and execute the action you want to investigate.
  • Stop capturing by clicking the red square at the top left.

After you have captured the packets, you can analyze their content:

  • Filter the view via the filter box below the toolbar.
    • Filter for http traffic by entering http.
    • To exclude responses, filter by http.request.
    • To filter for communication with a specific IP, filter by ip.addr==xxx.xxx.xxx.xxx.
      To find the IP address of your speaker: In the Sonos Controller go to Help > About my Sonos system
    • To combine filters, join them with and.
  • Right-click a packet and select Follow > HTTP Stream.
  • In this window, you can see the XML exchanged by your computer and the player.

You will probably be interested in the SOAPACTION, which represents the called method, and the XML within <s:Envelope>.