Provided by: syncthing_1.18.6~ds1-1_amd64 bug

NAME

       syncthing-config - Syncthing Configuration

SYNOPSIS

          $HOME/.config/syncthing
          $HOME/Library/Application Support/Syncthing
          %LOCALAPPDATA%\Syncthing

DESCRIPTION

       New  in  version  1.5.0:  Database  and  config  can now be set separately. Previously the
       database was always located in the same directory as the config.

       Syncthing uses a single directory to store configuration and crypto keys.  Syncthing  also
       has a database, which is often stored in this directory too.  The config location defaults
       to $HOME/.config/syncthing (Unix-like), $HOME/Library/Application Support/Syncthing (Mac),
       or  %LOCALAPPDATA%\Syncthing  (Windows).  It  can be changed at runtime using the --config
       flag. In this directory the following files are located:

       config.xml
              The configuration file, in XML format.

       cert.pem, key.pem
              The device’s ECDSA public and private key. These form the basis for the device  ID.
              The key must be kept private.

       https-cert.pem, https-key.pem
              The  certificate  and  key  for HTTPS GUI connections. These may be replaced with a
              custom certificate for HTTPS as desired.

       csrftokens.txt
              A list of recently issued CSRF tokens (for protection against  browser  cross  site
              request forgery).

       The  database  is stored either in the same directory as the config (usually the default),
       but may also be located in one of the following directories (Unix-like platforms only):

       • If a database exists in the old default location, that location is still used.

       • If $XDG_DATA_HOME is set, use $XDG_DATA_HOME/syncthing.

       • If ~/.local/share/syncthing exists, use that location.

       • Use the old default location (same as config).

       The location of the database can be changed using the --data flag. The  --home  flag  sets
       both  config and database locations at the same time.  The database contains the following
       files:

       index-*.db
              A directory holding the database with metadata and hashes of the files currently on
              disk and available from peers.

CONFIG FILE FORMAT

       The following shows an example of a default configuration file (IDs will differ):

       NOTE:
          The  config  examples are present for illustration. Do not copy them entirely to use as
          your config. They are likely out-of-date and the values may no longer correspond to the
          defaults.

          <configuration version="30">
              <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
                  <filesystemType>basic</filesystemType>
                  <device id="3LT2GA5-CQI4XJM-WTZ264P-MLOGMHL-MCRLDNT-MZV4RD3-KA745CL-OGAERQZ"></device>
                  <minDiskFree unit="%">1</minDiskFree>
                  <versioning></versioning>
                  <copiers>0</copiers>
                  <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
                  <hashers>0</hashers>
                  <order>random</order>
                  <ignoreDelete>false</ignoreDelete>
                  <scanProgressIntervalS>0</scanProgressIntervalS>
                  <pullerPauseS>0</pullerPauseS>
                  <maxConflicts>-1</maxConflicts>
                  <disableSparseFiles>false</disableSparseFiles>
                  <disableTempIndexes>false</disableTempIndexes>
                  <paused>false</paused>
                  <weakHashThresholdPct>25</weakHashThresholdPct>
                  <markerName>.stfolder</markerName>
                  <copyOwnershipFromParent>false</copyOwnershipFromParent>
                  <modTimeWindowS>0</modTimeWindowS>
                  <maxConcurrentWrites>2</maxConcurrentWrites>
                  <disableFsync>false</disableFsync>
                  <blockPullOrder>standard</blockPullOrder>
                  <copyRangeMethod>standard</copyRangeMethod>
              </folder>
              <device id="3LT2GA5-CQI4XJM-WTZ264P-MLOGMHL-MCRLDNT-MZV4RD3-KA745CL-OGAERQZ" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
                  <address>dynamic</address>
                  <paused>false</paused>
                  <autoAcceptFolders>false</autoAcceptFolders>
                  <maxSendKbps>0</maxSendKbps>
                  <maxRecvKbps>0</maxRecvKbps>
                  <maxRequestKiB>0</maxRequestKiB>
                  <remoteGUIPort>0</remoteGUIPort>
              </device>
              <gui enabled="true" tls="false" debugging="false">
                  <address>127.0.0.1:8384</address>
                  <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
                  <theme>default</theme>
              </gui>
              <ldap></ldap>
              <options>
                  <listenAddress>default</listenAddress>
                  <globalAnnounceServer>default</globalAnnounceServer>
                  <globalAnnounceEnabled>true</globalAnnounceEnabled>
                  <localAnnounceEnabled>true</localAnnounceEnabled>
                  <localAnnouncePort>21027</localAnnouncePort>
                  <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
                  <maxSendKbps>0</maxSendKbps>
                  <maxRecvKbps>0</maxRecvKbps>
                  <reconnectionIntervalS>60</reconnectionIntervalS>
                  <relaysEnabled>true</relaysEnabled>
                  <relayReconnectIntervalM>10</relayReconnectIntervalM>
                  <startBrowser>true</startBrowser>
                  <natEnabled>true</natEnabled>
                  <natLeaseMinutes>60</natLeaseMinutes>
                  <natRenewalMinutes>30</natRenewalMinutes>
                  <natTimeoutSeconds>10</natTimeoutSeconds>
                  <urAccepted>0</urAccepted>
                  <urSeen>0</urSeen>
                  <urUniqueID></urUniqueID>
                  <urURL>https://data.syncthing.net/newdata</urURL>
                  <urPostInsecurely>false</urPostInsecurely>
                  <urInitialDelayS>1800</urInitialDelayS>
                  <restartOnWakeup>true</restartOnWakeup>
                  <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
                  <upgradeToPreReleases>false</upgradeToPreReleases>
                  <keepTemporariesH>24</keepTemporariesH>
                  <cacheIgnoredFiles>false</cacheIgnoredFiles>
                  <progressUpdateIntervalS>5</progressUpdateIntervalS>
                  <limitBandwidthInLan>false</limitBandwidthInLan>
                  <minHomeDiskFree unit="%">1</minHomeDiskFree>
                  <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
                  <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
                  <tempIndexMinBlocks>10</tempIndexMinBlocks>
                  <trafficClass>0</trafficClass>
                  <defaultFolderPath>~</defaultFolderPath>
                  <setLowPriority>true</setLowPriority>
                  <maxFolderConcurrency>0</maxFolderConcurrency>
                  <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
                  <crashReportingEnabled>true</crashReportingEnabled>
                  <stunKeepaliveStartS>180</stunKeepaliveStartS>
                  <stunKeepaliveMinS>20</stunKeepaliveMinS>
                  <stunServer>default</stunServer>
                  <databaseTuning>auto</databaseTuning>
                  <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
              </options>
          </configuration>

