Jump to content
SAS_Storebror

Hosting a DServer locally for testing

Recommended Posts

Dear all,

 

Up to version 3.0x, I was able to run a DServer instance locally, listening on 127.0.0.1, in order to test missions before they were sent to the real server.

Since version 3.1x, this seems not to work anymore.

DServer loads, registering at Master Server works well, mission loads fine but... when launching the game, I can't see my local server in the list anymore like I did with 3.0x.

Does anybody have a hint for me how to work around this issue?

 

Sure, I can run a new Server from within the game client itself, but unfortunately doing so isn't exactly the same in every aspect like running the same mission on a DServer instance, certain MCUs only work well on DServer.

 

:drinks:

Mike

Share this post


Link to post
Share on other sites
Posted (edited)

I tested my local DServer successfully. I'm using the IP4 address of my PC in the Server IP setting. See "Server IP" on pg. 328 of the editor manual.

 

Also, Coconut had success leaving the Server IP field blank. Here are some posts regarding this tactic:

 

           (in the next post, =LG=Kathon responds to the post above, mentioning a reason to specify an IP and not leave the field blank)

 

Edited by JimTM
  • Thanks 1

Share this post


Link to post
Share on other sites

Well that's odd.

I've tried that on 4 PCs now.

In the past, setting "Server IP" in the SDS file to "127.0.0.1" always worked.

It doesn't anymore.

I've tried leaving the field blank, doesn't work either.

I've tried the PC's IP address, doesn't work either.

I've tried the PC's external IP address, doesn't work either (which makes sense because the router is not forwarding the ports, in the end I don't want to publically host my test session).

I've tried to set "ExternalIP" to "0" and "1" for either of these, doesn't change a thing.

 

Tested on 4 completely different PCs (2xDesktop, 2xLaptop) in two completely different networks (home and corporate).

Registering the DServer instance on the Master Server works, but the test instance never ever appears on the server list.

 

:drinks:

Mike

Share this post


Link to post
Share on other sites

Just what I was thinking of as well, but: No.

I've even tried to set my home router's port forwarding, still no joy.

This looks odd.

I'll try a complete reinstall of the DServer test instance now.

 

:drinks:

Mike

Share this post


Link to post
Share on other sites

Back again from the complete reinstall - the full 13-dot-something gigabytes - and...

...

..

.

.

.

..

... the issue persists.

What the...?

I even took the original SDS file from our working public server, entered the credentials of our test account and added a "2" to the name, effectively loading the very same mission that is running well publically, with the very same settings, just adding a "2" to the server name and - nada.

Everything looks great, the DServer log is exactly the same like on the working public server (except for the name and the IP address of course), but the server doesn't appear on the list of availabler servers.

And this, I have to repeat, worked perfectly fine on 3.0x, it just stopped working on 3.1x.

 

Here is the SDS file, just in case:

// Generated by dserver

// credentials

login = "<our login>"
password = "<our password>"

// server info

ranked = 0
mode = 1
banTimeout = 300
lobbyTimer = 60
coopQuorum = 0
allowMouseJoy = 1
ServerName = "The Flying Ass Clowns 2"
TacviewRecord = true

serverDesc = "IL-2 Great Battles Server 2 operated by The Flying Ass Clowns"

// connection settings

protection = ""
maxClients = 70
maxClientPing = -1
ExternalIP = 1
ServerIP = ""
DownloadLimit = 150000
UploadLimit = 150000
DownloaderPort = 28100
TCPPort = 28000
UDPPort = 28000

// remote console settings

RconStart = 0
RconIP = ""
RconPort = 8991
RconLogin = ""
RconPassword = ""

// mission rotation data

ShutdownLoads = -1

[rotation]
random = true
   file = "Dogfight\FAC Training No37 Summer\FAC Training No37 Summer"
   file = "Dogfight\FAC Training No37 Autumn\FAC Training No37 Autumn"
   file = "Dogfight\FAC Training No37 Winter\FAC Training No37 Winter"
[end]

// preset and advanced settings

preset = 1

// preset: server related

