Add SRV Record support

Suggestions that have been added to the game.

Moderator: ickputzdirwech

Rseding91
Factorio Staff
Factorio Staff
Posts: 14265
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: Add SRV Record support

Post by Rseding91 »

Saklad5 wrote: Wed Oct 05, 2022 5:33 pm Could someone at Wube please register the "factorio" service name with IANA? You're just squatting on the name right now, and that's a serious problem.

The relevant form is here: https://www.iana.org/form/ports-services. It's very easy to use: I could do it on your behalf if you prefer.

Also consider registering UDP port 34197 for Factorio, since that's the same form. It's similarly bad practice to use an unregistered port by default (really, modern software should be using dynamic ports until configured otherwise, with SRV/SVCB records if you don't want to make people specify ports themselves), but that ship has sailed.
I don't see any other games in their registration list. Even Minecraft which has used SRV records since 2012 and is now owned by Microsoft isn't in there (that I can find anyway).
If you want to get ahold of me I'm almost always on Discord.
Saklad5
Burner Inserter
Burner Inserter
Posts: 6
Joined: Thu Mar 31, 2022 6:01 pm
Contact:

Re: Add SRV Record support

Post by Saklad5 »

First off, port 666 is reserved for Doom. It is not the only game there, but it is the funniest one.

Second, I was just discussing this in the IETF mailing list, and the general consensus is that the applications squatting on names should register: https://mailarchive.ietf.org/arch/msg/d ... 6G3rsoVlE/.
I think the right approach here would be for us (especially relevant chairs
and ADs) to reach out to the squatters and try to get them to join the
process.
An IANA employee also added a link to the form at the registry in response.

Minecraft is another high-profile squatter, and they are being reached out to as well.
posila
Factorio Staff
Factorio Staff
Posts: 5349
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: Add SRV Record support

Post by posila »

Saklad5 wrote: Wed Oct 05, 2022 5:33 pmAlso consider registering UDP port 34197 for Factorio, since that's the same form. It's similarly bad practice to use an unregistered port by default (really, modern software should be using dynamic ports until configured otherwise, with SRV/SVCB records if you don't want to make people specify ports themselves), but that ship has sailed.
How does modern software handle connecting over LAN without internet?
Saklad5
Burner Inserter
Burner Inserter
Posts: 6
Joined: Thu Mar 31, 2022 6:01 pm
Contact:

Re: Add SRV Record support

Post by Saklad5 »

Ideally? DNS Service Discovery: <https://www.rfc-editor.org/rfc/rfc6763>. This is the standardized form of Apple's Bonjour multicast DNS system (used for AirDrop, etc.), and it basically works the same way as unicast DNS. macOS, Windows, most Linux distros, this is how they detect and communicate with other devices on a network.

Note that this doesn't just determine the correct port: it also determines which devices on the network are offering a given service. That aspect can actually be used for unicast DNS as well, but requires clients to designate search domains beyond local multicast. Most operating systems support this (you've probably seen the setting), but it is rarely deployed in practice.

Speaking of which, in practice? DNS-SD is used less than I'd personally like for games, so many things just have you specify a pre-determined IP address and port if they offer offline multiplayer at all.
Last edited by Saklad5 on Thu Oct 06, 2022 11:53 am, edited 2 times in total.
Saklad5
Burner Inserter
Burner Inserter
Posts: 6
Joined: Thu Mar 31, 2022 6:01 pm
Contact:

Re: Add SRV Record support

Post by Saklad5 »

Minecraft has a particularly flaky approach to LAN. Assuming their wiki is accurate: every 1.5 seconds, LAN hosts send a multicast packet on the UDP port registered to whatever "upnotifyp" is. In my experience, Minecraft LAN detection fails to work on most networks I've used it with, and I end up manually connecting with an IP address and port as previously described.
SixV
Burner Inserter
Burner Inserter
Posts: 5
Joined: Mon Apr 15, 2019 11:14 am
Contact:

Re: Add SRV Record support

Post by SixV »

Thanks @vinzenz for implementing SRV record support :D

----

@Saklad5 : What Wube is doing isn't "name squatting". I believe that the industry's current take on this is "as long as you aren't afraid someone will "steal" your name, you might as well skip registration". Although this is common practice, I believe the best practice would be to register a name against the IANA's service name registry, and I recommend Wube to do it. No need to register the port though, you're wrong on this part, @Saklad5. The port number isn't enforced at all and AFAIK no "well known" port is required for Factorio MP to work.
Post Reply

Return to “Implemented Suggestions”