CONFIGURATION ELEMENT

          <configuration version="30">
              <folder></folder>
              <device></device>
              <gui></gui>
              <ldap></ldap>
              <options></options>
              <ignoredDevice>5SYI2FS-LW6YAXI-JJDYETS-NDBBPIO-256MWBO-XDPXWVG-24QPUM4-PDW4UQU</ignoredDevice>
              <ignoredFolder>bd7q3-zskm5</ignoredFolder>
          </configuration>

       This is the root element. It has one attribute:

       version
              The  config  version.  Increments whenever a change is made that requires migration
              from previous formats.

       It contains the elements described in the following  sections  and  these  two  additional
       child elements:

       ignoredDevice
              Contains the ID of the device that should be ignored. Connection attempts from this
              device are logged to the console but never displayed in the web GUI.

       ignoredFolder
              Contains the ID of the folder that should be ignored. This folder  will  always  be
              skipped  when  advertised from a remote device, i.e. this will be logged, but there
              will be no dialog shown in the web GUI.

FOLDER ELEMENT

          <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
              <filesystemType>basic</filesystemType>
              <device id="3LT2GA5-CQI4XJM-WTZ264P-MLOGMHL-MCRLDNT-MZV4RD3-KA745CL-OGAERQZ"></device>
              <minDiskFree unit="%">1</minDiskFree>
              <versioning></versioning>
              <copiers>0</copiers>
              <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
              <hashers>0</hashers>
              <order>random</order>
              <ignoreDelete>false</ignoreDelete>
              <scanProgressIntervalS>0</scanProgressIntervalS>
              <pullerPauseS>0</pullerPauseS>
              <maxConflicts>-1</maxConflicts>
              <disableSparseFiles>false</disableSparseFiles>
              <disableTempIndexes>false</disableTempIndexes>
              <paused>false</paused>
              <weakHashThresholdPct>25</weakHashThresholdPct>
              <markerName>.stfolder</markerName>
              <copyOwnershipFromParent>false</copyOwnershipFromParent>
              <modTimeWindowS>0</modTimeWindowS>
              <maxConcurrentWrites>2</maxConcurrentWrites>
              <disableFsync>false</disableFsync>
              <blockPullOrder>standard</blockPullOrder>
              <copyRangeMethod>standard</copyRangeMethod>
          </folder>

       One or more folder elements must be present  in  the  file.  Each  element  describes  one
       folder. The following attributes may be set on the folder element:

       id     The folder ID, which must be unique. (mandatory)

       label  The  label  of  a  folder  is  a  human readable and descriptive local name. May be
              different  on  each  device,  empty,  and/or  identical  to  other  folder  labels.
              (optional)

       path   The  path  to  the directory where the folder is stored on this device; not sent to
              other devices. (mandatory)

       type   Controls how the folder is handled by Syncthing. Possible values are:

              sendreceive
                     The folder is in default mode. Sending local and accepting  remote  changes.
                     Note  that  this  type was previously called “readwrite” which is deprecated
                     but still accepted in incoming configs.

              sendonly
                     The folder is in “send only” mode – it will not be modified by Syncthing  on
                     this  device.  Note that this type was previously called “readonly” which is
                     deprecated but still accepted in incoming configs.

              receiveonly
                     The folder is in “receive only” mode – it  will  not  propagate  changes  to
                     other devices.

       rescanIntervalS
              The  rescan  interval, in seconds. Can be set to 0 to disable when external plugins
              are used to trigger rescans.

       fsWatcherEnabled
              If set to true, this detects changes to files in the folder and scans them.

       fsWatcherDelayS
              The duration during which changes  detected  are  accumulated,  before  a  scan  is
              scheduled (only takes effect if fsWatcherEnabled is set to true).

       ignorePerms
              True if the folder should ignore permissions.

       autoNormalize
              Automatically correct UTF-8 normalization errors found in file names.

       The following child elements may exist:

       device These  must  have  the  id  attribute  and  can  have  an  introducedBy  attribute,
              identifying the device that introduced us to  share  this  folder  with  the  given
              device.   If  the  original  introducer  unshares this folder with this device, our
              device will follow and unshare  the  folder  (subject  to  skipIntroductionRemovals
              being  false  on the introducer device).  All mentioned devices are those that will
              be sharing the folder in question.  Each mentioned  device  must  have  a  separate
              device  element  later  in  the  file.  It is customary that the local device ID is
              included in all folders.  Syncthing will currently add this automatically if it  is
              not present in the configuration file.

       minDiskFree
              The  minimum  required  free space that should be available on the disk this folder
              resides. The folder will be stopped when  the  value  drops  below  the  threshold.
              Accepted units are %, kB, MB, GB and TB. Set to zero to disable.

       versioning
              Specifies a versioning configuration.

       SEE ALSO:
          versioning

       copiers, pullers, hashers
              The  number  of  copier,  puller  and  hasher  routines to use, or 0 for the system
              determined optimums. These are low level performance  options  for  advanced  users
              only;  do not change unless requested to or you’ve actually read and understood the
              code yourself. :)

       order  The order in which needed files should be pulled from the cluster.   The  possibles
              values are:

              random Pull files in random order. This optimizes for balancing resources among the
                     devices in a cluster.

              alphabetic
                     Pull files ordered by file name alphabetically.

              smallestFirst, largestFirst
                     Pull files ordered by file size; smallest and largest first respectively.

              oldestFirst, newestFirst
                     Pull  files  ordered  by  modification  time;  oldest   and   newest   first
                     respectively.

              Note  that the scanned files are sent in batches and the sorting is applied only to
              the already discovered files. This means the sync might start with a 1 GB file even
              if  there  is 1 KB file available on the source device until the 1 KB becomes known
              to the pulling device.

       ignoreDelete
              WARNING:
                 Enabling this is highly discouraged - use  at  your  own  risk.  You  have  been
                 warned.

              When  set to true, this device will pretend not to see instructions to delete files
              from other devices.

       scanProgressIntervalS
              The interval in seconds with which scan progress information is sent  to  the  GUI.
              Setting to 0 will cause Syncthing to use the default value of two.

       pullerPauseS
              Tweak for rate limiting the puller when it retries pulling files. Don’t change this
              unless you know what you’re doing.

       maxConflicts
              The maximum number of conflict copies to keep  around  for  any  given  file.   The
              default,  -1, means an unlimited number. Setting this to 0 disables conflict copies
              altogether.

       disableSparseFiles
              By default, blocks containing all zeros are not written, causing files to be sparse
              on  filesystems  that support this feature. When set to true, sparse files will not
              be created.

       disableTempIndexes
              By default, devices exchange information about blocks available in  transfers  that
              are  still  in progress, which allows other devices to download parts of files that
              are not yet fully downloaded on your own device, essentially making transfers  more
              torrent like. When set to true, such information is not exchanged for this folder.

       paused True if this folder is (temporarily) suspended.

       weakHashThresholdPct
              Use  weak hash if more than the given percentage of the file has changed. Set to -1
              to always use weak hash. Default is 25.

       markerName
              Name of a directory or file in the folder root to be used as marker-faq. Default is
              .stfolder.

       copyOwnershipFromParent
              On Unix systems, tries to copy file/folder ownership from the parent directory (the
              directory it’s located in).  Requires running Syncthing as a  privileged  user,  or
              granting it additional capabilities (e.g. CAP_CHOWN on Linux).

       modTimeWindowS
              Allowed  modification timestamp difference when comparing files for equivalence. To
              be used on file systems which have  unstable  modification  timestamps  that  might
              change  after  being  recorded  during  the  last  write operation. Default is 2 on
              Android when the folder is located on a FAT partition, and 0 otherwise.

       maxConcurrentWrites
              Maximum number of concurrent write operations while syncing. Increasing this  might
              increase or decrease disk performance, depending on the underlying storage. Default
              is 2.

       disableFsync

          WARNING:
              This is a known insecure option - use at your own risk.

          Disables committing file operations to disk before  recording  them  in  the  database.
          Disabling fsync can lead to data corruption.

       blockPullOrder
              Order  in  which  the  blocks  of  a  file are downloaded. This option controls how
              quickly different parts of the file spread between the connected  devices,  at  the
              cost of causing strain on the storage.

              Available options:

              standard (default):
                     The blocks of a file are split into N equal continuous sequences, where N is
                     the number of connected devices. Each  device  starts  downloading  its  own
                     sequence,  after  which it picks other devices sequences at random. Provides
                     acceptable data distribution and minimal spinning disk strain.

              random:
                     The blocks of a file are downloaded in a random order. Provides  great  data
                     distribution, but very taxing on spinning disk drives.

              inOrder:
                     The  blocks  of  a  file  are downloaded sequentially, from start to finish.
                     Spinning  disk  drive  friendly,  but  provides  no  improvements  to   data
                     distribution.

       copyRangeMethod
              Provides  a  choice  of  method for copying data between files. This can be used to
              optimise copies on network filesystems, improve speed of large copies or clone  the
              data using copy-on-write functionality if the underlying filesystem supports it.

              See folder-copyRangeMethod for details.

