Fixing connection errors on a local network

This page looks at understanding why you might not be able to connect from StreamToMe to ServeToMe on a local network. If you're trying to set up for the first time, please look through the Getting Started with StreamToMe and ServeToMe guide on the Support page and make sure you've followed all the setup steps to connect before looking at these troubleshooting steps.

Understanding the problem

StreamToMe and ServeToMe are written so that in a typical local network, the name of your computer running ServeToMe will automatically appear on the "Servers" screen in StreamToMe and you should be able to simply tap on it to connect, browse and start streaming.

If you're reading through this page though, the server cannot be reached for some reason.

To make your server reachable, you should go through each of the topics on this page, in order. In 95% of cases, the fix for local connection issues is in one of the next two, relatively simple, topics; Make sure the server and player are running correctly and Firewall and anti-virus problems.

If your problems persist, subsequent topics offer some additional suggestions about how to fix or work around more serious networking problems.

Make sure the server and player are running correctly

The first and most important step is that ServeToMe must be running correctly on a computer on your local network. The StreamToMe player and ServeToMe server form a client-server pair and you cannot use one without the other.

If you've not already done so, please follow the instructions in the Getting Started With StreamToMe and ServeToMe guide:

  1. Download and install both StreamToMe and ServeToMe
  2. Setup the ServeToMe server

It is important that the server shows a status of "Running" at the top of its window.

ServeToMe "Running" state.

If you're having difficulty getting the ServeToMe server to reach the "Running" state, please visit the Other known issues and workarounds support page for solutions.

Windows users should make sure that Bonjour for Windows is correctly installed on their computers. You can verify this by going to the "Add or Remove Programs" ("Uninstall a program") panel in the Windows Control Panel and verify that Bonjour is present in the list of installed programs.

Apple's Bonjour installed correctly on Windows.

The final important running step is to ensure that your device running the StreamToMe player is correctly connected to the same local network as your computer running ServeToMe.

Left: iOS WiFi settings. Right: Mac WiFi settings. It is best to ensure that your ServeToMe server and StreamToMe player are on the same WiFi network when you connect for the first time.

