fgms 0.13.5
FlightGear MultiPlayer Server

Configuring fgms

fgms is configured via a config file, see Example fgms.conf

  • by default on *nix systems the file is located at:
    • /usr/local/etc/fgms.conf
  • Parts of the configuration can be overriden with the startup command line eg port, log
    • see fgms for the command line options

Example fgms.conf

The following files are included in contrib/etc/

TIP: Add a # to comment out a line , or anything after in a config file

#foo = 5000 # < this line has been commented out
foo = 5001 # < this line is "live'
See also
Reducing bandwidth requirements - optimizing the configuration
FG_CONFIG class - used to load, parse and query from ProcessConfig()

Server Config


server.name = albert
  • This name is used in server chat messages and when queried via telnet


# only listen on this address
server.address = 123.123.456.456
  • If you want to receive data over the internet and have only one IP configured on your server, just comment out the line (prepend it with a '#' character)
  • If you have several IPs configured, set this to the IP your server should listen and send data on.
  • If you only want to handle local traffic, set this to server.address =
    If you are part of the MP Network then this IP must match the DNS entry.


# listening port for FlightGear Sim client
server.port = 5000
  • For public servers this should be 5000


server.daemon = false
  • If set to true, the server will run in the background, otherwise foreground


server.is_hub = false
  • If set to true, fgms will act as a hub server
  • a HUB server will resend packets received from relays to all other relays.
    Only set to true if you know what you are doing!!
    See also
    FG_SERVER::SetHub and MP Network


server.logfile = fgms.log


server.telnet_port = 5001
  • port for telnet server
  • set to 0 (zero) to disable telnet
  • note however, for public servers this should be 5001

Player/Client Config


server.out_of_reach = 100


server.playerexpires = 10


Here you configure to which servers you want your server to send data of local clients to. Remember that those servers should be configured so that those will sent their client data to your server, too!

relay.host / relay.port

relay.host = mpserver14.flightgear.org
relay.port = 5000
# relay.host = mpserver99.flightgear.org
# relay.port = 5000
  • If you want to interconnect several servers, this option is for you. All other should leave these options out of the configuration. If you want to connect servers, you should add all servers to the configuration you want to send traffic to.
The relay servers you send traffic to must be configured accordingly to relay to you, or your traffic will be ignored!
See also


crossfeed.host / crossfeed.port

A list of one or more host/port to forward UDP packets to.

crossfeed.host = localhost
crossfeed.port = 5002
# crossfeed.host = other.server.com
# crossfeed.port = 5444
  • These servers will received all locally received packets without any condition
  • i.e. all local packets are mirrored to them
See also
FG_SERVER::AddCrossfeed and FG_SERVER::SendToCrossfeed

Client BlackList


List of blacklisted client IPs. Set these to block specific client IPs.

blacklist =
blacklist =
  • Blacklisted IPs will ignore all traffic comming from the given IP.
See also

Tracker Config


server.tracked = false
  • In most cases you should set this to false. You can however, run the tracking server (part of the source tree, under /crontrib) and point the tracking to your server. If your server is not part of the public network and you are not running a tracking server you should set this to false.


server.tracking_server =
  • Enter the IP address of the tracking server


server.tracking_port = 8000