killNotification = 1
friendlyFireReturn = 0
finishMissionIfLanded = 0
lockPayloads = 1
lockSkins = 0
lockFuelLoads = 0
lockWeaponModes = 1
penaltyTimeout = 10
respawnTimeout = 1
coalitionChangeTimeout = 10
finishMissionTimeout = 1
missionEndTimeout = 10
idleKickTimeout = -1
tdmPointsPerRound = 2000
tdmRoundTime = -1
coalitionsBalancer = false

// preset: mission related

objectIcons = true
navigationIcons = true
aimingHelp = false
courseWeaponsAimingHelp = false
padlock = true
simpleDevices = true
allowSpectator = true

easyFlight = false
autoCoordination = false
autoThrottle = false
autoPilot = true
autoThrottleLimit = true
autoMix = true
autoRadiator = true

noMoment = false
noWind = false
noMisfire = false
noBreak = false
invulnerability = false
unlimitFuel = false
unlimitAmmo = false
engineNoStop = false
hotEngine = true

As written before, changing "ExternalIP" to "0" doesn't help, setting "ServerIP" to e.g. "127.0.0.1", the router's internal or external IP doesn't help - nothing helps.

I've got no idea what's going wrong here.

 

:drinks:

Mike 

Share this post


Link to post
Share on other sites
Posted (edited)

Hi Mike! 

Most probably this is not your case, but it might be worth trying. I'm a developer and I've been noticing some weird behavior lately with Windows Firewall. Basically, input rules are disabled after I recompile a networked program. This is normal. The executable changed and it is sensible to distrust it. What seems to have changed is that Windows used to detect this inconsistency and asked again if I want to grant network access to the executable. Now it simply fails silently (refusing a connection) and I'm forced to manually delete the associated rules (in advanced firewall configuration) to coax the system into asking permissions again and restore connectivity. 

Good luck! 

Sergio 

Edited by OG_Rosco
  • Thanks 1

Share this post


Link to post
Share on other sites

Thanks for the hint but that's indeed not the case here.

I've thought about the Firewall yesterday already and removed all rules for DServer and anything else that looked like it could interfer.

Actually DServer asked on next start whether I want to grant access to the internet and all settings have been applied correctly (here: All TCP and UDP ports inbound have been granted).

On today's reinstall from scratch, since the path has changed ("IL-2 Sturmovik Great Battles" instead of "IL-2 Sturmovik Battle of Stalingrad"), Firewall asked again and granted access to DServer in it's new location as well.

Besides that, 127.0.0.1 needs no firewall rules and has been working before as mentioned.

 

:drinks:

Mike

Share this post


Link to post
Share on other sites

I'm not sure this would be the case, I suspect you have more experience with this than me,  but your upload and download limits look like they're set quite high. Perhaps that is causing the problem. They might be good for your datacentre server,  but perhaps not your local one. Unless you do have a 60 meg upload speed,  in which case, I envy you. 

 

I haven't had mine fail to show up when it's above my internet upload speed,  but I haven't had then set that high (only the default 50k,  which is, I think what causes that hang problem when people try to connect to a server). 

  • Thanks 1

Share this post


Link to post
Share on other sites

Since I'm on a 100MBit up/down line @home and 1GBit up/down otherwise, I don't think this is a problem.

Nevertheless, I've tried lowering the values 10k each and the issue persists.

 

:drinks:

Mike

Share this post


Link to post
Share on other sites
Posted (edited)

 

On 6/19/2019 at 6:58 PM, SAS_Storebror said:

Dear all,

 

Up to version 3.0x, I was able to run a DServer instance locally, listening on 127.0.0.1, in order to test missions before they were sent to the real server.

Since version 3.1x, this seems not to work anymore.

DServer loads, registering at Master Server works well, mission loads fine but... when launching the game, I can't see my local server in the list anymore like I did with 3.0x.

Does anybody have a hint for me how to work around this issue?

 

Sure, I can run a new Server from within the game client itself, but unfortunately doing so isn't exactly the same in every aspect like running the same mission on a DServer instance, certain MCUs only work well on DServer.

 

