Viajero
Volunteer Moderator
Given the renewed interest in physical multicrew brought in by Odyssey, and multiplayer gameplay interest in general (player groups, co-op, pvp etc), I thought it could be useful to get a detailed thread regarding how to implement Port Forwarding effectively in our systems. A lot of the info and context here comes as well from the portforwarding guide by u/Bregirn in reddit so credit to him for his great work. I have then completed his great post with additional advice and examples to make it as clear and detailed as possible. Also huge credits to portforward.com where a lot of the details of this post come from. Also, for completeness sake, here is the link to FDEV´s support page on Elite´s Port Forwarding.
This post is primarily offered in the context of PC port forwarding but I suspect console players will find it also equally useful and should be able to adapt it to their needs easily enough.
Why port forwarding?
Unlike other games that communicate with a server for most or all online gameplay, Elite uses servers only for certain tasks, like logging into the game, managing BGS, or registering transactions in stations and such. All direct player interactions (such as combat, wing and multicrew) are handled by a Peer-to-Peer (P2P) network structure. This is where your computer communicates directly to the other players computer. Think of it this way. Central server based games are like the postal system, you send a letter (packets) in the mail and it goes to the sorting center (server). The Sorting server then sends forwards the mail (packets) to the other player. In Elite the postal system doesn't exist, and you just drive straight to the receiver and deliver the mail yourself.
Typically your home router acts as a gateway and masks your internal network behind an external IP address, only allowing traffic into the network if it is expected or requested previously. This can leads to a number of transmission and reception problems especially if your security and firewall systems prevent communication with other players for any reason. Elite by default tries to mitigate these issues using UPnP protocols to connect players P2P but given all the different kinds of routers, and private network set ups available out there the system is still far from perfect.
Some of the problems we can often see in Elite due to this are players not able to link up in wings or multicrew, wing mates or crewmates not able to see each other in the same instance, players seeing NPCs that other wing or crew mates can not see, sudden disconnects when jumping to or from super cruise etc.
Now, also for additional context, these problems are not exclusive to Elite. Plenty of games that use P2P connectivity suffer from the same issues Elite does to some extent. Some more than others depending on the bandwidth needs and type of gameplay (twitch vs turn based etc): ME Andromeda multiplayer, Dark Souls 3 pvp, Destiny 2, CoD MW, the original Blowdbowl and a large etc, with tons of other games experiencing similar issues.
P2P is just a design choice for game developers (it has its advantages and its disadvantages) that players need to be aware of if they want to play that game in multiplayer.
The main mitigation for most of those games happens to be port forwarding.
What is port forwarding?
Port Forwarding is a technique that creates a pathway allowing external connections to send information directly to your computer from external locations, even when the traffic is not expected. If you have ever tried to host a minecraft server from home you will have had to setup port forwarding to your server machine in order to let other users join your server. The same thing is required to allow other users to connect to you in Elite.
Does it work?
From testing, I would say this indeed makes a difference and many of the multiplayer issues disappear as long as port forwarding is correctly implemented in all wing or crew mates systems, or in all players trying to instance (match maker decisions notwithstanding). It will never be a complete guarantee as most of the multiplayer network is outside our local PCs and router systems but I can say with confidence that it should resolve a significant part of the problems we often experience.
Also, from my personal experience, port forwarding rules do not seem to work for me when connected to the internet through a VPN, so consider if it is safe for you to have it deactivated while you try port forwarding.
Is it safe?
For the most part, yes, a forwarded port is perfectly safe. Beware that you are allowing an incoming connection to your network, so it does come with some risks. Forwarding a port to a gaming console such as an Xbox or PlayStation should be quite safe. Forwarding a port to a personal web server may be less safe unless you know how to secure your web server. The forwarded port will only allow specific traffic to make it to one particular device on your network. You are not tearing down your firewall as much as you are creating a pinhole through it.
See also above regarding use of VPNs.
How to implement port forwarding
CGNAT check
Before going into the actual port forwarding steps below the first thing to do is to check if your internet provider is based on CGNAT or not. If you are not sure feel free to contact your provider directly or post in this thread so we can help. If it is based on CGNAT then you need to review the specific CGNAT advice at the bottom of this post in the Additional Info section as you may have to contact your provider to help you get a non shared public IP address.
If your internet provider is not CGNAT or you have managed to get a non shared public IP address with a CGNAT based provider then read on:
Port forwarding steps
There are 5 main steps to take care of to properly implement port forwarding in Elite. Below I will be going into the detail for each:
1 - Ensure your firewall allows Elite´s executables through
2 - Ensure your PC has a static IP address in your local network (or that your router can identify individual devices in your network otherwise)
3 - Configure the port forwarding rule at your router
4 - Test your port has been properly forwarded
5 - Configure the port forwarding option and specific forwarded port number in the Elite network options menu.
1 - Ensure your firewall allows Elite´s executables through
This is going to be dependent on the AntiVirus you use but most of those should have a configuration option where you can list applications to be allowed through your firewall. The files you need to add to those exceptions are the Elite executable ones.
There could be more than one depending on what you have installed. For example the executables for alphas or betas are different than the ones for the main game etc
The location of the files will vary depending on your type of install (Steam, Frontier etc) but the files you are looking for to add as an exception to your firewall are called:
Elitedangerous64.exe
EDLaunch.exe
Here an example of how it can look using the Windows Defender default antivirus (the repetitions you see here are due to the test version installs for alphas etc):
2 - Ensure your PC has a static IP address in your local network (or that your router can identify individual devices in your network otherwise)
The way to achieve this is pretty standard and straightforward in Windows. Here is a good guide to follow step by step: https://portforward.com/how-to-port-forward/#static-ip
3 - Configure the port forwarding rule at your router
This is the trickiest part of the process since it involves accessing your router configurations options.
Follow this guide for full details: https://portforward.com/how-to-port-forward/#setup
The process is going to be slightly different depending on your router brand and model but it will usually need the following steps.
3.1 Connect to your router:
If you do not know the default login and passwords for your specific router use this list to find yours: https://portforward.com/router.htm or perform a google search for your router brand and model´s default login and passwords.
If you still have an issue finding these, post here your router brand and model and we can try to help you out.
3.3 Find the Port Forwarding Section and create a port forward rule:
Navigate around in your router by clicking the tabs or links at the top or left of each page. Most routers list the port forwarding section under Network, Advanced, or LAN. Look for the following keywords to help you find it: Port Forwarding, Forwarding, Port Range Forwarding, Virtual Servers, Apps & Gaming etc
The same router list linked above describes the exact navigation requirements for most routers brands and models: https://portforward.com/router.htm
Here an example of how the port forwarding section looks like in a Linksys router:
Application name: Introduce a memorable name that you want to give to this port forward rule in your router, i.e. “Elite Portforward” or similar.
Start - End ports: FDEV recommends to use port numbers between 5100 and 5200, introduce the port number you choose in both start and end fields. In case of doubt introduce the number in all fields you see for ports.
Protocol: Choose UDP only. There are routers that have an option to use both protocols TCP/UDP at the same time. We have seen players reporting issues when both protocols were chosen in the router rule. Just use UDP is my recommendation.
Device IP: This is the static IP address you created in step 2 above.
As mentioned above each router will have a different type of screen and menus but the main fields/values to be entered should be pretty similar.
3.4 Reboot your router
In some cases we have seen players whose router did not really took the new port forward rule into account until rebooted. Reboot just so to be sure.
4 - Test your port has been properly forwarded
This step is quite important so you can have peace of mind that your port forward has been properly implemented. There are a number of online port checkers out there but I would advise to not use them, we have seen a large number of false positives/negatives and they seem to be quite unreliable.
I recommend the in house portforward.com free application to do it. In my opinion this application is quite safe to install and has been used for eons by “port forwarding fans”. It has a paying version as well but the free trial version is more than enough to test our ports.
4.1 Install the port checker app:
Go to this page and get to the “Free Trial” link at the bottom of the page: https://portforward.com/store/pfconfig.cgi
When installing you may see an antivirus or security warning. In my opinion it is ok to use this software but please do your due diligence in case you have any doubts.
4.2 Run the app
When running the app you will be presented with a pop up window asking you for an email address and a registration code. Ignore that and click on the bottom left “Trial” button. Press “ok” if a small confirmation pop up appears and continue.
Hit the “Port Checker” option. Here introduce 5100 at the “Port Number To Check” field (or the port number you decided to use in step 3.3 above, if different from 5100). Select UDP, and finally hit “Check me”.
If the result is positive you are good to go to step 5. If not this would mean that one of the elements in steps 1 to 3 has not really been performed successfully. Re check your firewall clearance for Elite executables, ensure your PC IP is static and that your port forward rule in the router has been set up properly.
If your test is negative and you think you have implemented all steps 1 to 3 correctly it is also posible that you have one of the ISP providers that do not allow users to portforward and retain that control themselves (cgnat) see below Additional Info on these. For these cases you may need to contact your internet provider directly and request them to give you a non shared or exclusive public IP address (so then you can do your port forward normally), or open a port for you. This may come at a cost but it can be worthwhile at least to ask.
If you still have issues please post here so we can try to help.
5 - Configure the port forwarding option and specific forwarded port number in the Elite network options menu.
This step is quite straightforward.
Now, as mentioned above, port forwarding is not a guarantee that all multiplayer connection issues will disappear. Most elements of online gaming and connectivity are far away from your client or router network anyways. But it should mitigate a significant number of problems as long as you and those you play with have properly implemented port forwarding.
If you have any questions or issues with the process please feel free to post here so port forward veterans can chip in and help.
Additional info
- For cases where you use a wifi extender see this link. In essence it means you have to do the above port forwarding steps twice, once for your wifi extender, once for your PC.
- CGNAT internet providers: In this case routers are unable to port forward due to the internet provider using "master routers" in order to share a public IP address among several customers.
- For cases with more than 1 PC in the same local network I suggest to follow the same steps in this thread separately for each PC, so to actually create separate forwarding rules in the router, and for each rule to select a different port number to forward to (in steps 3.3 and 5). Each PC would need also to have a different static local IP address (step 2).
This post is primarily offered in the context of PC port forwarding but I suspect console players will find it also equally useful and should be able to adapt it to their needs easily enough.
Why port forwarding?
Unlike other games that communicate with a server for most or all online gameplay, Elite uses servers only for certain tasks, like logging into the game, managing BGS, or registering transactions in stations and such. All direct player interactions (such as combat, wing and multicrew) are handled by a Peer-to-Peer (P2P) network structure. This is where your computer communicates directly to the other players computer. Think of it this way. Central server based games are like the postal system, you send a letter (packets) in the mail and it goes to the sorting center (server). The Sorting server then sends forwards the mail (packets) to the other player. In Elite the postal system doesn't exist, and you just drive straight to the receiver and deliver the mail yourself.
Typically your home router acts as a gateway and masks your internal network behind an external IP address, only allowing traffic into the network if it is expected or requested previously. This can leads to a number of transmission and reception problems especially if your security and firewall systems prevent communication with other players for any reason. Elite by default tries to mitigate these issues using UPnP protocols to connect players P2P but given all the different kinds of routers, and private network set ups available out there the system is still far from perfect.
Some of the problems we can often see in Elite due to this are players not able to link up in wings or multicrew, wing mates or crewmates not able to see each other in the same instance, players seeing NPCs that other wing or crew mates can not see, sudden disconnects when jumping to or from super cruise etc.
Now, also for additional context, these problems are not exclusive to Elite. Plenty of games that use P2P connectivity suffer from the same issues Elite does to some extent. Some more than others depending on the bandwidth needs and type of gameplay (twitch vs turn based etc): ME Andromeda multiplayer, Dark Souls 3 pvp, Destiny 2, CoD MW, the original Blowdbowl and a large etc, with tons of other games experiencing similar issues.
P2P is just a design choice for game developers (it has its advantages and its disadvantages) that players need to be aware of if they want to play that game in multiplayer.
The main mitigation for most of those games happens to be port forwarding.
What is port forwarding?
Port Forwarding is a technique that creates a pathway allowing external connections to send information directly to your computer from external locations, even when the traffic is not expected. If you have ever tried to host a minecraft server from home you will have had to setup port forwarding to your server machine in order to let other users join your server. The same thing is required to allow other users to connect to you in Elite.
Does it work?
From testing, I would say this indeed makes a difference and many of the multiplayer issues disappear as long as port forwarding is correctly implemented in all wing or crew mates systems, or in all players trying to instance (match maker decisions notwithstanding). It will never be a complete guarantee as most of the multiplayer network is outside our local PCs and router systems but I can say with confidence that it should resolve a significant part of the problems we often experience.
Also, from my personal experience, port forwarding rules do not seem to work for me when connected to the internet through a VPN, so consider if it is safe for you to have it deactivated while you try port forwarding.
Is it safe?
For the most part, yes, a forwarded port is perfectly safe. Beware that you are allowing an incoming connection to your network, so it does come with some risks. Forwarding a port to a gaming console such as an Xbox or PlayStation should be quite safe. Forwarding a port to a personal web server may be less safe unless you know how to secure your web server. The forwarded port will only allow specific traffic to make it to one particular device on your network. You are not tearing down your firewall as much as you are creating a pinhole through it.
See also above regarding use of VPNs.
How to implement port forwarding
CGNAT check
Before going into the actual port forwarding steps below the first thing to do is to check if your internet provider is based on CGNAT or not. If you are not sure feel free to contact your provider directly or post in this thread so we can help. If it is based on CGNAT then you need to review the specific CGNAT advice at the bottom of this post in the Additional Info section as you may have to contact your provider to help you get a non shared public IP address.
If your internet provider is not CGNAT or you have managed to get a non shared public IP address with a CGNAT based provider then read on:
Port forwarding steps
There are 5 main steps to take care of to properly implement port forwarding in Elite. Below I will be going into the detail for each:
1 - Ensure your firewall allows Elite´s executables through
2 - Ensure your PC has a static IP address in your local network (or that your router can identify individual devices in your network otherwise)
3 - Configure the port forwarding rule at your router
4 - Test your port has been properly forwarded
5 - Configure the port forwarding option and specific forwarded port number in the Elite network options menu.
1 - Ensure your firewall allows Elite´s executables through
This is going to be dependent on the AntiVirus you use but most of those should have a configuration option where you can list applications to be allowed through your firewall. The files you need to add to those exceptions are the Elite executable ones.
There could be more than one depending on what you have installed. For example the executables for alphas or betas are different than the ones for the main game etc
The location of the files will vary depending on your type of install (Steam, Frontier etc) but the files you are looking for to add as an exception to your firewall are called:
Elitedangerous64.exe
EDLaunch.exe
Here an example of how it can look using the Windows Defender default antivirus (the repetitions you see here are due to the test version installs for alphas etc):
2 - Ensure your PC has a static IP address in your local network (or that your router can identify individual devices in your network otherwise)
The way to achieve this is pretty standard and straightforward in Windows. Here is a good guide to follow step by step: https://portforward.com/how-to-port-forward/#static-ip
3 - Configure the port forwarding rule at your router
This is the trickiest part of the process since it involves accessing your router configurations options.
Follow this guide for full details: https://portforward.com/how-to-port-forward/#setup
The process is going to be slightly different depending on your router brand and model but it will usually need the following steps.
3.1 Connect to your router:
- Open up a web browser. Firefox, Chrome, or Edge, or Opera should work fine.
- In the address bar, type your Default Gateway IP address, such as 192.168.0.1 or 192.168.1.1 that you found out when creating the static IP address for your PC.
- Press Enter
If you do not know the default login and passwords for your specific router use this list to find yours: https://portforward.com/router.htm or perform a google search for your router brand and model´s default login and passwords.
If you still have an issue finding these, post here your router brand and model and we can try to help you out.
3.3 Find the Port Forwarding Section and create a port forward rule:
Navigate around in your router by clicking the tabs or links at the top or left of each page. Most routers list the port forwarding section under Network, Advanced, or LAN. Look for the following keywords to help you find it: Port Forwarding, Forwarding, Port Range Forwarding, Virtual Servers, Apps & Gaming etc
The same router list linked above describes the exact navigation requirements for most routers brands and models: https://portforward.com/router.htm
Here an example of how the port forwarding section looks like in a Linksys router:
Application name: Introduce a memorable name that you want to give to this port forward rule in your router, i.e. “Elite Portforward” or similar.
Start - End ports: FDEV recommends to use port numbers between 5100 and 5200, introduce the port number you choose in both start and end fields. In case of doubt introduce the number in all fields you see for ports.
Protocol: Choose UDP only. There are routers that have an option to use both protocols TCP/UDP at the same time. We have seen players reporting issues when both protocols were chosen in the router rule. Just use UDP is my recommendation.
Device IP: This is the static IP address you created in step 2 above.
As mentioned above each router will have a different type of screen and menus but the main fields/values to be entered should be pretty similar.
3.4 Reboot your router
In some cases we have seen players whose router did not really took the new port forward rule into account until rebooted. Reboot just so to be sure.
4 - Test your port has been properly forwarded
This step is quite important so you can have peace of mind that your port forward has been properly implemented. There are a number of online port checkers out there but I would advise to not use them, we have seen a large number of false positives/negatives and they seem to be quite unreliable.
I recommend the in house portforward.com free application to do it. In my opinion this application is quite safe to install and has been used for eons by “port forwarding fans”. It has a paying version as well but the free trial version is more than enough to test our ports.
4.1 Install the port checker app:
Go to this page and get to the “Free Trial” link at the bottom of the page: https://portforward.com/store/pfconfig.cgi
When installing you may see an antivirus or security warning. In my opinion it is ok to use this software but please do your due diligence in case you have any doubts.
4.2 Run the app
When running the app you will be presented with a pop up window asking you for an email address and a registration code. Ignore that and click on the bottom left “Trial” button. Press “ok” if a small confirmation pop up appears and continue.
Hit the “Port Checker” option. Here introduce 5100 at the “Port Number To Check” field (or the port number you decided to use in step 3.3 above, if different from 5100). Select UDP, and finally hit “Check me”.
If the result is positive you are good to go to step 5. If not this would mean that one of the elements in steps 1 to 3 has not really been performed successfully. Re check your firewall clearance for Elite executables, ensure your PC IP is static and that your port forward rule in the router has been set up properly.
If your test is negative and you think you have implemented all steps 1 to 3 correctly it is also posible that you have one of the ISP providers that do not allow users to portforward and retain that control themselves (cgnat) see below Additional Info on these. For these cases you may need to contact your internet provider directly and request them to give you a non shared or exclusive public IP address (so then you can do your port forward normally), or open a port for you. This may come at a cost but it can be worthwhile at least to ask.
If you still have issues please post here so we can try to help.
5 - Configure the port forwarding option and specific forwarded port number in the Elite network options menu.
This step is quite straightforward.
- Go to Elite´s main menu and then get to the “Network” options menu.
- Go to the IPv4 section
- Go to the Portforwarding option and set it to “on”
- Go to the Mapped Port Number and select the port number you used in Step 3, i.e. “5100”.
- Reboot Elite
Now, as mentioned above, port forwarding is not a guarantee that all multiplayer connection issues will disappear. Most elements of online gaming and connectivity are far away from your client or router network anyways. But it should mitigate a significant number of problems as long as you and those you play with have properly implemented port forwarding.
If you have any questions or issues with the process please feel free to post here so port forward veterans can chip in and help.
Additional info
- For cases where you use a wifi extender see this link. In essence it means you have to do the above port forwarding steps twice, once for your wifi extender, once for your PC.
- CGNAT internet providers: In this case routers are unable to port forward due to the internet provider using "master routers" in order to share a public IP address among several customers.
For these cases you may need to contact your internet provider directly and request them to give you a non shared or exclusive public IP address (so then you can do your port forward normally), or open a port for you. This may come at a cost but it can be worthwhile at least to ask.in carrier-grade NAT networks, even though the router at the consumer end might be configured for port forwarding, the "master router" of the ISP, which runs the CGN, will block this port forwarding because the actual port would not be the port configured by the consumer.
- For cases with more than 1 PC in the same local network I suggest to follow the same steps in this thread separately for each PC, so to actually create separate forwarding rules in the router, and for each rule to select a different port number to forward to (in steps 3.3 and 5). Each PC would need also to have a different static local IP address (step 2).
Last edited: