SYNCTHING-CONFIG(5)                Syncthing               SYNCTHING-CONFIG(5)



NNAAMMEE
       syncthing-config - Syncthing Configuration

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

DDEESSCCRRIIPPTTIIOONN
       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 $$HHOOMMEE//..ccoonnffiigg//ssyynncctthhiinngg
       (Unix-like),  $$HHOOMMEE//LLiibbrraarryy//AApppplliiccaattiioonn  SSuuppppoorrtt//SSyynncctthhiinngg  (Mac),   or
       %%LLOOCCAALLAAPPPPDDAATTAA%%\\SSyynncctthhiinngg  (Windows). It can be changed at runtime using
       the ----ccoonnffiigg flag. In this directory the following files are located:

       ccoonnffiigg..xxmmll
              The configuration file, in XML format.

       cceerrtt..ppeemm,, kkeeyy..ppeemm
              The deviceâs ECDSA public and private key. These form the  basis
              for the device ID. The key must be kept private.

       hhttttppss--cceerrtt..ppeemm,, hhttttppss--kkeeyy..ppeemm
              The  certificate and key for HTTPS GUI connections. These may be
              replaced with a custom certificate for HTTPS as desired.

       ccssrrffttookkeennss..ttxxtt
              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 (usu‐
       ally 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 $$XXDDGG__DDAATTAA__HHOOMMEE is set, use $$XXDDGG__DDAATTAA__HHOOMMEE//ssyynncctthhiinngg.

       · If ~~//..llooccaall//sshhaarree//ssyynncctthhiinngg exists, use that location.

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

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

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

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

       NNOOTTEE::
          The config examples are present for illustration. Do nnoott  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="35">
              <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="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
                      <encryptionPassword></encryptionPassword>
                  </device>
                  <minDiskFree unit="%">1</minDiskFree>
                  <versioning>
                      <cleanupIntervalS>3600</cleanupIntervalS>
                      <fsPath></fsPath>
                      <fsType>basic</fsType>
                  </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>
                  <caseSensitiveFS>false</caseSensitiveFS>
                  <junctionsAsDirs>false</junctionsAsDirs>
              </folder>
              <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
                  <address>dynamic</address>
                  <paused>false</paused>
                  <autoAcceptFolders>false</autoAcceptFolders>
                  <maxSendKbps>0</maxSendKbps>
                  <maxRecvKbps>0</maxRecvKbps>
                  <ignoredFolder time="2022-01-09T19:09:52Z" id="br63e-wyhb7" label="Foo"></ignoredFolder>
                  <maxRequestKiB>0</maxRequestKiB>
                  <untrusted>false</untrusted>
                  <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>
                  <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
                  <trafficClass>0</trafficClass>
                  <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>
                  <announceLANAddresses>true</announceLANAddresses>
                  <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
                  <connectionLimitEnough>0</connectionLimitEnough>
                  <connectionLimitMax>0</connectionLimitMax>
                  <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
              </options>
              <remoteIgnoredDevice time="2022-01-09T20:02:01Z" id="5SYI2FS-LW6YAXI-JJDYETS-NDBBPIO-256MWBO-XDPXWVG-24QPUM4-PDW4UQU" name="bugger" address="192.168.0.20:22000"></remoteIgnoredDevice>
              <defaults>
                  <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
                      <filesystemType>basic</filesystemType>
                      <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
                          <encryptionPassword></encryptionPassword>
                      </device>
                      <minDiskFree unit="%">1</minDiskFree>
                      <versioning>
                          <cleanupIntervalS>3600</cleanupIntervalS>
                          <fsPath></fsPath>
                          <fsType>basic</fsType>
                      </versioning>
                      <copiers>0</copiers>
                      <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
                      <hashers>0</hashers>
                      <order>random</order>
                      <ignoreDelete>false</ignoreDelete>
                      <scanProgressIntervalS>0</scanProgressIntervalS>
                      <pullerPauseS>0</pullerPauseS>
                      <maxConflicts>10</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>
                      <caseSensitiveFS>false</caseSensitiveFS>
                      <junctionsAsDirs>false</junctionsAsDirs>
                  </folder>
                  <device id="" 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>
                      <untrusted>false</untrusted>
                      <remoteGUIPort>0</remoteGUIPort>
                  </device>
              </defaults>
          </configuration>

CCOONNFFIIGGUURRAATTIIOONN EELLEEMMEENNTT
          <configuration version="35">
              <folder></folder>
              <device></device>
              <gui></gui>
              <ldap></ldap>
              <options></options>
              <remoteIgnoredDevice></remoteIgnoredDevice>
              <defaults></defaults>
          </configuration>

       This is the root element. It has one attribute:

       vveerrssiioonn
              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 any
       number of this additional child element:

       rreemmootteeIIggnnoorreeddDDeevviiccee
              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.

FFOOLLDDEERR EELLEEMMEENNTT
          <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="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
                  <encryptionPassword></encryptionPassword>
              </device>
              <minDiskFree unit="%">1</minDiskFree>
              <versioning>
                  <cleanupIntervalS>3600</cleanupIntervalS>
                  <fsPath></fsPath>
                  <fsType>basic</fsType>
              </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>
              <caseSensitiveFS>false</caseSensitiveFS>
              <junctionsAsDirs>false</junctionsAsDirs>
          </folder>

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

       iidd ((mmaannddaattoorryy))
              The folder ID, which must be unique.

       llaabbeell  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)

       ffiilleessyysstteemmTTyyppee
              The internal file system  implementation  used  to  access  this
              folder, detailed in a separate chapter.

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

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

              sseennddrreecceeiivvee
                     The  folder is in default mode. Sending local and accept‐
                     ing remote changes.  Note that this type  was  previously
                     called âreadwriteâ which is deprecated but still accepted
                     in incoming configs.

              sseennddoonnllyy
                     The folder is in âsend onlyâ mode â it will not be  modi‐
                     fied  by  Syncthing  on this device.  Note that this type
                     was previously called âreadonlyâ which is deprecated  but
                     still accepted in incoming configs.

              rreecceeiivveeoonnllyy
                     The folder is in âreceive onlyâ mode â it will not propa‐
                     gate changes to other devices.

              rreecceeiivveeeennccrryypptteedd
                     Must be used on untrusted devices, where the data  cannot
                     be decrypted because no folder password was entered.  See
                     untrusted.

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

       ffssWWaattcchheerrEEnnaabblleedd
              If  set to ttrruuee, this detects changes to files in the folder and
              scans them.

       ffssWWaattcchheerrDDeellaayySS
              The duration during  which  changes  detected  are  accumulated,
              before   a   scan   is   scheduled   (only   takes   effect   if
              _f_s_W_a_t_c_h_e_r_E_n_a_b_l_e_d is set to ttrruuee).

       iiggnnoorreePPeerrmmss
              If ttrruuee, files originating from this folder will be announced to
              remote  devices  with the âno permission bitsâ flag.  The remote
              devices will use whatever their default  permission  setting  is
              when  creating the files.  The primary use case is for file sys‐
              tems that do not support permissions, such as FAT,  or  environ‐
              ments where changing permissions is impossible.

       aauuttooNNoorrmmaalliizzee
              Automatically  correct  UTF-8 normalization errors found in file
              names.  The mechanism and how to set it up  is  described  in  a
              separate chapter.

       The following child elements may exist:

       ddeevviiccee These  must  have  the iidd attribute and can have an iinnttrroodduucceeddBByy
              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 _s_k_i_p_I_n_t_r_o_d_u_c_t_i_o_n_R_e_m_o_v_a_l_s
              being ffaallssee on the introducer device).

              All mentioned devices are those that will be sharing the  folder
              in  question.  Each mentioned device must have a separate ddeevviiccee
              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.

              The eennccrryyppttiioonnPPaasssswwoorrdd sub-element contains the secret needed to
              decrypt this folderâs data on the remote device.  If left empty,
              the  data  is  plainly  accessible  (but  still protected by the
              transport encryption).  The mechanism and how to set  it  up  is
              described in a separate chapter.

       mmiinnDDiisskkFFrreeee
              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.  The element content is inter‐
              preted according to the given  uunniitt  attribute.   Accepted  uunniitt
              values are %% (percent of the disk / volume size), kkBB, MMBB, GGBB and
              TTBB.  Set to zero to disable.

       vveerrssiioonniinngg
              Specifies a versioning configuration.

              SSEEEE AALLSSOO::
                 versioning

       ccooppiieerrss

       hhaasshheerrss
              The number of copier and hasher routines to use, or  00  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. :)

       ppuulllleerrMMaaxxPPeennddiinnggKKiiBB
              Controls  when  we  stop  sending requests to other devices once
              weâve got this much unserved requests.  The number of pullers is
              automatically adjusted based on this desired amount of outstand‐
              ing request data.

       oorrddeerr  The order in which needed files should be pulled from the  clus‐
              ter.  It has no effect when the folder type is âsend onlyâ.  The
              possibles values are:

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

              aallpphhaabbeettiicc
                     Pull files ordered by file name alphabetically.

              ssmmaalllleessttFFiirrsstt,, llaarrggeessttFFiirrsstt
                     Pull  files  ordered  by  file size; smallest and largest
                     first respectively.

              oollddeessttFFiirrsstt,, nneewweessttFFiirrsstt
                     Pull files ordered by modification time; oldest and  new‐
                     est 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.

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

              When set to ttrruuee, this device will pretend not to  see  instruc‐
              tions  to  delete  files  from  other devices.  The mechanism is
              described in a separate chapter.

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

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

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

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

       ddiissaabblleeTTeemmppIInnddeexxeess
              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 down‐
              loaded on your own device,  essentially  making  transfers  more
              torrent  like.  When  set  to  ttrruuee,  such  information  is  not
              exchanged for this folder.

       ppaauusseedd True if this folder is (temporarily) suspended.

       wweeaakkHHaasshhTThhrreesshhoollddPPcctt
              Use weak hash if more than the given percentage of the file  has
              changed. Set to --11 to always use weak hash. Default is 2255.

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

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

       mmooddTTiimmeeWWiinnddoowwSS
              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 22  on  Android  when
              the folder is located on a FAT partition, and 00 otherwise.

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

       ddiissaabblleeFFssyynncc
              WWAARRNNIINNGG::
                 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  corrup‐
              tion.  The mechanism is described in a separate chapter.

       bblloocckkPPuullllOOrrddeerr
              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:

              ssttaannddaarrdd ((ddeeffaauulltt))
                     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. Pro‐
                     vides acceptable data distribution and  minimal  spinning
                     disk strain.

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

              iinnOOrrddeerr
                     The  blocks  of  a file are downloaded sequentially, from
                     start to finish. Spinning disk drive friendly,  but  pro‐
                     vides no improvements to data distribution.

       ccooppyyRRaannggeeMMeetthhoodd
              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  sup‐
              ports it.  The mechanism is described in a separate chapter.

       ccaasseeSSeennssiittiivveeFFSS
              Affects  performance  by  disabling  the extra safety checks for
              case insensitive filesystems.  The mechanism and how to  set  it
              up is described in a separate chapter.

       jjuunnccttiioonnssAAssDDiirrss
              NTFS directory junctions are treated as ordinary directories, if
              this is set to ttrruuee.

