Port Forwarding
-
Unless your hosting you should not need to forward any ports.
This is only true when there’s only one client. When there are multiple clients, they will try and establish a mesh network. In effect, every client can be viewed as a server then. It won’t fall apart immediately when only one client in a MP has no port forwarding as it will be able to establish connections with other clients through their open ports, but if two or more clients have no port forwarding, they won’t be able to complete the mesh network. BMS has a fallback mechanism in that case: traffic between clients that cannot connect to each other, is routed through the host. Of course, this creates more lag, and takes up bandwidth. Better to configure your router and firewall correctly.
IVC is different. It uses a star topology and as such, each client only connects to the server. There is no need for a client to have open ports, only for the server.
-
Interesting. Could this possibly be the cause for f’d up debriefs (i.e. ordinance released from one jet shows up on another, multiple pilot instances… etc) that we all see from time to time in MP flights?
-
Interesting. Could this possibly be the cause for f’d up debriefs (i.e. ordinance released from one jet shows up on another, multiple pilot instances… etc) that we all see from time to time in MP flights?
I can’t rule that out. The debriefs have never been perfect as far as I remember. But in my experience the FU’s you describe often occur when people reconnect, e.g. after being shot down and joining another flight.
-
This is only true when there’s only one client. When there are multiple clients, they will try and establish a mesh network. In effect, every client can be viewed as a server then. It won’t fall apart immediately when only one client in a MP has no port forwarding as it will be able to establish connections with other clients through their open ports, but if two or more clients have no port forwarding, they won’t be able to complete the mesh network. BMS has a fallback mechanism in that case: traffic between clients that cannot connect to each other, is routed through the host. Of course, this creates more lag, and takes up bandwidth. Better to configure your router and firewall correctly.
IVC is different. It uses a star topology and as such, each client only connects to the server. There is no need for a client to have open ports, only for the server.
You Nailed it. The First Battle For Sinai we ran, we had lot of clients with unopened ports and the Lag was very bad. After we added this line set g_bHostAllowsDubiousConnections 0 in the Server .cfg lag was almost gone.
Every client had to open there Ports in order to fly on the server. Other things like Speed Test to the server location and assigning custom connection bandwidth also helped.
-
So break NAT without static port mappings to work around bugs? Oh, bother…
-
So break NAT without static port mappings to work around bugs? Oh, bother…
Not sure if I understand you correctly. But in case I do: I didn’t mention that RAKNET has a NAT traversal algorithm. However, this will only work with certain types of NAT’s. So to err on the safe side: open your ports.
-
That’s not true. Only static mappings work where src port is preserved through NAT. This is very uncommon. It’s been discussed some time back but apparently @mrivers has a different idea of TCP/IP…
-
That’s not true. Only static mappings work where src port is preserved through NAT. This is very uncommon. It’s been discussed some time back but apparently @mrivers has a different idea of TCP/IP…
I believe you’re misinformed. Source ports may be renumbered. In fact, I’ve found that there are lots of NAT implementations that won’t preserve the source port (outbound) even when you define a port-forwarding rule (inbound).
When setting up the connections, the server notes the actual source port of a client (what NAT made of it), and the source port that client “thinks” it uses (the port used by the PC running BMS behind the NAT). The server sends both ports to the clients that are already connected, and these clients subsequently try to connect to the new client using both these ports. Also the other way around, so the new client receives two ports of all the existing clients and tries to connect the other way around. This gives a total of 4 chances to connect each pair of clients. Unfortunately, as I said before, it won’t work for all NAT implementations.
-
No, you misread. It’s dubious=0 that prevents non-static mappings to work. As said, @mrivers has a problem with non-static mappings. Or something.
-
No, you misread. It’s dubious=0 that prevents non-static mappings to work. As said, @mrivers has a problem with non-static mappings. Or something.
I don’t see where I should have read that you meant the situation where dubious=0. That’s non-standard. But you are right: with that switch set, the source port must be unaltered. It’s a crude way to enforce all clients behave “nicely”. Too crude, that’s why it’s off by default IMHO.
-
Any why people with limited network knowledge shouldn’t enable it…
-
kinda a shame for those of us stuck behind university routers and no port forwarding available…
-
kinda a shame for those of us stuck behind university routers and no port forwarding available…
And kinda a shame for those that have MP missions gone buzinca cause of users behind university routers and no port forwarding available…
what do u prefer? a mission that can go bad and not realize it or a rock solid mission MP data wise???
I have flawn missions with my squad that some members refuse to comply with blocking dubious connections, so it’s a party on ports connections disconnections, a mad house, and they all think that everything was perfect… but if u look at the details… the mission was a joke and spoiled the fun for me… I thought what a waste of time those 2+ hours…
Sure u can’t have the perfect result cause maybe your ISP cause u problems but those are few… most (for me and my experience on the subject) are bad lines… with noise and low upload speeds at some points during the mission, port forwarding, Software firewalls wrongly set up, users doing changes on their systems and forget to re do changes for BMS MP stability, like reinstall and forget to check firewall, or change their network card IP and leaving the old IP on the router port forward…
If u have many participants surely someone will forget or have something wrong… with blocking dubious connections u have them blocked from spoiling the fun of others and u can quickly spot the problematic member and help him out.
-
-
or not, as in the above case.
Well not… if the member has no portforward or wrong the server will not let him connect.
So which case do u refer to?
Finally the server admin can have -mono parameter and see that a member is trying to connect on a wrong port also he can see and his IP…
So this is quicker… stops the problem before birth… -
Well not… if the member has no portforward or wrong the server will not let him connect.
So which case do u refer to?
Finally the server admin can have -mono parameter and see that a member is trying to connect on a wrong port also he can see and his IP…
So this is quicker… stops the problem before birth…you can spot him, for sure, but you cannot help him out…
-
kinda a shame for those of us stuck behind university routers and no port forwarding available…
With dubious connections disallowed, you’re screwed. Without it, you are able to reliably MP with one friend (him being the server), and even reliably MP with a larger party, as long as you are the only one that’s “unreachable”. If everybody else has his ports opened up, you’ll be able to establish peer-to-peer connections with them. One more client like you, and “routing through host” will be necessary between the two of you.
-
you can spot him, for sure, but you cannot help him out…
why not?
If his hw problems are unfixable then he knows that he can’t enjoy 100% and he must let others enjoy it and try to find a solution. In his quest he can be guided to a perfect solution.
If his problems are fixable then a teammate can guide him or do the changes for him like with teamviewer etc… -
why not?
If his hw problems are unfixable then he knows that he can’t enjoy 100% and he must let others enjoy it and try to find a solution. In his quest he can be guided to a perfect solution.
If his problems are fixable then a teammate can guide him or do the changes for him like with teamviewer etc…what even is this “if”? its polar. either you can port forward or you cannot, there is no sometimes or somewhat involved.
-
Guys, please recognize that you have different views on allowing dubious connections.
Arty likes the option, I assume because he regularly uses it with friends who have their ports nicely forwarded, and restricting the connections to source port 2935 tells him immediately when something screwed up with one of the connections. That client won’t be able to connect, he investigates, solves the problem (it worked before), and he can be certain the mesh network will be complete again.
Blu3wolf dislikes it, because he is located behind a router over which he has no control, and as a consequence, he will never be able to jotin a server that disallows dubious connections. However, I believe not many people use this option (dubious clients are allowed by default), so he will be able to join most servers. Unfortunately, when there are other clients with non-optimal configured routers, the data between them will be routed through the host, causing some lag and bandwidth (at the server side).
AllowDubiousConnections has pros and cons, that’s why it’s optional.