DNS: Difference between revisions

Jump to navigation Jump to search
95 bytes removed ,  10 November 2016
Repo templates and WP links
(Repo templates and WP links)
Line 1: Line 1:
== Status ==
== Status ==
Torsten created a branch [https://sourceforge.net/p/flightgear/flightgear/ci/topics/mpdiscovery-via-dns/~/tree/ topics/mpdiscovery-via-dns] with a first implementation - just in case somebody might want to have a look. It does contain full lookup of a server list by checking the SRV records and each server's properties via TXT records with name=value text and value being a b64 encoded JSON string. It does not /yet/ contain a "is-online" check.<ref>{{cite web
Torsten created a branch {{flightgear source|b=topics/mpdiscovery-via-dns|t=branch}} with a first implementation - just in case somebody might want to have a look. It does contain full lookup of a server list by checking the SRV records and each server's properties via TXT records with name=value text and value being a b64 encoded JSON string. It does not /yet/ contain a "is-online" check.<ref>{{cite web
   |url    =  https://sourceforge.net/p/flightgear/mailman/message/35482909/  
   |url    =  https://sourceforge.net/p/flightgear/mailman/message/35482909/  
   |title  =  <nowiki> Re: [Flightgear-devel] Proposal for storing the mp server
   |title  =  <nowiki> Re: [Flightgear-devel] Proposal for storing the mp server
Line 22: Line 22:
== Usage of DNS within FlightGear ==
== Usage of DNS within FlightGear ==


[https://en.wikipedia.org/wiki/Domain_Name_System The Domain Name System] (DNS) is being used within FlightGear to look up resources providing several services. Its use started with release [[Changelog 2016.2|2016.2.1]] as an experimental feature to resolve the location of the [[TerraSync]] servers.
The {{wikipedia|Domain Name System}} (DNS) is being used within FlightGear to look up resources providing several services. Its use started with release [[Changelog 2016.2|2016.2.1]] as an experimental feature to resolve the location of the [[TerraSync]] servers.
This page documents the used services in detail<ref>{{cite web
This page documents the used services in detail<ref>{{cite web
   |url    =  https://sourceforge.net/p/flightgear/mailman/message/35483751/  
   |url    =  https://sourceforge.net/p/flightgear/mailman/message/35483751/  
Line 49: Line 49:


=== TerraSync ===
=== TerraSync ===
The TerraSync client queries {{Wikipedia|NAPTR record}}s for the DNS name <code>terrasync.flightgear.org</code>. As of version 2016.4, the configured entries are:
The TerraSync client queries {{Wikipedia|NAPTR record|NAPTR records}} for the DNS name <code>terrasync.flightgear.org</code>. As of version 2016.4, the configured entries are:
* terrasync.flightgear.org. IN NAPTR 100 100 "U" "ws20" "!^.*$!http://flightgear.sourceforge.net/scenery!" .
* terrasync.flightgear.org. IN NAPTR 100 100 "U" "ws20" "!^.*$!http://flightgear.sourceforge.net/scenery!" .
* terrasync.flightgear.org. IN NAPTR 100 50 "U" "ws20" "!^.*$!http://fgfs.goneabitbursar.com/terrascenery!" .
* terrasync.flightgear.org. IN NAPTR 100 50 "U" "ws20" "!^.*$!http://fgfs.goneabitbursar.com/terrascenery!" .
Line 62: Line 62:
* The remaining entries are filtered for those with the lowest preference. (both other entries survive this filter)
* The remaining entries are filtered for those with the lowest preference. (both other entries survive this filter)
* a random entry from the remaining list is picked for the entire session of FlightGear.
* a random entry from the remaining list is picked for the entire session of FlightGear.
This is implemented in <code>SGTerraSync::WorkerThread::run()</code> [https://sourceforge.net/p/flightgear/simgear/ci/next/tree/simgear/scene/tsync/terrasync.cxx#l441 here].
This is implemented in <code>SGTerraSync::WorkerThread::run()</code> {{simgear source|simgear/scene/tsync/terrasync.cxx|l=441|t=here}}.


The property /sim/terrasync/http-server can be set to user defined URL pointing to the location of a custom TerraSync server e.g. <code>http://myterrasync.org/custom-scenery</code>.
The property /sim/terrasync/http-server can be set to user defined URL pointing to the location of a custom TerraSync server e.g. <code>http://myterrasync.org/custom-scenery</code>.
Line 68: Line 68:


=== Multiplayer ===
=== Multiplayer ===
The multiplayer client queries {{Wikipedia|SRV record}}s for a list of multiplayer servers and {{Wikipedia|TXT record}}s on each server for detailed information about the server.
The multiplayer client queries {{Wikipedia|SRV record|SRV records}} for a list of multiplayer servers and {{Wikipedia|TXT record|TXT records}} on each server for detailed information about the server.


The SRV record for a multiplayer server looks like this:
The SRV record for a multiplayer server looks like this:

Navigation menu