DDEEVVIICCEE EELLEEMMEENNTT
          <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" 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>
              <ignoredFolder time="2022-01-09T19:09:52Z" id="br63e-wyhb7" label="Foo"></ignoredFolder>
              <maxRequestKiB>0</maxRequestKiB>
              <untrusted>false</untrusted>
              <remoteGUIPort>0</remoteGUIPort>
          </device>
          <device id="2CYF2WQ-AKZO2QZ-JAKWLYD-AGHMQUM-BGXUOIS-GYILW34-HJG3DUK-LRRYQAR" name="syno local" compression="metadata" introducer="true" 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>
              <untrusted>false</untrusted>
              <remoteGUIPort>8384</remoteGUIPort>
          </device>

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

       iidd ((mmaannddaattoorryy))
              The device ID.

       nnaammee   A friendly name for the device. (optional)

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

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

              aallwwaayyss Compress all packets, including file data. This is recom‐
                     mended if the folders contents  are  mainly  compressible
                     data such as documents or text files.

              nneevveerr  Disable all compression.

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

              SSEEEE AALLSSOO::
                 introducer

       sskkiippIInnttrroodduuccttiioonnRReemmoovvaallss
              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.

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

       cceerrttNNaammee
              The  device  certificateâs common name, if it is not the default
              âsyncthingâ.

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

       aaddddrreessss ((mmaannddaattoorryy:: AAtt lleeaasstt oonnee mmuusstt bbee pprreesseenntt..))
              Contains  an address or host name to use when attempting to con‐
              nect to this device.  Entries other than ddyynnaammiicc need a protocol
              specific  prefix.  For  the  TCP  protocol  the  prefixes ttccpp::////
              (dual-stack), ttccpp44:://// (IPv4 only) or ttccpp66:://// (IPv6 only) can  be
              used.   The  prefixes  for  the  QUIC  protocol  are  analogous:
              qquuiicc::////, qquuiicc44:://// and qquuiicc66:://// Note that IP addresses  need  not
              use  IPv4 or IPv6 prefixes; these are optional. Accepted formats
              are:

              IIPPvv44 aaddddrreessss ((ttccpp::////119922..00..22..4422))
                     The default port (22000) is used.

              IIPPvv44 aaddddrreessss aanndd ppoorrtt ((ttccpp::////119922..00..22..4422::1122334455))
                     The address and port is used as given.

              IIPPvv66 aaddddrreessss ((ttccpp::////[[22000011::ddbb88::::2233::4422]]))
                     The default port (22000) is used.  The  address  must  be
                     enclosed in square brackets.

              IIPPvv66 aaddddrreessss aanndd ppoorrtt ((ttccpp::////[[22000011::ddbb88::::2233::4422]]::1122334455))
                     The  address  and port is used as given. The address must
                     be enclosed in square brackets.

              HHoosstt nnaammee ((ttccpp66::////ffiilleesseerrvveerr))
                     The host name will be used on the  default  port  (22000)
                     and connections will be attempted only via IPv6.

              HHoosstt nnaammee aanndd ppoorrtt ((ttccpp::////ffiilleesseerrvveerr::1122334455))
                     The  host name will be used on the given port and connec‐
                     tions will be attempted via both IPv4 and IPv6, depending
                     on name resolution.

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

              You can set multiple addresses _a_n_d combine it with  the  ddyynnaammiicc
              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>

       ppaauusseedd True  if synchronization with this devices is (temporarily) sus‐
              pended.

       aalllloowweeddNNeettwwoorrkk
              If given, this restricts connections to this device to only this
              network.   The  mechanism  is  described in detail in a separate
              chapter).

       aauuttooAAcccceeppttFFoollddeerrss
              If ttrruuee, folders shared from this remote  device  are  automati‐
              cally  added and synced locally under the _d_e_f_a_u_l_t _p_a_t_h.  For the
              folder name, Syncthing tries to use the label  from  the  remote
              device,  and  if the same label already exists, it then tries to
              use the folderâs ID.  If that exists as well, the folder is just
              offered  to  accept manually.  A local folder already added with
              the same ID will just be shared rather than created separately.

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

       mmaaxxRReeccvvKKbbppss
              Maximum   receive   rate   to  use  for  this  device.  Unit  is
              kibibytes/second, despite the config  name  looking  like  kilo‐
              bits/second.

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

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

       rreemmootteeGGUUIIPPoorrtt
              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.

       uunnttrruusstteedd
              This boolean value marks a particular device as untrusted, which
              disallows  ever  sharing  any  unencrypted  data with it.  Every
              folder shared with that device then needs an encryption password
              set, or must already be of the âreceive encryptedâ type locally.
              Refer to the detailed explanation under untrusted.

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

       There must be exactly one gguuii element. The GUI  configuration  is  also
       used by the /dev/rest and the /dev/events. The following attributes may
       be set on the gguuii element:

       eennaabblleedd
              If not ttrruuee, the GUI and API will not be started.

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

       ddeebbuuggggiinngg
              This enables /users/profiling and additional  endpoints  in  the
              REST API, see /rest/debug.

       The following child elements may be present:

       aaddddrreessss ((mmaannddaattoorryy:: EExxaaccttllyy oonnee eelleemmeenntt mmuusstt bbee pprreesseenntt..))
              Set the listen address.  Allowed address formats are:

              IIPPvv44 aaddddrreessss aanndd ppoorrtt ((112277..00..00..11::88338844))
                     The address and port are used as given.

              IIPPvv66 aaddddrreessss aanndd ppoorrtt (([[::::11]]::88338844))
                     The  address and port are used as given. The address must
                     be enclosed in square brackets.

              WWiillddccaarrdd aanndd ppoorrtt ((00..00..00..00::1122334455,, [[::::]]::1122334455,, ::1122334455))
                     These are equivalent and will result in Syncthing listen‐
                     ing on all interfaces via both IPv4 and IPv6.

              UUNNIIXX ssoocckkeett llooccaattiioonn ((//vvaarr//rruunn//sstt..ssoocckk))
                     If  the  address is an absolute path it is interpreted as
                     the path to a UNIX socket.

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

       uusseerr   Set to require authentication.

       ppaasssswwoorrdd
              Contains the bcrypt hash of the real password.

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

       iinnsseeccuurreeAAddmmiinnAAcccceessss
              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.

       iinnsseeccuurreeSSkkiippHHoossttcchheecckk
              When the GUI / API is bound to localhost, we  enforce  that  the
              HHoosstt  header  looks  like  localhost.  This option bypasses that
              check.

       iinnsseeccuurreeAAlllloowwFFrraammeeLLooaaddiinngg
              Allow rendering the GUI within an <<iiffrraammee>>, <<ffrraammee>> or  <<oobbjjeecctt>>
              by  not  setting  the  XX--FFrraammee--OOppttiioonnss::  SSAAMMEEOORRIIGGIINN HTTP header.
              This may be needed for serving the Syncthing GUI as  part  of  a
              website through a proxy.

       tthheemmee  The name of the theme to use.

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

              ssttaattiicc Authentication using user and password.

              llddaapp   LDAP  authentication. Requires ldap top level config sec‐
                     tion to be present.

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

       The llddaapp element contains LDAP configuration options.  The mechanism is
       described in detail under ldap.

       aaddddrreessss ((mmaannddaattoorryy))
                 LDAP server address (server:port).

       bbiinnddDDNN ((mmaannddaattoorryy))
                 BindDN  for  user authentication.  Special %%ss variable should
                 be used to pass username to LDAP.

       ttrraannssppoorrtt

              nnoonnttllss Non secure connection.

              ttllss    TLS secured connection.

              ssttaarrttttllss
                     StartTLS connection mode.

       iinnsseeccuurreeSSkkiippVVeerriiffyy
              Skip verification (ttrruuee or ffaallssee).

       sseeaarrcchhBBaasseeDDNN
              Base DN for user searches.

       sseeaarrcchhFFiilltteerr
              Search filter for user searches.

OOPPTTIIOONNSS EELLEEMMEENNTT
          <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>
              <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
              <trafficClass>0</trafficClass>
              <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>
              <announceLANAddresses>true</announceLANAddresses>
              <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
              <connectionLimitEnough>0</connectionLimitEnough>
              <connectionLimitMax>0</connectionLimitMax>
              <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
          </options>

       The ooppttiioonnss element contains all other global configuration options.

       lliisstteennAAddddrreessss
              The listen address for incoming  sync  connections.  See  _L_i_s_t_e_n
              _A_d_d_r_e_s_s_e_s for the allowed syntax.

       gglloobbaallAAnnnnoouunncceeSSeerrvveerr
              A  URI  to  a  global  announce  (discovery) server, or the word
              ddeeffaauulltt to include the default servers. Any number of  globalAn‐
              nounceServer 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: iinnsseeccuurree to prevent cer‐
              tificate validation (required for HTTP URLs) and iidd==<<ddeevviiccee  IIDD>>
              to  perform certificate pinning. The device ID to use is printed
              by the discovery server on startup.

       gglloobbaallAAnnnnoouunncceeEEnnaabblleedd
              Whether to announce this device to the global announce  (discov‐
              ery) server, and also use it to look up other devices.

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

       llooccaallAAnnnnoouunncceePPoorrtt
              The port on which to listen and send  IPv4  broadcast  announce‐
              ments to.

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

       mmaaxxSSeennddKKbbppss
              Outgoing data rate limit, in kibibytes per second.

       mmaaxxRReeccvvKKbbppss
              Incoming data rate limits, in kibibytes per second.

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

       rreellaayyssEEnnaabblleedd
              When  ttrruuee, relays will be connected to and potentially used for
              device to device connections.

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

       ssttaarrttBBrroowwsseerr
              Whether to attempt to start a browser to show the GUI when Sync‐
              thing starts.

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

       nnaattLLeeaasseeMMiinnuutteess
              Request a lease for this many minutes; zero to request a  perma‐
              nent lease.

       nnaattRReenneewwaallMMiinnuutteess
              Attempt to renew the lease after this many minutes.

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

       uurrAAcccceepptteedd
              Whether  the  user  has accepted to submit anonymous usage data.
              The default, 00, mean the user has not made a choice,  and  Sync‐
              thing  will ask at some point in the future. --11 means no, a num‐
              ber above zero means that that version of  usage  reporting  has
              been accepted.

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

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

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

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

       uurrIInniittiiaallDDeellaayySS
              The time to wait from startup for the first usage report  to  be
              sent.  Allows  the  system to stabilize before reporting statis‐
              tics.

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

       aauuttooUUppggrraaddeeIInntteerrvvaallHH
              Check  for  a  newer  version after this many hours. Set to 00 to
              disable automatic upgrades.

       uuppggrraaddeeTTooPPrreeRReelleeaasseess
              If ttrruuee, automatic  upgrades  include  release  candidates  (see
              releases).

       kkeeeeppTTeemmppoorraarriieessHH
              Keep  temporary  failed transfers for this many hours. While the
              temporaries are kept, the data they contain need not  be  trans‐
              ferred again.

       ccaacchheeIIggnnoorreeddFFiilleess
              Whether  to cache the results of ignore pattern evaluation. Per‐
              formance at the price of memory. Defaults to ffaallssee as  the  cost
              for evaluating ignores is usually not significant.

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

       lliimmiittBBaannddwwiiddtthhIInnLLaann
              Whether to apply bandwidth limits to devices in the same  broad‐
              cast domain as the local device.

       mmiinnHHoommeeDDiisskkFFrreeee
              The  minimum required free space that should be available on the
              partition holding the configuration and index.  The element con‐
              tent  is  interpreted  according  to  the  given uunniitt attribute.
              Accepted uunniitt values are %% (percent of the disk / volume  size),
              kkBB, MMBB, GGBB and TTBB.  Set to zero to disable.

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

       aallwwaayyssLLooccaallNNeett
              Network that should be considered as local given in  CIDR  nota‐
              tion.

       oovveerrwwrriitteeRReemmootteeDDeevviicceeNNaammeessOOnnCCoonnnneecctt
              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.

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

       uunnaacckkeeddNNoottiiffiiccaattiioonnIIDD
              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).

       ttrraaffffiiccCCllaassss
              Specify  a type of service (TOS)/traffic class of outgoing pack‐
              ets.

       ssttuunnSSeerrvveerr
              Server to be used  for  STUN,  given  as  ip:port.  The  keyword
              ddeeffaauulltt gets expanded to ssttuunn..ccaallllwwiitthhuuss..ccoomm::33447788, ssttuunn..ccoouunntteerr‐‐
              ppaatthh..ccoomm::33447788,  ssttuunn..ccoouunntteerrppaatthh..nneett::33447788,  ssttuunn..eekkiiggaa..nneett::33447788,
              ssttuunn..iiddeeaassiipp..ccoomm::33447788,              ssttuunn..iinntteerrnneettccaallllss..ccoomm::33447788,
              ssttuunn..sscchhlluunndd..ddee::33447788,     ssttuunn..ssiippggaattee..nneett::1100000000,      ssttuunn..ssiipp‐‐
              ggaattee..nneett::33447788,                          ssttuunn..vvooiipp..aaeebbcc..ccoomm::33447788,
              ssttuunn..vvooiippaarroouunndd..ccoomm::33447788,  ssttuunn..vvooiippbbuusstteerr..ccoomm::33447788,  ssttuunn..vvooiipp‐‐
              ssttuunntt..ccoomm::33447788 and ssttuunn..xxtteenn..ccoomm::33447788 (this is the default).

       ssttuunnKKeeeeppaalliivveeSSttaarrttSS
              Interval in seconds between contacting a STUN server to maintain
              NAT mapping. Default is 2244 and you can set it to  00  to  disable
              contacting  STUN servers.  The interval is automatically reduced
              if needed, down to a minimum of _s_t_u_n_K_e_e_p_a_l_i_v_e_M_i_n_S.

       ssttuunnKKeeeeppaalliivveeMMiinnSS
              Minimum for the _s_t_u_n_K_e_e_p_a_l_i_v_e_S_t_a_r_t_S interval, in seconds.

       sseettLLoowwPPrriioorriittyy
              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 pri‐
              ority class to below normal. To disable this behavior, for exam‐
              ple to control process priority yourself as  part  of  launching
              Syncthing, set this option to ffaallssee.

       mmaaxxFFoollddeerrCCoonnccuurrrreennccyy
              This  option  controls  how  many folders may concurrently be in
              I/O-intensive operations such as syncing or scanning.  The mech‐
              anism is described in detail in a separate chapter.

       ccrraasshhRReeppoorrttiinnggUURRLL
              Server  URL  where  automatic  crash  reports  will  be  sent if
              enabled.

       ccrraasshhRReeppoorrttiinnggEEnnaabblleedd
              Switch to opt out from the automatic  crash  reporting  feature.
              Set  ffaallssee  to keep Syncthing from sending panic logs on serious
              troubles.  Defaults  to  ttrruuee,  to  help  the  developers  trou‐
              bleshoot.

       ddaattaabbaasseeTTuunniinngg
              Controls  how Syncthing uses the backend key-value database that
              stores the index data and other persistent data it  needs.   The
              available  options  and implications are explained in a separate
              chapter.

       mmaaxxCCoonnccuurrrreennttIInnccoommiinnggRReeqquueessttKKiiBB
              This limits how many bytes we have âin the airâ in the  form  of
              response data being read and processed.

       aannnnoouunncceeLLAANNAAddddrreesssseess
              Enable (the default) or disable announcing private (RFC1918) LAN
              IP addresses to global discovery.

       sseennddFFuullllIInnddeexxOOnnUUppggrraaddee
              Controls whether all index data is resent when  an  upgrade  has
              happened,  equivalent to starting Syncthing with ----rreesseett--ddeellttaass.
              This used to be the default behavior in older versions,  but  is
              mainly useful as a troubleshooting step and causes high database
              churn. The default is now ffaallssee.

       ffeeaattuurreeFFllaagg
              Feature flags are simple strings that, when added to the config‐
              uration, may unleash unfinished or still-in-development features
              to allow early user testing.  Any supported value will be  sepa‐
              rately  announced with the feature, so that regular users do not
              enable it by accident.

       ccoonnnneeccttiioonnLLiimmiittEEnnoouugghh
              The number of connections at which we stop trying to connect  to
              more  devices,  zero meaning no limit.  Does not affect incoming
              connections.  The mechanism is described in detail in a separate
              chapter.

       ccoonnnneeccttiioonnLLiimmiittMMaaxx
              The  maximum number of connections which we will allow in total,
              zero meaning no limit.  Affects incoming  connections  and  pre‐
              vents   attempting   outgoing  connections.   The  mechanism  is
              described in detail in a separate chapter.

       iinnsseeccuurreeAAlllloowwOOllddTTLLSSVVeerrssiioonnss
              Only for compatibility with old versions of Syncthing on  remote
              devices,      as      detailed     in     /advanced/option-inse‐
              cure-allow-old-tls-versions.

DDEEFFAAUULLTTSS EELLEEMMEENNTT
          <defaults>
              <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
                  <filesystemType>basic</filesystemType>
                  <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
                      <encryptionPassword></encryptionPassword>
                  </device>
                  <minDiskFree unit="%">1</minDiskFree>
                  <versioning>
                      <cleanupIntervalS>3600</cleanupIntervalS>
                      <fsPath></fsPath>
                      <fsType>basic</fsType>
                  </versioning>
                  <copiers>0</copiers>
                  <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
                  <hashers>0</hashers>
                  <order>random</order>
                  <ignoreDelete>false</ignoreDelete>
                  <scanProgressIntervalS>0</scanProgressIntervalS>
                  <pullerPauseS>0</pullerPauseS>
                  <maxConflicts>10</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>
                  <caseSensitiveFS>false</caseSensitiveFS>
                  <junctionsAsDirs>false</junctionsAsDirs>
              </folder>
              <device id="" 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>
                  <untrusted>false</untrusted>
                  <remoteGUIPort>0</remoteGUIPort>
              </device>
          </defaults>

       The ddeeffaauullttss element describes a template for newly  added  device  and
       folder  options.  These will be used when adding a new remote device or
       folder, either through the GUI or the command line interface.  The fol‐
       lowing child elements can be present in the ddeeffaauullttss element:

       ddeevviiccee Template for a ddeevviiccee element, with the same internal structure.
              Any fields here will be used for a newly  added  remote  device.
              The iidd attribute is meaningless in this context.

       ffoollddeerr Template for a ffoollddeerr element, with the same internal structure.
              Any fields here will be used for a newly  added  shared  folder.
              The iidd attribute is meaningless in this context.

              The  UI  will propose to create new folders at the path given in
              the ppaatthh attribute (used to be ddeeffaauullttFFoollddeerrPPaatthh under ooppttiioonnss).
              It  also applies to folders automatically accepted from a remote
              device.

              Even sharing with other remote devices can be done in  the  tem‐
              plate  by including the appropriate _f_o_l_d_e_r_._d_e_v_i_c_e element under‐
              neath.

   LLiisstteenn AAddddrreesssseess
       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 <<lliisstteennAAddddrreessss>> tags in the configuration file
       or enter several addresses separated by commas in the GUI.

       DDeeffaauulltt lliisstteenn aaddddrreesssseess ((ddeeffaauulltt))
              This  is equivalent to ttccpp::////00..00..00..00::2222000000, qquuiicc::////00..00..00..00::2222000000
              and ddyynnaammiicc++hhttttppss::////rreellaayyss..ssyynncctthhiinngg..nneett//eennddppooiinntt.

       TTCCPP wwiillddccaarrdd aanndd ppoorrtt ((ttccpp::////00..00..00..00::2222000000,, ttccpp::////::2222000000))
              These are equivalent and will result in Syncthing  listening  on
              all interfaces, IPv4 and IPv6, on the specified port.

       TTCCPP IIPPvv44 wwiillddccaarrdd aanndd ppoorrtt ((ttccpp44::////00..00..00..00::2222000000,, ttccpp44::////::2222000000))
              These  are  equivalent and will result in Syncthing listening on
              all interfaces via IPv4 only.

       TTCCPP IIPPvv44 aaddddrreessss aanndd ppoorrtt ((ttccpp44::////119922..00..22..11::2222000000))
              This results in Syncthing listening on the specified address and
              port, IPv4 only.

       TTCCPP IIPPvv66 wwiillddccaarrdd aanndd ppoorrtt ((ttccpp66::////[[::::]]::2222000000,, ttccpp66::////::2222000000))
              These  are  equivalent and will result in Syncthing listening on
              all interfaces via IPv6 only.

       TTCCPP IIPPvv66 aaddddrreessss aanndd ppoorrtt ((ttccpp66::////[[22000011::ddbb88::::4422]]::2222000000))
              This results in Syncthing listening on the specified address and
              port, IPv6 only.

       QQUUIICC aaddddrreessss aanndd ppoorrtt ((ee..gg.. qquuiicc::////00..00..00..00::2222000000))
              Syntax is the same as for TCP, also qquuiicc44 and qquuiicc66 can be used.

       SSttaattiicc rreellaayy aaddddrreessss ((rreellaayy::////119922..00..22..4422::2222006677??iidd==aabbccdd112233......))
              Syncthing  will  connect  to and listen for incoming connections
              via the specified relay address.

   TTooddoo
       Document available URL parameters.

       DDyynnaammiicc rreellaayy ppooooll ((ddyynnaammiicc++hhttttppss::////119922..00..22..4422//rreellaayyss))
              Syncthing will fetch the specified HTTPS URL,  parse  it  for  a
              JSON  payload  describing relays, select a relay from the avail‐
              able ones and listen via that as if specified as a static  relay
              above.

   TTooddoo
       Document available URL parameters.

SSYYNNCCIINNGG CCOONNFFIIGGUURRAATTIIOONN FFIILLEESS
       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 com‐
       mon 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.

AAUUTTHHOORR
       The Syncthing Authors

CCOOPPYYRRIIGGHHTT
       2014-2019, The Syncthing Authors



v1.19.2                          Apr 05, 2022              SYNCTHING-CONFIG(5)
