Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8.8.8.8 as preferred DNS server causes SkyrimTogetherServer.exe to crash clients #468

Open
7 of 8 tasks
snakecase opened this issue Aug 19, 2022 · 1 comment
Open
7 of 8 tasks
Labels
bug Something isn't working Old Very old version of the mod

Comments

@snakecase
Copy link

snakecase commented Aug 19, 2022

Description

Two PCs on LAN with identical Skyrim installations:

  • No mods
  • No SKSE
  • Skyrim Together Reborn is the latest version (1.2.0) and was deployed according to wiki
  • Firewall rules identical
  • Windows Defender settings identical
  • Default server settings

But!

  • PC A has 8.8.8.8 set as a preferred DNS server in Network Adapter properties and PC B has it empty (provided by ISP).

Two scenarios:

  • PC A server & client + PC B client: SkyrimTogetherServer.exe has periods when it stops accepting connections and data for ~1 minute then proceeds working for ~5 minutes, rinse and repeat. It also starts throwing Server could not reach the server list! Connection error several times. After both players connect successfully it's a matter of a few minutes unti one of them (randomly) or rarely both crash. Server keeps running and even accepts further connections but keeps throwing the error and clients keep crashing.

  • PC B server & client + PC A client: No problems. No above-mentioned error.

Steps to reproduce

  1. Set 8.8.8.8 (or any other IP which can't resolve this) as a preferred DNS server on a host machine.
  2. Start SkyrimTogetherServer.exe.
  3. Start SkyrimTogether.exe on clients.
  4. Load saved games with fresh characters standing outside of Helgen cave a few meters apart.
  5. Connect to the server.
  6. Wait until one of the clients or even both crash to Desktop.

Reproduction rate

  • Consistent: I can reproduce this bug by following the steps to reproduce 100% of the time (every time)

Note: it's consistent as long as 8.8.8.8 doesn't resolve skyrim-reborn-list.skyrim-together.com OR my ISP meddles in this particular address somehow. 1.1.1.1 works fine for example.

Culprit

ServerListService.cpp's client.Post("/announce", params) for some reason hangs server long enough to crash clients if it can't get (response) consistently.

@snakecase snakecase added the bug Something isn't working label Aug 19, 2022
@gerbilOFdoom
Copy link

gerbilOFdoom commented Sep 24, 2022

Looks like server announcements should only happen every minute and when a player connects/disconnects. Interesting thing here: the TTL for skyrim-reborn-list is 5 minutes, so your system should reach out to DNS only every 5 minutes. The exact time where the network enters a blocking state may match the timeout before switching to secondary DNS.

What is the secondary DNS server for your system?

I recommend testing a DNS lookup from your system directly to see what sort of response time you get.
On windows: (Measure-Command {Resolve-DnsName -Name skyrim-reborn-list.skyrim-together.com -Server 8.8.8.8}).TotalSeconds
On linux: dig @8.8.8.8 skyrim-reborn-list.skyrim-together.com

@Dragonisser Dragonisser added the Old Very old version of the mod label Dec 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Old Very old version of the mod
Projects
None yet
Development

No branches or pull requests

3 participants