:drinks:

Mike

 

In the sds file, set the ip to the ip address of the machine running the server. If you don't know it, open a DOS window by typing command in the Windows search bar. Then at the prompt, type: ipconfig <enter>

 You should get something like this:

 

Windows IP Configuration


Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::d6f:e1cc:36b9:c613%11
   IPv4 Address. . . . . . . . . . . : 192.168.1.102
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.1.1

 

It's the ipv4 address you want. You can look-up how to make it static.

 

Edited by Cynic_Al
  • Thanks 1

Share this post


Link to post
Share on other sites

Thanks for your feedback @Cynic_Al but see, I've tried that in the very beginning already and after the complete reinstall as well, to no avail:

 

On 6/20/2019 at 7:13 AM, SAS_Storebror said:

I've tried that on 4 PCs now.

In the past, setting "Server IP" in the SDS file to "127.0.0.1" always worked.

It doesn't anymore.

I've tried leaving the field blank, doesn't work either.

I've tried the PC's IP address, doesn't work either.

I've tried the PC's external IP address, doesn't work either (which makes sense because the router is not forwarding the ports, in the end I don't want to publically host my test session).

I've tried to set "ExternalIP" to "0" and "1" for either of these, doesn't change a thing.

 

Tested on 4 completely different PCs (2xDesktop, 2xLaptop) in two completely different networks (home and corporate).

 

:drinks:

Mike

Share this post


Link to post
Share on other sites

I know you probably already know this so please forgive me for my suggestion or if it has been mentioned before. Have you tried having the option external enabled. I'm no in front of the pc right now but I believe there was something that said external or something like that near the area where you put your ip.

  • Thanks 1

Share this post


Link to post
Share on other sites

I don't suppose you saved the sds file in the wrong location,  such as the multiplayer folder? I think mine only works if it's in the same folder as il2.exe. 

  • Thanks 1

Share this post


Link to post
Share on other sites
18 hours ago, SCG_Riksen said:

Have you tried having the option external enabled.

As written in my post right above yours:

On 6/20/2019 at 7:13 AM, SAS_Storebror said:

I've tried to set "ExternalIP" to "0" and "1" for either of these, doesn't change a thing.

So yes, I've tried that and it didn't help.

 

18 hours ago, SpocksOddSocks said:

I don't suppose you saved the sds file in the wrong location,  such as the multiplayer folder? I think mine only works if it's in the same folder as il2.exe. 

Can't confirm that. On our working public DServer, the SDS file is in a completely different location than the remaining parts of the game and it works fine.

Nevertheless, I've tried with the SDS in the "bin/game" folder and as expected, it doesn't change a thing.

 

Thanks for your suggestions gents but the mystery is still unsolved.

 

:drinks:

Mike

Share this post


Link to post
Share on other sites

Still banging my head on this...

 

Last weekend I've performed some more tests @home.

Some things I've found out are:

  • If "ServerIP" gets set to any specific value, it has to be an IP address that exists locally on the PC, otherwise DServer will throw a "mission load error".
  • If "ExternalIP" is set to "1", DServer will always use the PC's IP address assigned by the router locally.
    For instance, the PC in question has the local IP "192.168.178.2" and external IP "84.46.***.***".
    It is reachable from the internet on the external IP (e.g. running a webserver on the same PC works and it can be reached from e.g. a mobile phone).
  • Port Forwarding on the router and Windows Firewall are configured correctly.
    Ports 8991 (remote console), 28000 (game itself) and 28100 (Downloader) are configured for both TCP and UDP protocols.