It is strongly recommended (if you're having connection problems) to have both your ServeToMe server computer and your StreamToMe player device connected wirelessly to the same router. Depending on your networking hardware settings, connecting your computer to a wired location (even if it is the same router) may actually put your computer on a different subnet, so connecting both server and player via the wireless connection is the simplest networking arrangement.

For iOS devices running StreamToMe, we recommend that you go to the "WiFi" settings in the Settings app and make sure that you are correctly connected to your own WiFi router. Particularly in city areas, it is possible to accidentally join another nearby WiFi network which can place your StreamToMe player on a different network to your ServeToMe server and unable to reach each other for that reason. You should similarly check the WiFi settings on your server computer, if you've not already done so, to ensure that it is connected correctly to your WiFi router.

Firewall and anti-virus problems

Both Mac OS X and Windows operating systems include software firewalls that prevent unwanted connections reaching the computer. These firewalls are on by default and you should make sure that the ServeToMe programs are permitted through the firewall. Similarly, anti-virus programs may run an additional firewall that you may need to instruct to permit ServeToMe to operate.

ServeToMe generally uses TCP port 9969 and Bonjour uses UDP 5353. Where possible though, it is usually better to add the ServeToMe program itself to your firewall (ServeToMe-Service.exe and the Bonjour mdnsresponder.exe on Windows).

While modems and routers may include firewalls, these will not generally block local network connections and are generally only a problem for external connections.

Windows firewall

By default though, the ServeToMe installer on Windows will make sure ServeToMe is permitted through the standard Windows firewall. You can confirm this by going to the "Windows Firewall" panel in the "System and Security" section of the Windows Control Panel. On the "Allow programs through the Windows Firewall" page, you should see an entry for "ServeToMe-Service" with the allow checkboxes selected. If missing, you should select "Make Changes" and select "Allow another program" select "Browse" and choose:

    C:\Program Files (x86)\ProjectsWithLove\ServeToMe\ServeToMe-Service.exe

Windows Firewall showing an entry for the ServeToMe-Service.

You should also make sure that Bonjour is permitted through the Windows firewall. Again, if there is no Bonjour entry, you should add one for the following:

    C:\Program Files\Bonjour\mdnsresponder.exe

Mac firewall

On the Mac, you should see a security dialog the first time you run ServeToMe with the firewall enabled. By clicking "Allow", ServeToMe will be correctly added to the firewall.

You can verify this by going to the "Security & Privacy" panel in the "System Preferences" and on the "Firewall" tab, click the log (to allow changes) and go to the "Firewall Options". Stealth mode must be disabled, and there must be an entry named "ServeToMe" or "ServeToMe.app" that is set to "Allow incoming connections". If not, press the "+" button and add the "ServeToMe" application (which should be where you installed it in your /Applications folder). Press "OK" when done.

Mac OS X Firewall showing an entry for ServeToMe.

Anti-virus software

Many anti-virus programs, particularly on Windows, also include an additional firewall layer that must similarly be told to allow ServeToMe to receive connections. Anti-virus software like AVG and McAfee are popular examples of anti-virus software that may place an additional firewall layer that prevents ServeToMe receiving any incoming connections.

To allow ServeToMe through your anti-virus software, you must go to the user interface or control panel for your anti-virus software and go to the firewall settings. You must make sure that the ServeToMe-Service.exe at the following location is added:

    C:\Program Files (x86)\ProjectsWithLove\ServeToMe\ServeToMe-Service.exe

Additionally, you should also make sure that Bonjour is permitted through your anti-virus program's firewall. Again, if there is no Bonjour entry, you should add one for the following:

    C:\Program Files\Bonjour\mdnsresponder.exe

If you are unable to work out how to add programs to the list of permitted programs for your anti-virus software, then please ensure that it either has no firewall or that the firewall is disabled, otherwise it may be impossible to connect.

Bonjour autodiscovery problems

The automatic discovery of computers running ServeToMe on the local network (the "Local Servers" section on the "Servers" screen in the StreamToMe player) is handled by Apple's Bonjour. As previously stated, Windows users should make sure that Bonjour for Windows is correctly installed on their computers. Bonjour is a part of Mac OS X and does not require separate installation on that operating system.

Note: in some network setups, it simply may not be possible to get Bonjour autodiscovery working or it may remain unreliable. In these case, please proceed to the next section, Manual address for a local network as this will avoid any problems by letting you avoid autodiscovery entirely.

Bonjour uses a type of network communication called a UDP broadcast. There are a few things about UDP broadcasts which may affect your ability to see a computer automatically on the local network:

  • UDP broadcasts are not guaranteed to reach their destination every time.

For this reason, you should use the "refresh" button in the top right of the "Servers" screen in the StreamToMe player to give the Bonjour autodiscovery a second opportunity in case the first autodiscovery simply never reached your computer. It is possible that it might take a couple refresh attempts for the server to respond.

  • UDP broadcasts are blocked at the edge of the subnet.

If your home network is split into more than one subnet, you will not be able to use Bonjour autodiscovery unless a special arrangement for UDP broadcast traffic can be made (which is not always possible on consumer routers). This means that Bonjour may simply not work if your ServeToMe server and StreamToMe player are connected via different routers.

Manual address for a local network

In situations where automatic discovery of servers simply won't work on a local network, it is possible to enter the address of the ServeToMe server manually. However, we recommend reading through the other topics on this page first since using a manual address won't fix any firewall/anti-virus or reachability problems that might exist — it is best to be certain that any such issues are resolved first.

To do this, display the ServeToMe window on the computer to which you wish to connect. The important information to get is the "Local address" and the "Port" number that is immediately to the right of the "Local address" (this will normally be 9969 unless you've deliberately changed the port).

The ServeToMe window showing a "Local address" of "192.168.1.2" and a local "Port" of "9969".

In the StreamToMe player, on the "Servers" screen, tap on the "Edit" button. This will display the "Add a manual address" fields. In the "Address" field, enter the "Local address" and in the "Port" field, enter the port number from the ServeToMe window.

The StreamToMe "Servers" screen showing the "Add a manual address" fields

The "Name" field in the "Manual address" is purely so you can give your server a human readable name, instead of an IP address. You can put anything you'd like into this field or leave it blank if you want.

An example of how a typical local network address will look:

    Name: My ServeToMe Server

    Address: 192.168.1.2

    Port: 9969

Pressing "Return" on the keyboard in each field will move focus to the next field. Press "Return" from the "Port" field to save the new address.

Warning: the address and port should be entered exactly. Failure to enter the address correctly will likely result in a "Connection Timeout" when trying to connect to the server (although firewall issues or network reachability issues may also result in the same error).

If you use a manual address to connect to ServeToMe, you will want your server to keep this IP address. Computers IP addresses can change every time they connect to their local network unless the network is told to allocate the same address every time. If you're using a manual address, we recommend you go to your modem or router's settings (whichever is the "DHCP" server for your network) and try to ensure your computer's address remained fixed.

What to do if nothing works...

Home networking hardware and software is designed to make connecting outwards to the internet very simple but can make connections to an internal location (like connecting to a ServeToMe server) very difficult.

The two hardest problems are always:

  • Making sure no firewall or security software on your computer is blocking incoming ServeToMe connections
  • Making sure the ServeToMe server's network is reachable from the StreamToMe player.

If you're having trouble connecting from StreamToMe to ServeToMe, the problem is almost certain to be one of these two points.

The first point is fairly easy to understand (even if the diverse nature of anti-virus software can make it a little tricky to resolve).

The second point though can be very difficult to understand since most people do not normally need to spend time configuring their networks. It is significantly complicated by the fact that every single modem and router available will use slightly different terms to describe the same network technologies.

Work around reachability issues using external addresses

If ServeToMe is showing an "External address", then it has already verified that it can be reached from an external location. You might want to try connecting using a manual address as described in the Manual address for a local network section but instead substitute the "External address" in place of the "Local address" to work around subnet reachability issues on your local network. Some modems/routers will refuse to direct locally originating traffic back into the local network (preventing this workaround from succeeding) but most will allow it so this is a good option when the local address doesn't work but an "External address" is visible.

Assuming "Disable external verification" is OFF in the ServeToMe Advanced Settings then an "External address" like this in the ServeToMe window is guaranteed to be accessible (an external server has already made a successful connection).

Isolating where the network reachability issues occur

If you don't have an "External address", then you'll need to work out what part of the network is accessible from what other part, you can always use a web browser to connect to ServeToMe via its address and port.

e.g. if the ServeToMe window is showing a local address of 192.168.1.2 and a port of 9969, then you can enter:

    http://192.168.1.2:9969

into a web browser on that same computer and it will display the following page:

ServeToMe

ServeToMe version 3.7.1.2614 is running normally.

Use the StreamToMe application on your Mac, iPhone, iPad or iPod Touch to view media files.

Just replace the IP address and the port number in this example with the values that ServeToMe is showing on your computer (remember to keep the ":"character between the two).

This web page can help you confirm that ServeToMe is working without needing to connect from StreamToMe. Once you've done this, you can attempt to connect using a web browser on other computers or devices on your network. For example, you can use Safari on your iOS device running StreamToMe to test if your computer is reachable from that device, without needing to worry about any issues with Bonjour or manual addresses within StreamToMe.

Getting further help

Networking reachability issues are not a StreamToMe or ServeToMe specific problem. You can search for how to fix these problems in any customer support forum for your networking hardware.

If you simply cannot work out what's going wrong at all, then please send an email to the support email at the bottom of this page and include the following information:

  • A description of any server information that appears in the StreamToMe player and what error messages you see (if any)
  • The exact brand and model number of your modem and wireless router
  • How your ServeToMe server computer is connected to your network (wired to your modem, wired to your wireless router, connected wirelessly to your wireless router, etc)

and we can try to give you specific instructions about how to fix any networking problems for your networking hardware.