DEVICE ELEMENT

          <device id="5SYI2FS-LW6YAXI-JJDYETS-NDBBPIO-256MWBO-XDPXWVG-24QPUM4-PDW4UQU" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="2CYF2WQ-AKZO2QZ-JAKWLYD-AGHMQUM-BGXUOIS-GYILW34-HJG3DUK-LRRYQAR">
              <address>dynamic</address>
              <paused>false</paused>
              <autoAcceptFolders>false</autoAcceptFolders>
              <maxSendKbps>0</maxSendKbps>
              <maxRecvKbps>0</maxRecvKbps>
              <maxRequestKiB>0</maxRequestKiB>
              <remoteGUIPort>0</remoteGUIPort>
          </device>
          <device id="2CYF2WQ-AKZO2QZ-JAKWLYD-AGHMQUM-BGXUOIS-GYILW34-HJG3DUK-LRRYQAR" name="syno local" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
              <address>tcp://192.0.2.1:22001</address>
              <paused>true</paused>
              <allowedNetwork>192.168.0.0/16</allowedNetwork>
              <autoAcceptFolders>false</autoAcceptFolders>
              <maxSendKbps>100</maxSendKbps>
              <maxRecvKbps>100</maxRecvKbps>
              <maxRequestKiB>65536</maxRequestKiB>
              <remoteGUIPort>8384</remoteGUIPort>
          </device>

       One  or  more device elements must be present in the file. Each element describes a device
       participating in the cluster. It is customary to include a device element  for  the  local
       device;  Syncthing  will  currently add one if it is not present. The following attributes
       may be set on the device element:

       id     The device ID. (mandatory)

       name   A friendly name for the device. (optional)

       compression
              Whether to use protocol compression when sending  messages  to  this  device.   The
              possible values are:

              metadata
                     Compress  metadata  packets,  such as index information. Metadata is usually
                     very compression friendly so this is a good default.

              always Compress all packets, including  file  data.  This  is  recommended  if  the
                     folders  contents  are  mainly  compressible  data such as documents or text
                     files.

              never  Disable all compression.

       introducer
              Set to true if this device should be trusted as an introducer, i.e. we should  copy
              their list of devices per folder when connecting.

       SEE ALSO:
          introducer

       skipIntroductionRemovals
              Set to true if you wish to follow only introductions and not de-introductions.  For
              example, if this is set, we would not remove a device that we  were  introduced  to
              even if the original introducer is no longer listing the remote device as known.

       introducedBy
              Defines  which  device  has  introduced  us to this device. Used only for following
              de-introductions.

       certName
              The device certificate’s common name, if it is not the default “syncthing”.

       From the following child elements at least one address child must exist.

       address
              Contains an address or host name to use when attempting to connect to this  device.
              Entries  other  than  dynamic need a protocol specific prefix. For the TCP protocol
              the prefixes tcp:// (dual-stack), tcp4:// (IPv4 only) or tcp6:// (IPv6 only) can be
              used.   The  prefixes  for  the  QUIC protocol are analogous: quic://, quic4:// and
              quic6:// Note that IP addresses need not use  IPv4  or  IPv6  prefixes;  these  are
              optional. Accepted formats are:

              IPv4 address (tcp://192.0.2.42)
                     The default port (22000) is used.

              IPv4 address and port (tcp://192.0.2.42:12345)
                     The address and port is used as given.

              IPv6 address (tcp://[2001:db8::23:42])
                     The  default  port  (22000)  is used. The address must be enclosed in square
                     brackets.

              IPv6 address and port (tcp://[2001:db8::23:42]:12345)
                     The address and port is used as given.  The  address  must  be  enclosed  in
                     square brackets.

              Host name (tcp6://fileserver)
                     The  host name will be used on the default port (22000) and connections will
                     be attempted only via IPv6.

              Host name and port (tcp://fileserver:12345)
                     The host name will be used  on  the  given  port  and  connections  will  be
                     attempted via both IPv4 and IPv6, depending on name resolution.

              dynamic
                     The  word  dynamic  (without  any  prefix)  means  to  use  local and global
                     discovery to find the device.

              You can set multiple addresses and combine it with the dynamic keyword for example:

                 <device id="...">
                     <address>tcp://192.0.2.1:22001</address>
                     <address>quic://192.0.1.254:22000</address>
                     <address>dynamic</address>
                 </device>

       paused True if synchronization with this devices is (temporarily) suspended.

       allowedNetwork
              If given, this restricts connections to this  device  to  only  this  network  (see
              allowed-networks).

       maxSendKbps
              Maximum  send  rate  to  use for this device. Unit is kibibytes/second, despite the
              config name looking like kilobits/second.

       maxRecvKbps
              Maximum receive rate to use for this device. Unit is kibibytes/second, despite  the
              config name looking like kilobits/second.

       maxRequestKiB
              Maximum  amount  of data to have outstanding in requests towards this device.  Unit
              is kibibytes.

       remoteGUIPort
              If set to a positive integer, the GUI will display an HTTP link to the  IP  address
              which  is  currently  used for synchronization.  Only the TCP port is exchanged for
              the value specified here.  Note that any port forwarding or firewall settings  need
              to  be  done  manually  and  the  link  will  probably not work for link-local IPv6
              addresses because of modern browser limitations.

GUI ELEMENT

          <gui enabled="true" tls="false" debugging="false">
              <address>127.0.0.1:8384</address>
              <apikey>l7jSbCqPD95JYZ0g8vi4ZLAMg3ulnN1b</apikey>
              <theme>default</theme>
          </gui>

       There must be exactly one gui element. The GUI configuration is also used by the  rest-api
       and the event-api. The following attributes may be set on the gui element:

       enabled
              If not true, the GUI and API will not be started.

       tls    If set to true, TLS (HTTPS) will be enforced. Non-HTTPS requests will be redirected
              to HTTPS. When set to false, TLS connections are still possible but not required.

       debugging
              This enables profiling and additional debugging endpoints in the rest-api.

       The following child elements may be present:

       address
              Set the listen address. One  address  element  must  be  present.  Allowed  address
              formats are:

              IPv4 address and port (127.0.0.1:8384)
                     The address and port are used as given.

              IPv6 address and port ([::1]:8384)
                     The  address  and  port  are  used as given. The address must be enclosed in
                     square brackets.

              Wildcard and port (0.0.0.0:12345, [::]:12345, :12345)
                     These  are  equivalent  and  will  result  in  Syncthing  listening  on  all
                     interfaces via both IPv4 and IPv6.

              UNIX socket location (/var/run/st.sock)
                     If  the  address is an absolute path it is interpreted as the path to a UNIX
                     socket.

       unixSocketPermissions
              When address is set to a UNIX socket location,  set  this  to  an  octal  value  to
              override the default permissions of the socket.

       user   Set to require authentication.

       password
              Contains the bcrypt hash of the real password.

       apikey If set, this is the API key that enables usage of the REST interface.

       insecureAdminAccess
              If  true,  this  allows  access  to  the  web GUI from outside (i.e. not localhost)
              without authorization. A warning will displayed about this setting on startup.

       theme  The name of the theme to use.

       authMode
              Authentication mode to use. If not present, the  authentication  mode  (static)  is
              controlled by the presence of user/password fields for backward compatibility.

              static Authentication using user and password.

              ldap   LDAP authentication. Requires ldap top level config section to be present.

LDAP ELEMENT

          <ldap>
              <address>localhost:389</address>
              <bindDN>cn=%s,ou=users,dc=syncthing,dc=net</bindDN>
              <transport>nontls</transport>
              <insecureSkipVerify>false</insecureSkipVerify>
          </ldap>

       The ldap element contains LDAP configuration options.

       address
              LDAP server address (server:port).

       bindDN BindDN  for  user  authentication.   Special  %s  variable  should  be used to pass
              username to LDAP.

       transport

          nontls Non secure connection.

          tls    TLS secured connection.

          starttls
                 StartTLS connection mode.

       insecureSkipVerify
              Skip verification (true or false).

OPTIONS ELEMENT

          <options>
              <listenAddress>default</listenAddress>
              <globalAnnounceServer>default</globalAnnounceServer>
              <globalAnnounceEnabled>true</globalAnnounceEnabled>
              <localAnnounceEnabled>true</localAnnounceEnabled>
              <localAnnouncePort>21027</localAnnouncePort>
              <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
              <maxSendKbps>0</maxSendKbps>
              <maxRecvKbps>0</maxRecvKbps>
              <reconnectionIntervalS>60</reconnectionIntervalS>
              <relaysEnabled>true</relaysEnabled>
              <relayReconnectIntervalM>10</relayReconnectIntervalM>
              <startBrowser>true</startBrowser>
              <natEnabled>true</natEnabled>
              <natLeaseMinutes>60</natLeaseMinutes>
              <natRenewalMinutes>30</natRenewalMinutes>
              <natTimeoutSeconds>10</natTimeoutSeconds>
              <urAccepted>0</urAccepted>
              <urSeen>0</urSeen>
              <urUniqueID></urUniqueID>
              <urURL>https://data.syncthing.net/newdata</urURL>
              <urPostInsecurely>false</urPostInsecurely>
              <urInitialDelayS>1800</urInitialDelayS>
              <restartOnWakeup>true</restartOnWakeup>
              <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
              <upgradeToPreReleases>false</upgradeToPreReleases>
              <keepTemporariesH>24</keepTemporariesH>
              <cacheIgnoredFiles>false</cacheIgnoredFiles>
              <progressUpdateIntervalS>5</progressUpdateIntervalS>
              <limitBandwidthInLan>false</limitBandwidthInLan>
              <minHomeDiskFree unit="%">1</minHomeDiskFree>
              <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
              <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
              <tempIndexMinBlocks>10</tempIndexMinBlocks>
              <trafficClass>0</trafficClass>
              <defaultFolderPath>~</defaultFolderPath>
              <setLowPriority>true</setLowPriority>
              <maxFolderConcurrency>0</maxFolderConcurrency>
              <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
              <crashReportingEnabled>true</crashReportingEnabled>
              <stunKeepaliveStartS>180</stunKeepaliveStartS>
              <stunKeepaliveMinS>20</stunKeepaliveMinS>
              <stunServer>default</stunServer>
              <databaseTuning>auto</databaseTuning>
              <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
          </options>

       The options element contains all other global configuration options.

       listenAddress
              The listen address for incoming sync connections.  See  Listen  Addresses  for  the
              allowed syntax.

       globalAnnounceServer
              A  URI  to a global announce (discovery) server, or the word default to include the
              default servers. Any number of globalAnnounceServer elements may  be  present.  The
              syntax for non-default entries is that of an HTTP or HTTPS URL. A number of options
              may be added  as  query  options  to  the  URL:  insecure  to  prevent  certificate
              validation  (required  for  HTTP  URLs)  and  id=<device ID> to perform certificate
              pinning. The device ID to use is printed by the discovery server on startup.

       globalAnnounceEnabled
              Whether to announce this device to the global announce (discovery) server, and also
              use it to look up other devices.

       localAnnounceEnabled
              Whether to send announcements to the local LAN, also use such announcements to find
              other devices.

       localAnnouncePort
              The port on which to listen and send IPv4 broadcast announcements to.

       localAnnounceMCAddr
              The group address and port to join and send IPv6 multicast announcements on.

       maxSendKbps
              Outgoing data rate limit, in kibibytes per second.

       maxRecvKbps
              Incoming data rate limits, in kibibytes per second.

       reconnectionIntervalS
              The number of seconds  to  wait  between  each  attempt  to  connect  to  currently
              unconnected devices.

       relaysEnabled
              When  true,  relays  will be connected to and potentially used for device to device
              connections.

       relayReconnectIntervalM
              Sets the interval, in minutes, between relay reconnect attempts.

       startBrowser
              Whether to attempt to start a browser to show the GUI when Syncthing starts.

       natEnabled
              Whether to attempt to perform a UPnP and NAT-PMP port  mapping  for  incoming  sync
              connections.

       natLeaseMinutes
              Request a lease for this many minutes; zero to request a permanent lease.

       natRenewalMinutes
              Attempt to renew the lease after this many minutes.

       natTimeoutSeconds
              When scanning for UPnP devices, wait this long for responses.

       urAccepted
              Whether  the user has accepted to submit anonymous usage data. The default, 0, mean
              the user has not made a choice, and Syncthing will ask at some point in the future.
              -1  means  no,  a  number above zero means that that version of usage reporting has
              been accepted.

       urSeen The highest usage reporting version that has already been shown in the web GUI.

       urUniqueID
              The unique ID sent together with the usage report. Generated when  usage  reporting
              is enabled.

       urURL  The URL to post usage report data to, when enabled.

       urPostInsecurely
              When  true,  the  UR  URL  can  be  http  instead  of  https, or have a self-signed
              certificate. The default is false.

       urInitialDelayS
              The time to wait from startup for the first usage report to  be  sent.  Allows  the
              system to stabilize before reporting statistics.

       restartOnWakeup
              Whether  to  perform  a restart of Syncthing when it is detected that we are waking
              from sleep mode (i.e. an unfolding laptop).

       autoUpgradeIntervalH
              Check for a newer version after this many hours. Set  to  0  to  disable  automatic
              upgrades.

       upgradeToPreReleases
              If true, automatic upgrades include release candidates (see releases).

       keepTemporariesH
              Keep  temporary  failed  transfers  for  this many hours. While the temporaries are
              kept, the data they contain need not be transferred again.

       cacheIgnoredFiles
              Whether to cache the results of ignore pattern evaluation. Performance at the price
              of  memory.  Defaults  to  false  as the cost for evaluating ignores is usually not
              significant.

       progressUpdateIntervalS
              How often in seconds the progress of ongoing downloads is  made  available  to  the
              GUI.

       limitBandwidthInLan
              Whether  to  apply  bandwidth limits to devices in the same broadcast domain as the
              local device.

       minHomeDiskFree
              The minimum required free space that should be available on the  partition  holding
              the configuration and index. Accepted units are %, kB, MB, GB and TB.

       releasesURL
              The URL from which release information is loaded, for automatic upgrades.

       alwaysLocalNet
              Network that should be considered as local given in CIDR notation.

       overwriteRemoteDeviceNamesOnConnect
              If  set,  device  names will always be overwritten with the name given by remote on
              each connection. By default, the name that the remote device announces will only be
              adopted when a name has not already been set.

       tempIndexMinBlocks
              When  exchanging index information for incomplete transfers, only take into account
              files that have at least this many blocks.

       unackedNotificationID
              ID of a notification to be displayed in the web GUI. Will be removed once the  user
              acknowledged it (e.g. an transition notice on an upgrade).

       trafficClass
              Specify a type of service (TOS)/traffic class of outgoing packets.

       stunServer
              Server  to be used for STUN, given as ip:port. The keyword default gets expanded to
              stun.callwithus.com:3478,   stun.counterpath.com:3478,   stun.counterpath.net:3478,
              stun.ekiga.net:3478,       stun.ideasip.com:3478,      stun.internetcalls.com:3478,
              stun.schlund.de:3478,        stun.sipgate.net:10000,         stun.sipgate.net:3478,
              stun.voip.aebc.com:3478,     stun.voiparound.com:3478,    stun.voipbuster.com:3478,
              stun.voipstunt.com:3478 and stun.xten.com:3478 (this is the default).

       stunKeepaliveSeconds
              Interval in seconds between contacting a  STUN  server  to  maintain  NAT  mapping.
              Default is 24 and you can set it to 0 to disable contacting STUN servers.

       defaultFolderPath
              The  UI  will  propose  to create new folders at this path. This can be disabled by
              setting this to an empty string.

       setLowPriority
              Syncthing will attempt to lower its process priority at startup.  Specifically:  on
              Linux,  set  itself  to  a  separate  process group, set the niceness level of that
              process group to nine and the I/O priority to best  effort  level  five;  on  other
              Unixes,  set  the  process  niceness  level  to  nine;  on Windows, set the process
              priority class to below normal. To disable this behavior, for  example  to  control
              process priority yourself as part of launching Syncthing, set this option to false.

   Listen Addresses
       The  following  address types are accepted in sync protocol listen addresses.  If you want
       Syncthing to listen on multiple addresses, you can either:  add  multiple  <listenAddress>
       tags in the configuration file or enter several addresses separated by commas in the GUI.

       Default listen addresses (default)
              This    is    equivalent    to    tcp://0.0.0.0:22000,   quic://0.0.0.0:22000   and
              dynamic+https://relays.syncthing.net/endpoint.

       TCP wildcard and port (tcp://0.0.0.0:22000, tcp://:22000)
              These are equivalent and will result in Syncthing listening on all interfaces, IPv4
              and IPv6, on the specified port.

       TCP IPv4 wildcard and port (tcp4://0.0.0.0:22000, tcp4://:22000)
              These  are  equivalent and will result in Syncthing listening on all interfaces via
              IPv4 only.

       TCP IPv4 address and port (tcp4://192.0.2.1:22000)
              This results in Syncthing listening on the specified address and port, IPv4 only.

       TCP IPv6 wildcard and port (tcp6://[::]:22000, tcp6://:22000)
              These are equivalent and will result in Syncthing listening on all  interfaces  via
              IPv6 only.

       TCP IPv6 address and port (tcp6://[2001:db8::42]:22000)
              This results in Syncthing listening on the specified address and port, IPv6 only.

       QUIC address and port (e.g. quic://0.0.0.0:22000)
              Syntax is the same as for TCP, also quic4 and quic6 can be used.

       Static relay address (relay://192.0.2.42:22067?id=abcd123...)
              Syncthing  will  connect  to  and listen for incoming connections via the specified
              relay address.

   Todo
       Document available URL parameters.

       Dynamic relay pool (dynamic+https://192.0.2.42/relays)
              Syncthing will fetch  the  specified  HTTPS  URL,  parse  it  for  a  JSON  payload
              describing relays, select a relay from the available ones and listen via that as if
              specified as a static relay above.

   Todo
       Document available URL parameters.

SYNCING CONFIGURATION FILES

       Syncing configuration files between devices (such that multiple devices are using the same
       configuration  files)  can  cause issues. This is easy to do accidentally if you sync your
       home folder between devices. A common  symptom  of  syncing  configuration  files  is  two
       devices ending up with the same Device ID.

       If  you  want  to use Syncthing to backup your configuration files, it is recommended that
       the files you are backing up are in  a  folder-sendonly  to  prevent  other  devices  from
       overwriting the per device configuration. The folder on the remote device(s) should not be
       used as configuration for the remote devices.

       If you’d like to sync your home folder in non-send only mode, you may add the folder  that
       stores  the  configuration  files  to  the ignore list.  If you’d also like to backup your
       configuration files, add another folder in send  only  mode  for  just  the  configuration
       folder.

AUTHOR

       The Syncthing Authors

COPYRIGHT

       2014-2019, The Syncthing Authors