PFsense - Multiple Xbox One(s) NAT Type Fail.
-
It's basically a message that says "I can't talk to the server". I get the same message form time to time on PS4. The error message also displays when there is an issue with the server side of the Division. XBOX and PS4/PS3 are very finicky when it comes to NATs and Routing.
I ran into a reddit post that helped me, although it requires opening up your rules a bit which some might be uncomfortable with.
https://www.reddit.com/r/PFSENSE/comments/2uc645/need_help_getting_open_nat_on_ps4/
I've had a much better experience on my PS4 by following the recommendation in that thread about going to a static IPs on the consoles with UPnP turned on, but restricted to those IPs.
I assume you've already seen this, but if not maybe this can help. It lists a number of ports that they recommend opening up for the Division specifically. A lot of these are used by other games as well.
https://support.ubi.com/en-GB/Faqs/000024737/Connectivity-issues-in-The-Division-on-Xbox-One
Another option is to put consoles on their own subnet with relaxed or full access to the internet, but blocked from the rest of the pfsense subnets. But, that hinders your ability to access LAN resources like Plex from your consoles.
For me opening up UPnP, but restricting it to just my PS3 and PS4 IPs has worked well and I can still access Plex for example from the console.
-
Another crazy idea would be doing ipv6 on the gaming subnet. If your ISP is in to that sort of thing.
-
Thought I had solved the with UPNP. I turned off all port forwarding and only turned on uPnP. I limited UPnP only to the 2 Xbox ones. The first Xb1 worked like a champ. The second XB1 only seems to be able to get NAT TYPE:Strict. Therefore it was unable to chat but was still able to play multiplayer such as Destiny. My temporary patch for now is to put the XB1(s) on a separate router coming off the Comcast modem and plug my pfsense Comcast_wan into one of the ports on the router. With this setup I get open nat on both XB1s but now they don't integrate with the rest of my network. I don't understand why a crap Cisco E1000 router can manage to make this work but the pfsense can not.
-
Can you try the IPV6 thing? Microsoft specifically put it in there for scenarios like these.
-
Tried all of the solutions above. The best I could get was open NAT on the first XB1, moderate on the second XB1. This was achieved by configure each XB1 to use a different WAN and port forwarding. uPnP would only work with one XB1 the other would get unavailable NAT and fail multi-player test. Will attempt ipv6 only, could use some guidance. Not able to pass test-ipv6.com unless pass rule for ipv4 is enabled.
Ok added rule for ipv4. Test-ipv6.com and ipv6-test.com both pass. Still have strict NAT..but did pass multiplayer test and haven't had any issue with game chat or party chat. Will do more testing and will test on other XB1 tomorrow. Its 3am.. I'm going to bed.
-
Ok so I have IPv6 fully working and can confirm that the Xb1s both have valid ipv6 addresses and they both pass ipv6-test. They both still have STRICT NAT and i am seeing communication /multiplayer issues for different games. Does anyone know if it is possible to get open NAT with IPv6? Is it possible to have Upnp over IPv6? https://forum.pfsense.org/index.php?topic=118033.0 Will that fix my issue? This is so damm frustrating.
-
I am not sure how much help I can be here, but I just finally got this working with 5 Xboxes with open nat and proper communication between them.
First, Follow this post about setting up manual outbound NAT on the PS4 from AhnHEL (works the same way on Xbox),
https://forum.pfsense.org/index.php/topic,69319.msg384435.html#msg384435
I have heard Hybrid NAT is easier, you might try that. You give each xbox a DHCP reservation. Then you create a manual outbound rule at the top for their addresses, or their IP range, and check the box for static port. Xboxes have a horrible time dealing with randomized ports, this is a problem on Microsoft's end NOT pfsense. Next setup Upnp as he/she instructs, (I did the optional step to restrict upnp to my xboxes only) This will give you open NAT > Then go to System > Advanced > NAT reflection > and set it to NAT+ Proxy. Then Clear your Firewall states in Diagnostics > States > Reset States(this will kill internet for a couple of seconds, you will need to refresh) OR reboot your system and shutdown and kill power on your xboxes. Check in Settings > Network > Advanced Settings > on Xboxes and make sure they are picking up the IPs you assigned them. I did this setup, and I have 5 xboxes with open NAT and they can all now play together in one game and xbox party.
I also added the rules on LAN from "databeestje" (Thank You) on the page below for multicast traffic, Also, after reading the setup more closely, AhnHEL's guide is just a more detailed explanation of the Upnp method on the Sticky, the sticky is just a little confusing because of the new updated interface. I would add enabling NAT Reflection: NAT + Proxy.
Add these 2 allow rules on the LAN interface."
* LAN net * 224.0.0.0/8 * * none Allow Multicast
* LAN net * 239.0.0.0/30 * * none Allow MulticastNOTE: I am a newb with PFsense, I am an IT Technician in my daily life, but networking is one of my weaker areas. A much more senior member recommended IPV6, and I am sure it is a better setup, this is working for me now, I will try Ipv6 as a project later.
ALSO, The key to open nat seamed to be the Static port manual outbound NAT rule, and the key to us all being able to play together from one network, seamed to be NAT Reflection: NAT + Proxy. If you can get Ipv6 working, that would be great! I would love to hear how it is working for you. I know that NAT is not really part of ipv6, you can set one up, but you don't need too, and I assume that it is not this way by default, maybe your problem is in your firewall rules? I know the firewall will still be affecting traffic on Ipv6, and you need it too, since without NAT, that is the only thing between you and barracuda and shark riddled ocean that is the open internet.
-
Setting static nat for all ports is a borked configuration. While it might some sort of mcgyver work around for broken configurations in console games. It will cause issues at some point if your running multiple machines behind because what is suppose to happen here.
So device1:portA –-> dest portX (nat device) publicIP:portA --- destIP:portX
So that can work.. But now what happens when you have device2:portA as its source... How is the nat suppose to work? That is the whole point of napt and sharing of 1 public IP.. when your different devices happen to use the same source port for some sort of communication on the public side of the nat, the natter ie pfsense in this case can just keep track of the connection and use a different FREE source port for the public side of the connection..
With napt you end up with this
device1:portA -- destIP:portX (nat) publicIP:portA --->destIP:portX
device2:portA -- destIP:portX (nat) publicIP:portB --->destIP:portX
device3:portA -- destIP:portX (nat) publicIP:portC --->destIP:portX
etc..With static port mapping this breaks down as soon as you have more than 1 device trying to make connections to the outside with the same port. this might rarely happen with a handful of devices but as you ramp up the number of devices behind your nat your odds of it happening ramp up as well.
The use of ipv6 is suppose to fix all of these issues these games have with being behind a nat.. Since all the devices will have publicIP.. So if they want sure they can all use the same sourceport in the sessions since they all have their own IP.
If your seeing issues with stating your strict NAT I would assume its testing your ipv4 and not your ipv6.. IPv6 has no nat, so how would it be anythingNAT? But yes your going to have to make sure your firewall rules allow the traffic you want when you start using ipv6.
-
If your seeing issues with stating your strict NAT I would assume its testing your ipv4 and not your ipv6.. IPv6 has no nat, so how would it be anythingNAT? But yes your going to have to make sure your firewall rules allow the traffic you want when you start using ipv6.
That part I do understand. Currently I believe I allow ALL ipv6 traffic for my gaming network (The network that my Xbox Ones are On) I think the problem lies within the XBox Ones. They dont seem to switch to IPv6 Only. They accept ipv6 and acquire local-link and global ipv6 address but they ALWAYS defer to the ipv4 network. But If I take and put both Xbox ones on my cheap Cisco (Linksys) E1000 IPv4 Only router with upnp…no problems at all! Why can that POS router work it out and pfsense cannot?
![Gaming Rules.JPG](/public/imported_attachments/1/Gaming Rules.JPG)
![Gaming Rules.JPG_thumb](/public/imported_attachments/1/Gaming Rules.JPG_thumb) -
while that rule allows your ipv6 out…. Where is your inbound rules.. How exactly do you have ipv6 setup?
Native dual stack from isp, HE tunnel?
Your inbound rules would have to be where inbound would be seen first, wan or your tunnel, etc.
From outside trying to ping what of your IPv6 console IPs, do you see it allowed do you get an answer, or is blocked
-
For Ipv6 I have Comcast which runs native ipv6.
Using online ping test http://www.subnetonline.com/pages/ipv6-network-tools/online-ipv6-ping.php I am able to successfully ping my XBOX One at its ipv6 address
-
ok I see 42 states open via ipv6.. so is your stuff working now?
-
ok I see 42 states open via ipv6.. so is your stuff working now?
Currently I have verified IPv6 working and I have IPv4 NAT Type OPEN for both XBox ones. But I still have many connection issues. I am pretty sure that pfsense is causing the connection problems. I believe pfsense CANNOT properly negotiate the Upnp traffic for both console even thou I have NAT Type OPEN.
-
ok I see 42 states open via ipv6.. so is your stuff working now?
Currently I have verified IPv6 working and I have IPv4 NAT Type OPEN for both XBox ones. But I still have many connection issues. I am pretty sure that pfsense is causing the connection problems. I believe pfsense CANNOT properly negotiate the Upnp traffic for both console even thou I have NAT Type OPEN.
I've been in the works on configuring my dads Xbox One and triggering port forwards. All of my other applications, qBittorrent, OpenVPN ports are working correctly. I've done multiple NAT changes that I've found around reddit and here. Best I got was Moderate NAT, but then I lost it and back to strict. Unfortunately no experience with the Xbox One on 2.2.6 but curious if that is any different.
-
"But I still have many connection issues"
Do you have static ports set for everything? Like I said that sort of config is BORKED!!! And yeah your going to have issues with that sort of setup.. A port here or there when only 1 thing would be using the ports at a time ok… But you can not just say all ports static when you have devices wanting to use the same ports and other devices using napt (network address port translation) to share the 1 public IP.
If you want multiple consoles for ipv4, then you really should have multiple IPv4 addresses.. It amazes me that it would still use ipv4 if it can do ipv6. Every other OS on the planet if has ipv6 prefers it over ipv4, and won't even use it unless ipv6 isn't available for what its trying to do.
-
It only works for me with manual outbound nat with per device static port entries in the outbound nat rules for allow any udp to that device. I could make it more secure but I have a "gaming" subnet with more lax rules.