This is my current testing SDS file (it doesn't matter where it's stored by the way, I've tried). It's based on the one we run on our public server, only difference is that this test file has just one single mission configured and it's using a different login. The login is double-checked and if you alter a single bit of it, DServer will not register to the Master Server anymore:

// Generated by dserver

// credentials

login = "********************"
password = "**********"

// server info

ranked = 0
mode = 1
banTimeout = 900
lobbyTimer = 60
coopQuorum = 0
allowMouseJoy = 1
ServerName = "The Flying Ass Clowns TEST"
TacviewRecord = true

serverDesc = "IL-2 Great Battles TEST Server operated by The Flying Ass Clowns"

// connection settings

protection = ""
maxClients = 50
maxClientPing = -1
ExternalIP = 1
ServerIP = ""
DownloadLimit = 50000
UploadLimit = 50000
DownloaderPort = 28100
TCPPort = 28000
UDPPort = 28000

// remote console settings

RconStart = 0
RconIP = ""
RconPort = 8991
RconLogin = "mastergubi"
RconPassword = "elephant"

// mission rotation data

ShutdownLoads = -1

[rotation]
random = false
   file = "Dogfight\FAC Training No38 Winter\FAC Training No38 Winter"
[end]

// preset and advanced settings

preset = 1

// preset: server related

killNotification = 1
friendlyFireReturn = 0
finishMissionIfLanded = 0
lockPayloads = 1
lockSkins = 0
lockFuelLoads = 0
lockWeaponModes = 1
penaltyTimeout = 10
respawnTimeout = 1
coalitionChangeTimeout = 10
finishMissionTimeout = 1
missionEndTimeout = 1
idleKickTimeout = -1
tdmPointsPerRound = 2000
tdmRoundTime = -1
coalitionsBalancer = false

// preset: mission related

objectIcons = true
navigationIcons = true
aimingHelp = false
courseWeaponsAimingHelp = false
padlock = true
simpleDevices = true
allowSpectator = true

easyFlight = false
autoCoordination = false
autoThrottle = false
autoPilot = true
autoThrottleLimit = true
autoMix = true
autoRadiator = true

noMoment = false
noWind = false
noMisfire = false
noBreak = false
invulnerability = false
unlimitFuel = false
unlimitAmmo = false
engineNoStop = false
hotEngine = true

 

This is the router config (you see every entry twice, one is for UDP, one for TCP, left is the PC's internal IP):

1968218222_localDServer01.PNG.bda0444927271878002165c204d1ed81.PNG

 

These are the firewall settings. Additionally the "DServer.exe" is also configured in the firewall to have access to each and everything:

1281943699_localDServer02.PNG.e699737f42c5c15df541cdbaed94367e.PNG   1850678444_localDServer03.PNG.cea26229870d306fadcf0392eb316e30.PNG

 

This is the SDS with manually configured IP:

1712072190_localDServer04.PNG.727a40f945b624d709935847263d4390.PNG

 

This is what DServer.exe shows when loading that SDS:

878628723_localDServer05.PNG.c3aba15a6527963bbbea1df3d716344e.PNG

 

Same thing with "External" checked:

1642414255_localDServer06.PNG.b2dc42ab88bf1cfc66b8d1c05daab85f.PNG

 

DServer again is happy:

559599697_localDServer07.PNG.47ac8ac12e677456e71a8c2c4c787d36.PNG

 

But what does it help when the Server doesn't get listed?

This is the Server list, our publically hosted normal server is listed, the locally hosted test instance isn't:

1324141315_localDServer08.thumb.PNG.013f0029cb7ff498df049763cf2c0d62.PNG

 

:drinks:

Mike

Share this post


Link to post
Share on other sites

Have you double checked the "startup.cfg" file to make sure nothing suspicious has changed in the system key? 

 

Clutching at straws probably, but I think I'm frustrated for you.

 

FAC has, until recently, been the only working "Normal Setting" alternative when DED normal had been down, so I am grateful for your work so far,  and really want to see you get your problem solved. 

Share this post


Link to post
Share on other sites
Posted (edited)

Lucky us the real server isn't concerned. I'm only trying to get my local "test" copy working again like it's been for years.

The startup.cfg is fresh from the reinstall. I've compared it to the working file from the public server and there's no difference.

Yesterday I've uploaded the whole game folder from my local PC to our server on the internet to see whether it's working there.

It does.

So this is probably something related to connectivity, but now that all ports are open and the PC can be reached from the internet, I'm scratching my head as to what could keep it from showing up on the list...

 

:drinks:

Mike

 

Edited by SAS_Storebror

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...