Important: This article describes how to implement port-forwarding. In nearly all cases, port-forwarding is not necessary and not recommended. It is well-known to cause issues in sessions such as packet loss, loss of audio, and people getting kicked out of a session.
Unless you have an extremely compelling reason to do port-forwarding, we recommend that you don't.

This article is to help someone who is getting the no audio link over a grayed out participant in a JamKazam session -- in this instance, you can not hear the other person, and potentially they also can not hear you.


This happens because, for some reason due to your network configuration, the audio & video of JamKazam is not allowed through to your PC or Mac running JamKazam, or is being stopped by the other person's firewall.  JamKazam uses multiple techniques to get through a home firewall securely, but this does not work in all cases.


In a home network, the problem is usually due to the router. This article will therefore try to help you configure your router to allow audio & video into your network.

 

Before You Make Changes To Your Router - Try This First!

Before you begin these steps, be sure you have tried the simpler options first:

  1. Leave the session, and rejoin it a few times. Some routers have intermittent behavior, and just trying to join a few times will get the job done. 
    • TIP: the fastest way to join the same session multiple times is to click the LEAVE button while in a session, and then hit the BACKSPACE key to join the same session you just left.
  2. Try restarting JamKazam, and then rejoining the session.
  3. Try rebooting your router, and then rejoining the session.


If you've tried these things, the rest of this article will explain how you can make changes in your router to let audio & video flow in to your home network, to your PC or Mac.


NOTE: If you are a XFinity Comcast customer specifically, your problem might be that the Security Setting of the router is on High, which is incompatible with JamKazam. This article addresses how to make that change. Do not try anything else in this article; first only try the change suggested in this article: https://jamkazam.freshdesk.com/a/solutions/articles/66000443042 .   


Steps to Configure Your Router

Every router manufacturer and model can have different interfaces, but almost all allow you to connect and do everything you need to do from your web browser.   

 

If you are unfamiliar with your router, please search for its model number on the internet coupled with the search term manual.  You may need it for certain steps.  


Log in to your  Router

TIP: Many routers have a static IP address of http://192.168.0.1 .  Sometimes, the easiest thing to do is to just try this address in your browser, and if you are lucky, you already found the internal web page of your router.    Otherwise, consult your manual to find the correct URL.  


The second hardest part is determining your username & password for logging in.    If you never configured your router before, then the router has a default username and password.  Many are often admin / password or admin/admin. Or, the username & password is on a sticker somewhere on the router itself.  


If you have configured this router in the past, if you are like most of us, you don't remember the password anymore.  In that case, hopefully there is a way to reset it without having to do a factory reset of the router. 


Option A: Turn on UPnP

Assuming you have logged in to the router successfully, search for a network setting called UPnP.  Usually, it is just a Yes/No or On/Off option.  If you find it, turn it on, and your router will usually need to reboot after you save the setting.  Once the router is done rebooting, restart JamKazam too, and try to get into a session.


Look for sections called Advanced, LAN settings, Network settings, or Security settings to find this setting.


Option B: Turn on NAT-PMP

This is an option found in predominantly in Apple home routers, but some other manufacturers as well.  As with UPnP, this is just a Yes/No option.   If you find it, turn it on, and your router will usually need to reboot after you save the setting.  Once the router is done rebooting, restart JamKazam too, and try to get into a session.


Look for sections called Advanced, LAN settings, Network settings, or Security settings to find this setting.


Option C: Open up UDP Ports 12000-12010

If Option A or B did not work, then this option is your last option.   Admittedly, it can be daunting if you are unfamiliar with routers -- which most of us are not!


The high level idea is that you are going to tell your router to always allow in 'UDP traffic' from ports 12000 to 12010 to the Mac or PC that you use to play JamKazam.    You also have to configure JamKazam to only use ports 12000 to 12010 as well; otherwise it will use a much wide range of ports.


Find Your Local IP Address

Before you begin, you need to find the IP address of the machine that you use the JamKazam application on. 


Now that you found your IP address, let's double-check you have the right value. It should be something like 192.168.0.20.  It will not be exactly this example value, but it will be in the XXX.XXX.XXX.XXX format, and virtually always start with 10.0.X.X, or 192.168.X.X, or 172.16.X.X.  


The rest of this article will assume that your local IP address is 192.168.0.20. 


Configure Your Router to Port Forward Ports 12000-12010 to Your PC or Mac

Now that you have logged in to your router earlier, you need to go back there and look for a setting called Port Forwarding.   Port Forwarding will send traffic of a certain protocol and port to the IP address of your choosing.


If you are trying to not look at your router manual, look through any tabs or sections perhaps called LAN setting or Network Settings.  These can often been buried underneath an Advanced tab.    This is the hardest part, is just finding the screen.  


For example, here is the Port Forwarding settings in one NETGEAR model shown just below.  To get to this particular screen, one had to:


  1. Click the ADVANCED tab at the top.
  2. Click Advanced Setup tab on the left.
  3. Click Port Forwarding / Port Triggering link on the left.
  4. Click ADD CUSTOM SERVICE (not shown).
  5. Then enter the fields as shown:
    1. Service Name: Jamkazam - this is just a label. Name it whatever you like.
    2. Service Type: UDP  - always use this value.
    3. External Starting Port: 12000 - always use this value.
    4. External Ending Port: 12010 - always use this value.
    5. Use the same port range for internal port - CHECKED - not all routers have this option
    6. Internal IP address: 192.168.0.20 - this is just the example IP.  Use your IP address found earlier!
    7. External IP address: ANY - this is so you can play with others without knowing their public IP address.


Hit SAVE/APPLY, and let the router apply the settings. 


Router settings are always hard to find at 1st, but there are usually not so many settings that you can't click through most everything available and find it pretty quickly.  So don't be afraid to hunt.



Configure JamKazam to Use a Static Port Range

Now, in JamKazam, configure JamKazam to only use ports 12000-12010.  


To do that, in the File Menu, select JamKazam > Preferences. In the main window, this dialog will show:


Check Always use the same set of UDP ports, and hit SAVE.



Restart JamKazam once more, and try to get into a session. Hopefully you will now hear the other party in the session.