1SYNCTHING-CONFIG(5)                Syncthing               SYNCTHING-CONFIG(5)
2
3
4

NAME

6       syncthing-config - Syncthing Configuration
7

SYNOPSIS

9          $HOME/.config/syncthing
10          $HOME/Library/Application Support/Syncthing
11          %LOCALAPPDATA%\Syncthing
12

DESCRIPTION

14       New  in  version  1.5.0: Database and config can now be set separately.
15       Previously the database was always located in the same directory as the
16       config.
17
18
19       Syncthing  uses  a  single  directory to store configuration and crypto
20       keys.  Syncthing also has a database, which is often stored in this di‐
21       rectory  too.   The config location defaults to $HOME/.config/syncthing
22       (Unix-like), $HOME/Library/Application Support/Syncthing (Mac), or %LO‐
23       CALAPPDATA%\Syncthing (Windows). It can be changed at runtime using the
24       --config flag. In this directory the following files are located:
25
26       config.xml
27              The configuration file, in XML format.
28
29       cert.pem, key.pem
30              The device’s ECDSA public and private key. These form the  basis
31              for the device ID. The key must be kept private.
32
33       https-cert.pem, https-key.pem
34              The  certificate and key for HTTPS GUI connections. These may be
35              replaced with a custom certificate for HTTPS as desired.
36
37       csrftokens.txt
38              A list of recently issued CSRF tokens  (for  protection  against
39              browser cross site request forgery).
40
41       The database is stored either in the same directory as the config (usu‐
42       ally the default), but may also be located in one of the following  di‐
43       rectories (Unix-like platforms only):
44
45       • If  a  database  exists in the old default location, that location is
46         still used.
47
48       • If $XDG_DATA_HOME is set, use $XDG_DATA_HOME/syncthing.
49
50       • If ~/.local/share/syncthing exists, use that location.
51
52       • Use the old default location (same as config).
53
54       The location of the database can be changed using the --data flag.  The
55       --home  flag  sets both config and database locations at the same time.
56       The database contains the following files:
57
58       index-*.db
59              A directory holding the database with metadata and hashes of the
60              files currently on disk and available from peers.
61

CONFIG FILE FORMAT

63       The  following  shows  an  example of a default configuration file (IDs
64       will differ):
65
66       NOTE:
67          The config examples are present for illustration. Do not  copy  them
68          entirely  to use as your config. They are likely out-of-date and the
69          values may no longer correspond to the defaults.
70
71          <configuration version="35">
72              <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
73                  <filesystemType>basic</filesystemType>
74                  <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
75                      <encryptionPassword></encryptionPassword>
76                  </device>
77                  <minDiskFree unit="%">1</minDiskFree>
78                  <versioning>
79                      <cleanupIntervalS>3600</cleanupIntervalS>
80                      <fsPath></fsPath>
81                      <fsType>basic</fsType>
82                  </versioning>
83                  <copiers>0</copiers>
84                  <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
85                  <hashers>0</hashers>
86                  <order>random</order>
87                  <ignoreDelete>false</ignoreDelete>
88                  <scanProgressIntervalS>0</scanProgressIntervalS>
89                  <pullerPauseS>0</pullerPauseS>
90                  <maxConflicts>-1</maxConflicts>
91                  <disableSparseFiles>false</disableSparseFiles>
92                  <disableTempIndexes>false</disableTempIndexes>
93                  <paused>false</paused>
94                  <weakHashThresholdPct>25</weakHashThresholdPct>
95                  <markerName>.stfolder</markerName>
96                  <copyOwnershipFromParent>false</copyOwnershipFromParent>
97                  <modTimeWindowS>0</modTimeWindowS>
98                  <maxConcurrentWrites>2</maxConcurrentWrites>
99                  <disableFsync>false</disableFsync>
100                  <blockPullOrder>standard</blockPullOrder>
101                  <copyRangeMethod>standard</copyRangeMethod>
102                  <caseSensitiveFS>false</caseSensitiveFS>
103                  <junctionsAsDirs>false</junctionsAsDirs>
104              </folder>
105              <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" name="syno" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
106                  <address>dynamic</address>
107                  <paused>false</paused>
108                  <autoAcceptFolders>false</autoAcceptFolders>
109                  <maxSendKbps>0</maxSendKbps>
110                  <maxRecvKbps>0</maxRecvKbps>
111                  <ignoredFolder time="2022-01-09T19:09:52Z" id="br63e-wyhb7" label="Foo"></ignoredFolder>
112                  <maxRequestKiB>0</maxRequestKiB>
113                  <untrusted>false</untrusted>
114                  <remoteGUIPort>0</remoteGUIPort>
115              </device>
116              <gui enabled="true" tls="false" debugging="false">
117                  <address>127.0.0.1:8384</address>
118                  <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
119                  <theme>default</theme>
120              </gui>
121              <ldap></ldap>
122              <options>
123                  <listenAddress>default</listenAddress>
124                  <globalAnnounceServer>default</globalAnnounceServer>
125                  <globalAnnounceEnabled>true</globalAnnounceEnabled>
126                  <localAnnounceEnabled>true</localAnnounceEnabled>
127                  <localAnnouncePort>21027</localAnnouncePort>
128                  <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
129                  <maxSendKbps>0</maxSendKbps>
130                  <maxRecvKbps>0</maxRecvKbps>
131                  <reconnectionIntervalS>60</reconnectionIntervalS>
132                  <relaysEnabled>true</relaysEnabled>
133                  <relayReconnectIntervalM>10</relayReconnectIntervalM>
134                  <startBrowser>true</startBrowser>
135                  <natEnabled>true</natEnabled>
136                  <natLeaseMinutes>60</natLeaseMinutes>
137                  <natRenewalMinutes>30</natRenewalMinutes>
138                  <natTimeoutSeconds>10</natTimeoutSeconds>
139                  <urAccepted>0</urAccepted>
140                  <urSeen>0</urSeen>
141                  <urUniqueID></urUniqueID>
142                  <urURL>https://data.syncthing.net/newdata</urURL>
143                  <urPostInsecurely>false</urPostInsecurely>
144                  <urInitialDelayS>1800</urInitialDelayS>
145                  <restartOnWakeup>true</restartOnWakeup>
146                  <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
147                  <upgradeToPreReleases>false</upgradeToPreReleases>
148                  <keepTemporariesH>24</keepTemporariesH>
149                  <cacheIgnoredFiles>false</cacheIgnoredFiles>
150                  <progressUpdateIntervalS>5</progressUpdateIntervalS>
151                  <limitBandwidthInLan>false</limitBandwidthInLan>
152                  <minHomeDiskFree unit="%">1</minHomeDiskFree>
153                  <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
154                  <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
155                  <tempIndexMinBlocks>10</tempIndexMinBlocks>
156                  <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
157                  <trafficClass>0</trafficClass>
158                  <setLowPriority>true</setLowPriority>
159                  <maxFolderConcurrency>0</maxFolderConcurrency>
160                  <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
161                  <crashReportingEnabled>true</crashReportingEnabled>
162                  <stunKeepaliveStartS>180</stunKeepaliveStartS>
163                  <stunKeepaliveMinS>20</stunKeepaliveMinS>
164                  <stunServer>default</stunServer>
165                  <databaseTuning>auto</databaseTuning>
166                  <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
167                  <announceLANAddresses>true</announceLANAddresses>
168                  <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
169                  <connectionLimitEnough>0</connectionLimitEnough>
170                  <connectionLimitMax>0</connectionLimitMax>
171                  <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
172              </options>
173              <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>
174              <defaults>
175                  <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
176                      <filesystemType>basic</filesystemType>
177                      <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
178                          <encryptionPassword></encryptionPassword>
179                      </device>
180                      <minDiskFree unit="%">1</minDiskFree>
181                      <versioning>
182                          <cleanupIntervalS>3600</cleanupIntervalS>
183                          <fsPath></fsPath>
184                          <fsType>basic</fsType>
185                      </versioning>
186                      <copiers>0</copiers>
187                      <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
188                      <hashers>0</hashers>
189                      <order>random</order>
190                      <ignoreDelete>false</ignoreDelete>
191                      <scanProgressIntervalS>0</scanProgressIntervalS>
192                      <pullerPauseS>0</pullerPauseS>
193                      <maxConflicts>10</maxConflicts>
194                      <disableSparseFiles>false</disableSparseFiles>
195                      <disableTempIndexes>false</disableTempIndexes>
196                      <paused>false</paused>
197                      <weakHashThresholdPct>25</weakHashThresholdPct>
198                      <markerName>.stfolder</markerName>
199                      <copyOwnershipFromParent>false</copyOwnershipFromParent>
200                      <modTimeWindowS>0</modTimeWindowS>
201                      <maxConcurrentWrites>2</maxConcurrentWrites>
202                      <disableFsync>false</disableFsync>
203                      <blockPullOrder>standard</blockPullOrder>
204                      <copyRangeMethod>standard</copyRangeMethod>
205                      <caseSensitiveFS>false</caseSensitiveFS>
206                      <junctionsAsDirs>false</junctionsAsDirs>
207                  </folder>
208                  <device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
209                      <address>dynamic</address>
210                      <paused>false</paused>
211                      <autoAcceptFolders>false</autoAcceptFolders>
212                      <maxSendKbps>0</maxSendKbps>
213                      <maxRecvKbps>0</maxRecvKbps>
214                      <maxRequestKiB>0</maxRequestKiB>
215                      <untrusted>false</untrusted>
216                      <remoteGUIPort>0</remoteGUIPort>
217                  </device>
218              </defaults>
219          </configuration>
220

CONFIGURATION ELEMENT

222          <configuration version="35">
223              <folder></folder>
224              <device></device>
225              <gui></gui>
226              <ldap></ldap>
227              <options></options>
228              <remoteIgnoredDevice></remoteIgnoredDevice>
229              <defaults></defaults>
230          </configuration>
231
232       This is the root element. It has one attribute:
233
234       version
235              The config version. Increments whenever a change  is  made  that
236              requires migration from previous formats.
237
238       It  contains  the  elements described in the following sections and any
239       number of this additional child element:
240
241       remoteIgnoredDevice
242              Contains the ID of the device that should be ignored. Connection
243              attempts  from  this  device are logged to the console but never
244              displayed in the web GUI.
245

FOLDER ELEMENT

247          <folder id="default" label="Default Folder" path="/Users/jb/Sync/" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
248              <filesystemType>basic</filesystemType>
249              <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
250                  <encryptionPassword></encryptionPassword>
251              </device>
252              <minDiskFree unit="%">1</minDiskFree>
253              <versioning>
254                  <cleanupIntervalS>3600</cleanupIntervalS>
255                  <fsPath></fsPath>
256                  <fsType>basic</fsType>
257              </versioning>
258              <copiers>0</copiers>
259              <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
260              <hashers>0</hashers>
261              <order>random</order>
262              <ignoreDelete>false</ignoreDelete>
263              <scanProgressIntervalS>0</scanProgressIntervalS>
264              <pullerPauseS>0</pullerPauseS>
265              <maxConflicts>-1</maxConflicts>
266              <disableSparseFiles>false</disableSparseFiles>
267              <disableTempIndexes>false</disableTempIndexes>
268              <paused>false</paused>
269              <weakHashThresholdPct>25</weakHashThresholdPct>
270              <markerName>.stfolder</markerName>
271              <copyOwnershipFromParent>false</copyOwnershipFromParent>
272              <modTimeWindowS>0</modTimeWindowS>
273              <maxConcurrentWrites>2</maxConcurrentWrites>
274              <disableFsync>false</disableFsync>
275              <blockPullOrder>standard</blockPullOrder>
276              <copyRangeMethod>standard</copyRangeMethod>
277              <caseSensitiveFS>false</caseSensitiveFS>
278              <junctionsAsDirs>false</junctionsAsDirs>
279          </folder>
280
281       One or more folder elements must be present in the file.  Each  element
282       describes one folder. The following attributes may be set on the folder
283       element:
284
285       id (mandatory)
286              The folder ID, which must be unique.
287
288       label  The label of a folder is a human readable and descriptive  local
289              name.  May  be different on each device, empty, and/or identical
290              to other folder labels. (optional)
291
292       filesystemType
293              The internal file system  implementation  used  to  access  this
294              folder, detailed in a separate chapter.
295
296       path (mandatory)
297              The path to the directory where the folder is stored on this de‐
298              vice; not sent to other devices.
299
300       type   Controls how the folder is handled by Syncthing. Possible values
301              are:
302
303              sendreceive
304                     The  folder is in default mode. Sending local and accept‐
305                     ing remote changes.  Note that this type  was  previously
306                     called “readwrite” which is deprecated but still accepted
307                     in incoming configs.
308
309              sendonly
310                     The folder is in “send only” mode – it will not be  modi‐
311                     fied  by  Syncthing  on this device.  Note that this type
312                     was previously called “readonly” which is deprecated  but
313                     still accepted in incoming configs.
314
315              receiveonly
316                     The folder is in “receive only” mode – it will not propa‐
317                     gate changes to other devices.
318
319              receiveencrypted
320                     Must be used on untrusted devices, where the data  cannot
321                     be decrypted because no folder password was entered.  See
322                     untrusted.
323
324       rescanIntervalS
325              The rescan interval, in seconds. Can be set to 0 to disable when
326              external plugins are used to trigger rescans.
327
328       fsWatcherEnabled
329              If  set to true, this detects changes to files in the folder and
330              scans them.
331
332       fsWatcherDelayS
333              The duration during which changes detected are accumulated,  be‐
334              fore  a scan is scheduled (only takes effect if fsWatcherEnabled
335              is set to true).
336
337       ignorePerms
338              If true, files originating from this folder will be announced to
339              remote  devices  with the “no permission bits” flag.  The remote
340              devices will use whatever their default  permission  setting  is
341              when  creating the files.  The primary use case is for file sys‐
342              tems that do not support permissions, such as FAT,  or  environ‐
343              ments where changing permissions is impossible.
344
345       autoNormalize
346              Automatically  correct  UTF-8 normalization errors found in file
347              names.  The mechanism and how to set it up  is  described  in  a
348              separate chapter.
349
350       The following child elements may exist:
351
352       device These  must  have  the id attribute and can have an introducedBy
353              attribute, identifying the device that introduced  us  to  share
354              this  folder  with the given device.  If the original introducer
355              unshares this folder with this device, our  device  will  follow
356              and  unshare the folder (subject to skipIntroductionRemovals be‐
357              ing false on the introducer device).
358
359              All mentioned devices are those that will be sharing the  folder
360              in  question.  Each mentioned device must have a separate device
361              element later in the file.  It is customary that the  local  de‐
362              vice  ID  is  included in all folders.  Syncthing will currently
363              add this automatically if it is not present in the configuration
364              file.
365
366              The encryptionPassword sub-element contains the secret needed to
367              decrypt this folder’s data on the remote device.  If left empty,
368              the  data  is  plainly  accessible  (but  still protected by the
369              transport encryption).  The mechanism and how to set  it  up  is
370              described in a separate chapter.
371
372       minDiskFree
373              The  minimum required free space that should be available on the
374              disk this folder resides.  The folder will be stopped  when  the
375              value  drops below the threshold.  The element content is inter‐
376              preted according to the given  unit  attribute.   Accepted  unit
377              values are % (percent of the disk / volume size), kB, MB, GB and
378              TB.  Set to zero to disable.
379
380       versioning
381              Specifies a versioning configuration.
382
383              SEE ALSO:
384                 versioning
385
386       copiers
387
388       hashers
389              The number of copier and hasher routines to use, or  0  for  the
390              system  determined optimums. These are low-level performance op‐
391              tions for advanced users only; do not change unless requested to
392              or you’ve actually read and understood the code yourself. :)
393
394       pullerMaxPendingKiB
395              Controls  when  we  stop  sending requests to other devices once
396              we’ve got this much unserved requests.  The number of pullers is
397              automatically adjusted based on this desired amount of outstand‐
398              ing request data.
399
400       order  The order in which needed files should be pulled from the  clus‐
401              ter.  It has no effect when the folder type is “send only”.  The
402              possibles values are:
403
404              random (default)
405                     Pull files in random order. This optimizes for  balancing
406                     resources among the devices in a cluster.
407
408              alphabetic
409                     Pull files ordered by file name alphabetically.
410
411              smallestFirst, largestFirst
412                     Pull  files  ordered  by  file size; smallest and largest
413                     first respectively.
414
415              oldestFirst, newestFirst
416                     Pull files ordered by modification time; oldest and  new‐
417                     est first respectively.
418
419              Note  that the scanned files are sent in batches and the sorting
420              is applied only to the already discovered files. This means  the
421              sync  might  start  with  a 1 GB file even if there is 1 KB file
422              available on the source device until the 1 KB becomes  known  to
423              the pulling device.
424
425       ignoreDelete
426              WARNING:
427                 Enabling  this  is highly discouraged - use at your own risk.
428                 You have been warned.
429
430              When set to true, this device will pretend not to  see  instruc‐
431              tions  to delete files from other devices.  The mechanism is de‐
432              scribed in a separate chapter.
433
434       scanProgressIntervalS
435              The interval in seconds with which scan progress information  is
436              sent  to  the  GUI. Setting to 0 will cause Syncthing to use the
437              default value of two.
438
439       pullerPauseS
440              Tweak for rate limiting  the  puller  when  it  retries  pulling
441              files. Don’t change this unless you know what you’re doing.
442
443       maxConflicts
444              The  maximum  number  of  conflict copies to keep around for any
445              given file.  The default, -1, means an unlimited number. Setting
446              this to 0 disables conflict copies altogether.
447
448       disableSparseFiles
449              By default, blocks containing all zeros are not written, causing
450              files to be sparse on filesystems  that  support  this  feature.
451              When set to true, sparse files will not be created.
452
453       disableTempIndexes
454              By  default, devices exchange information about blocks available
455              in transfers that are still in progress, which allows other  de‐
456              vices  to  download  parts of files that are not yet fully down‐
457              loaded on your own device,  essentially  making  transfers  more
458              torrent  like.  When  set  to  true, such information is not ex‐
459              changed for this folder.
460
461       paused True if this folder is (temporarily) suspended.
462
463       weakHashThresholdPct
464              Use weak hash if more than the given percentage of the file  has
465              changed. Set to -1 to always use weak hash. Default is 25.
466
467       markerName
468              Name  of  a  directory  or file in the folder root to be used as
469              marker-faq. Default is .stfolder.
470
471       copyOwnershipFromParent
472              On Unix systems, tries to copy file/folder  ownership  from  the
473              parent directory (the directory it’s located in).  Requires run‐
474              ning Syncthing as a privileged user, or granting  it  additional
475              capabilities (e.g. CAP_CHOWN on Linux).
476
477       modTimeWindowS
478              Allowed  modification  timestamp difference when comparing files
479              for equivalence. To be used on file systems which have  unstable
480              modification  timestamps  that might change after being recorded
481              during the last write operation. Default is 2  on  Android  when
482              the folder is located on a FAT partition, and 0 otherwise.
483
484       maxConcurrentWrites
485              Maximum number of concurrent write operations while syncing. In‐
486              creasing this might increase or decrease disk  performance,  de‐
487              pending on the underlying storage. Default is 2.
488
489       disableFsync
490              WARNING:
491                 This is a known insecure option - use at your own risk.
492
493              Disables  committing  file  operations  to disk before recording
494              them in the database.  Disabling fsync can lead to data  corrup‐
495              tion.  The mechanism is described in a separate chapter.
496
497       blockPullOrder
498              Order  in which the blocks of a file are downloaded. This option
499              controls how quickly different parts of the file spread  between
500              the  connected  devices,  at  the  cost of causing strain on the
501              storage.
502
503              Available options:
504
505              standard (default)
506                     The blocks of a file are split into  N  equal  continuous
507                     sequences,  where  N  is the number of connected devices.
508                     Each device starts downloading its  own  sequence,  after
509                     which  it  picks  other devices sequences at random. Pro‐
510                     vides acceptable data distribution and  minimal  spinning
511                     disk strain.
512
513              random The  blocks  of  a file are downloaded in a random order.
514                     Provides great data  distribution,  but  very  taxing  on
515                     spinning disk drives.
516
517              inOrder
518                     The  blocks  of  a file are downloaded sequentially, from
519                     start to finish. Spinning disk drive friendly,  but  pro‐
520                     vides no improvements to data distribution.
521
522       copyRangeMethod
523              Provides  a  choice  of  method  for copying data between files.
524              This can be used to optimise copies on network filesystems,  im‐
525              prove   speed   of   large   copies  or  clone  the  data  using
526              copy-on-write functionality if the  underlying  filesystem  sup‐
527              ports it.  The mechanism is described in a separate chapter.
528
529       caseSensitiveFS
530              Affects  performance  by  disabling  the extra safety checks for
531              case insensitive filesystems.  The mechanism and how to  set  it
532              up is described in a separate chapter.
533
534       junctionsAsDirs
535              NTFS directory junctions are treated as ordinary directories, if
536              this is set to true.
537

DEVICE ELEMENT

539          <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">
540              <address>dynamic</address>
541              <paused>false</paused>
542              <autoAcceptFolders>false</autoAcceptFolders>
543              <maxSendKbps>0</maxSendKbps>
544              <maxRecvKbps>0</maxRecvKbps>
545              <ignoredFolder time="2022-01-09T19:09:52Z" id="br63e-wyhb7" label="Foo"></ignoredFolder>
546              <maxRequestKiB>0</maxRequestKiB>
547              <untrusted>false</untrusted>
548              <remoteGUIPort>0</remoteGUIPort>
549          </device>
550          <device id="2CYF2WQ-AKZO2QZ-JAKWLYD-AGHMQUM-BGXUOIS-GYILW34-HJG3DUK-LRRYQAR" name="syno local" compression="metadata" introducer="true" skipIntroductionRemovals="false" introducedBy="">
551              <address>tcp://192.0.2.1:22001</address>
552              <paused>true</paused>
553              <allowedNetwork>192.168.0.0/16</allowedNetwork>
554              <autoAcceptFolders>false</autoAcceptFolders>
555              <maxSendKbps>100</maxSendKbps>
556              <maxRecvKbps>100</maxRecvKbps>
557              <maxRequestKiB>65536</maxRequestKiB>
558              <untrusted>false</untrusted>
559              <remoteGUIPort>8384</remoteGUIPort>
560          </device>
561
562       One or more device elements must be present in the file.  Each  element
563       describes a device participating in the cluster. It is customary to in‐
564       clude a device element for the local device; Syncthing  will  currently
565       add  one  if  it is not present. The following attributes may be set on
566       the device element:
567
568       id (mandatory)
569              The device ID.
570
571       name   A friendly name for the device. (optional)
572
573       compression
574              Whether to use protocol compression  when  sending  messages  to
575              this device.  The possible values are:
576
577              metadata
578                     Compress  metadata  packets,  such  as index information.
579                     Metadata is usually very compression friendly so this  is
580                     a good default.
581
582              always Compress all packets, including file data. This is recom‐
583                     mended if the folders contents  are  mainly  compressible
584                     data such as documents or text files.
585
586              never  Disable all compression.
587
588       introducer
589              Set  to  true if this device should be trusted as an introducer,
590              i.e. we should copy their list of devices per folder  when  con‐
591              necting.
592
593              SEE ALSO:
594                 introducer
595
596       skipIntroductionRemovals
597              Set  to  true  if  you wish to follow only introductions and not
598              de-introductions.  For example, if this is set, we would not re‐
599              move  a  device  that we were introduced to even if the original
600              introducer is no longer listing the remote device as known.
601
602       introducedBy
603              Defines which device has introduced us to this device. Used only
604              for following de-introductions.
605
606       certName
607              The  device  certificate’s common name, if it is not the default
608              “syncthing”.
609
610       From the following child elements at least one address child  must  ex‐
611       ist.
612
613       address (mandatory: At least one must be present.)
614              Contains  an address or host name to use when attempting to con‐
615              nect to this device.  Entries other than dynamic need a protocol
616              specific  prefix.  For  the  TCP  protocol  the  prefixes tcp://
617              (dual-stack), tcp4:// (IPv4 only) or tcp6:// (IPv6 only) can  be
618              used.   The  prefixes  for  the  QUIC  protocol  are  analogous:
619              quic://, quic4:// and quic6:// Note that IP addresses  need  not
620              use  IPv4 or IPv6 prefixes; these are optional. Accepted formats
621              are:
622
623              IPv4 address (tcp://192.0.2.42)
624                     The default port (22000) is used.
625
626              IPv4 address and port (tcp://192.0.2.42:12345)
627                     The address and port is used as given.
628
629              IPv6 address (tcp://[2001:db8::23:42])
630                     The default port (22000) is used. The address must be en‐
631                     closed in square brackets.
632
633              IPv6 address and port (tcp://[2001:db8::23:42]:12345)
634                     The  address  and port is used as given. The address must
635                     be enclosed in square brackets.
636
637              Host name (tcp6://fileserver)
638                     The host name will be used on the  default  port  (22000)
639                     and connections will be attempted only via IPv6.
640
641              Host name and port (tcp://fileserver:12345)
642                     The  host name will be used on the given port and connec‐
643                     tions will be attempted via both IPv4 and IPv6, depending
644                     on name resolution.
645
646              dynamic
647                     The  word dynamic (without any prefix) means to use local
648                     and global discovery to find the device.
649
650              You can set multiple addresses and combine it with  the  dynamic
651              keyword for example:
652
653                 <device id="...">
654                     <address>tcp://192.0.2.1:22001</address>
655                     <address>quic://192.0.1.254:22000</address>
656                     <address>dynamic</address>
657                 </device>
658
659       paused True  if synchronization with this devices is (temporarily) sus‐
660              pended.
661
662       allowedNetwork
663              If given, this restricts connections to this device to only this
664              network.   The  mechanism  is  described in detail in a separate
665              chapter).
666
667       autoAcceptFolders
668              If true, folders shared from this remote  device  are  automati‐
669              cally  added and synced locally under the default path.  For the
670              folder name, Syncthing tries to use the label  from  the  remote
671              device,  and  if the same label already exists, it then tries to
672              use the folder’s ID.  If that exists as well, the folder is just
673              offered  to  accept manually.  A local folder already added with
674              the same ID will just be shared rather than created separately.
675
676       maxSendKbps
677              Maximum send rate to use for this device. Unit is kibibytes/sec‐
678              ond, despite the config name looking like kilobits/second.
679
680       maxRecvKbps
681              Maximum   receive   rate   to  use  for  this  device.  Unit  is
682              kibibytes/second, despite the config  name  looking  like  kilo‐
683              bits/second.
684
685       ignoredFolder
686              Contains  the  ID  of  the  folder  that should be ignored. This
687              folder will always be skipped when advertised from the  contain‐
688              ing  remote  device, i.e. this will be logged, but there will be
689              no dialog shown in the web GUI.
690
691       maxRequestKiB
692              Maximum amount of data to have outstanding in  requests  towards
693              this device.  Unit is kibibytes.
694
695       remoteGUIPort
696              If  set to a positive integer, the GUI will display an HTTP link
697              to the IP address which is currently used  for  synchronization.
698              Only  the  TCP  port  is exchanged for the value specified here.
699              Note that any port forwarding or firewall settings  need  to  be
700              done manually and the link will probably not work for link-local
701              IPv6 addresses because of modern browser limitations.
702
703       untrusted
704              This boolean value marks a particular device as untrusted, which
705              disallows  ever  sharing  any  unencrypted  data with it.  Every
706              folder shared with that device then needs an encryption password
707              set, or must already be of the “receive encrypted” type locally.
708              Refer to the detailed explanation under untrusted.
709

GUI ELEMENT

711          <gui enabled="true" tls="false" debugging="false">
712              <address>127.0.0.1:8384</address>
713              <apikey>k1dnz1Dd0rzTBjjFFh7CXPnrF12C49B1</apikey>
714              <theme>default</theme>
715          </gui>
716
717       There must be exactly one gui element. The GUI  configuration  is  also
718       used by the /dev/rest and the /dev/events. The following attributes may
719       be set on the gui element:
720
721       enabled
722              If not true, the GUI and API will not be started.
723
724       tls    If set to true, TLS (HTTPS) will be enforced. Non-HTTPS requests
725              will  be redirected to HTTPS. When set to false, TLS connections
726              are still possible but not required.
727
728       debugging
729              This enables /users/profiling and additional  endpoints  in  the
730              REST API, see /rest/debug.
731
732       The following child elements may be present:
733
734       address (mandatory: Exactly one element must be present.)
735              Set the listen address.  Allowed address formats are:
736
737              IPv4 address and port (127.0.0.1:8384)
738                     The address and port are used as given.
739
740              IPv6 address and port ([::1]:8384)
741                     The  address and port are used as given. The address must
742                     be enclosed in square brackets.
743
744              Wildcard and port (0.0.0.0:12345, [::]:12345, :12345)
745                     These are equivalent and will result in Syncthing listen‐
746                     ing on all interfaces via both IPv4 and IPv6.
747
748              UNIX socket location (/var/run/st.sock)
749                     If  the  address is an absolute path it is interpreted as
750                     the path to a UNIX socket.
751
752       unixSocketPermissions
753              When address is set to a UNIX socket location, set  this  to  an
754              octal value to override the default permissions of the socket.
755
756       user   Set to require authentication.
757
758       password
759              Contains the bcrypt hash of the real password.
760
761       apikey If  set,  this is the API key that enables usage of the REST in‐
762              terface.
763
764       insecureAdminAccess
765              If true, this allows access to the web GUI  from  outside  (i.e.
766              not  localhost)  without authorization. A warning will displayed
767              about this setting on startup.
768
769       insecureSkipHostcheck
770              When the GUI / API is bound to localhost, we  enforce  that  the
771              Host  header  looks  like  localhost.  This option bypasses that
772              check.
773
774       insecureAllowFrameLoading
775              Allow rendering the GUI within an <iframe>, <frame> or  <object>
776              by  not  setting  the  X-Frame-Options:  SAMEORIGIN HTTP header.
777              This may be needed for serving the Syncthing GUI as  part  of  a
778              website through a proxy.
779
780       theme  The name of the theme to use.
781
782       authMode
783              Authentication  mode  to use. If not present, the authentication
784              mode (static) is controlled by  the  presence  of  user/password
785              fields for backward compatibility.
786
787              static Authentication using user and password.
788
789              ldap   LDAP  authentication. Requires ldap top level config sec‐
790                     tion to be present.
791

LDAP ELEMENT

793          <ldap>
794              <address>localhost:389</address>
795              <bindDN>cn=%s,ou=users,dc=syncthing,dc=net</bindDN>
796              <transport>nontls</transport>
797              <insecureSkipVerify>false</insecureSkipVerify>
798          </ldap>
799
800       The ldap element contains LDAP configuration options.  The mechanism is
801       described in detail under ldap.
802
803       address (mandatory)
804                 LDAP server address (server:port).
805
806       bindDN (mandatory)
807                 BindDN  for  user authentication.  Special %s variable should
808                 be used to pass username to LDAP.
809
810       transport
811
812              nontls Non secure connection.
813
814              tls    TLS secured connection.
815
816              starttls
817                     StartTLS connection mode.
818
819       insecureSkipVerify
820              Skip verification (true or false).
821
822       searchBaseDN
823              Base DN for user searches.
824
825       searchFilter
826              Search filter for user searches.
827

OPTIONS ELEMENT

829          <options>
830              <listenAddress>default</listenAddress>
831              <globalAnnounceServer>default</globalAnnounceServer>
832              <globalAnnounceEnabled>true</globalAnnounceEnabled>
833              <localAnnounceEnabled>true</localAnnounceEnabled>
834              <localAnnouncePort>21027</localAnnouncePort>
835              <localAnnounceMCAddr>[ff12::8384]:21027</localAnnounceMCAddr>
836              <maxSendKbps>0</maxSendKbps>
837              <maxRecvKbps>0</maxRecvKbps>
838              <reconnectionIntervalS>60</reconnectionIntervalS>
839              <relaysEnabled>true</relaysEnabled>
840              <relayReconnectIntervalM>10</relayReconnectIntervalM>
841              <startBrowser>true</startBrowser>
842              <natEnabled>true</natEnabled>
843              <natLeaseMinutes>60</natLeaseMinutes>
844              <natRenewalMinutes>30</natRenewalMinutes>
845              <natTimeoutSeconds>10</natTimeoutSeconds>
846              <urAccepted>0</urAccepted>
847              <urSeen>0</urSeen>
848              <urUniqueID></urUniqueID>
849              <urURL>https://data.syncthing.net/newdata</urURL>
850              <urPostInsecurely>false</urPostInsecurely>
851              <urInitialDelayS>1800</urInitialDelayS>
852              <restartOnWakeup>true</restartOnWakeup>
853              <autoUpgradeIntervalH>12</autoUpgradeIntervalH>
854              <upgradeToPreReleases>false</upgradeToPreReleases>
855              <keepTemporariesH>24</keepTemporariesH>
856              <cacheIgnoredFiles>false</cacheIgnoredFiles>
857              <progressUpdateIntervalS>5</progressUpdateIntervalS>
858              <limitBandwidthInLan>false</limitBandwidthInLan>
859              <minHomeDiskFree unit="%">1</minHomeDiskFree>
860              <releasesURL>https://upgrades.syncthing.net/meta.json</releasesURL>
861              <overwriteRemoteDeviceNamesOnConnect>false</overwriteRemoteDeviceNamesOnConnect>
862              <tempIndexMinBlocks>10</tempIndexMinBlocks>
863              <unackedNotificationID>authenticationUserAndPassword</unackedNotificationID>
864              <trafficClass>0</trafficClass>
865              <setLowPriority>true</setLowPriority>
866              <maxFolderConcurrency>0</maxFolderConcurrency>
867              <crashReportingURL>https://crash.syncthing.net/newcrash</crashReportingURL>
868              <crashReportingEnabled>true</crashReportingEnabled>
869              <stunKeepaliveStartS>180</stunKeepaliveStartS>
870              <stunKeepaliveMinS>20</stunKeepaliveMinS>
871              <stunServer>default</stunServer>
872              <databaseTuning>auto</databaseTuning>
873              <maxConcurrentIncomingRequestKiB>0</maxConcurrentIncomingRequestKiB>
874              <announceLANAddresses>true</announceLANAddresses>
875              <sendFullIndexOnUpgrade>false</sendFullIndexOnUpgrade>
876              <connectionLimitEnough>0</connectionLimitEnough>
877              <connectionLimitMax>0</connectionLimitMax>
878              <insecureAllowOldTLSVersions>false</insecureAllowOldTLSVersions>
879          </options>
880
881       The options element contains all other global configuration options.
882
883       listenAddress
884              The listen address for incoming sync connections. See Listen Ad‐
885              dresses for the allowed syntax.
886
887       globalAnnounceServer
888              A  URI  to a global announce (discovery) server, or the word de‐
889              fault to include the default servers. Any  number  of  globalAn‐
890              nounceServer elements may be present. The syntax for non-default
891              entries is that of an HTTP or HTTPS URL. A number of options may
892              be  added  as query options to the URL: insecure to prevent cer‐
893              tificate validation (required for HTTP URLs) and id=<device  ID>
894              to  perform certificate pinning. The device ID to use is printed
895              by the discovery server on startup.
896
897       globalAnnounceEnabled
898              Whether to announce this device to the global announce  (discov‐
899              ery) server, and also use it to look up other devices.
900
901       localAnnounceEnabled
902              Whether  to  send  announcements to the local LAN, also use such
903              announcements to find other devices.
904
905       localAnnouncePort
906              The port on which to listen and send  IPv4  broadcast  announce‐
907              ments to.
908
909       localAnnounceMCAddr
910              The  group  address and port to join and send IPv6 multicast an‐
911              nouncements on.
912
913       maxSendKbps
914              Outgoing data rate limit, in kibibytes per second.
915
916       maxRecvKbps
917              Incoming data rate limits, in kibibytes per second.
918
919       reconnectionIntervalS
920              The number of seconds to wait between each attempt to connect to
921              currently unconnected devices.
922
923       relaysEnabled
924              When  true, relays will be connected to and potentially used for
925              device to device connections.
926
927       relayReconnectIntervalM
928              Sets the interval, in minutes, between relay reconnect attempts.
929
930       startBrowser
931              Whether to attempt to start a browser to show the GUI when Sync‐
932              thing starts.
933
934       natEnabled
935              Whether  to  attempt  to perform a UPnP and NAT-PMP port mapping
936              for incoming sync connections.
937
938       natLeaseMinutes
939              Request a lease for this many minutes; zero to request a  perma‐
940              nent lease.
941
942       natRenewalMinutes
943              Attempt to renew the lease after this many minutes.
944
945       natTimeoutSeconds
946              When scanning for UPnP devices, wait this long for responses.
947
948       urAccepted
949              Whether  the  user  has accepted to submit anonymous usage data.
950              The default, 0, mean the user has not made a choice,  and  Sync‐
951              thing  will ask at some point in the future. -1 means no, a num‐
952              ber above zero means that that version of  usage  reporting  has
953              been accepted.
954
955       urSeen The  highest usage reporting version that has already been shown
956              in the web GUI.
957
958       urUniqueID
959              The unique ID sent together with  the  usage  report.  Generated
960              when usage reporting is enabled.
961
962       urURL  The URL to post usage report data to, when enabled.
963
964       urPostInsecurely
965              When  true,  the  UR URL can be http instead of https, or have a
966              self-signed certificate. The default is false.
967
968       urInitialDelayS
969              The time to wait from startup for the first usage report  to  be
970              sent.  Allows  the  system to stabilize before reporting statis‐
971              tics.
972
973       restartOnWakeup
974              Whether to perform a restart of Syncthing when  it  is  detected
975              that we are waking from sleep mode (i.e. an unfolding laptop).
976
977       autoUpgradeIntervalH
978              Check  for  a  newer  version after this many hours. Set to 0 to
979              disable automatic upgrades.
980
981       upgradeToPreReleases
982              If true, automatic upgrades include release candidates (see  re‐
983              leases).
984
985       keepTemporariesH
986              Keep  temporary  failed transfers for this many hours. While the
987              temporaries are kept, the data they contain need not  be  trans‐
988              ferred again.
989
990       cacheIgnoredFiles
991              Whether  to cache the results of ignore pattern evaluation. Per‐
992              formance at the price of memory. Defaults to false as  the  cost
993              for evaluating ignores is usually not significant.
994
995       progressUpdateIntervalS
996              How  often  in seconds the progress of ongoing downloads is made
997              available to the GUI.
998
999       limitBandwidthInLan
1000              Whether to apply bandwidth limits to devices in the same  broad‐
1001              cast domain as the local device.
1002
1003       minHomeDiskFree
1004              The  minimum required free space that should be available on the
1005              partition holding the configuration and index.  The element con‐
1006              tent  is interpreted according to the given unit attribute.  Ac‐
1007              cepted unit values are % (percent of the disk  /  volume  size),
1008              kB, MB, GB and TB.  Set to zero to disable.
1009
1010       releasesURL
1011              The  URL from which release information is loaded, for automatic
1012              upgrades.
1013
1014       alwaysLocalNet
1015              Network that should be considered as local given in  CIDR  nota‐
1016              tion.
1017
1018       overwriteRemoteDeviceNamesOnConnect
1019              If  set,  device  names will always be overwritten with the name
1020              given by remote on each connection. By default,  the  name  that
1021              the remote device announces will only be adopted when a name has
1022              not already been set.
1023
1024       tempIndexMinBlocks
1025              When exchanging index information for incomplete transfers, only
1026              take into account files that have at least this many blocks.
1027
1028       unackedNotificationID
1029              ID of a notification to be displayed in the web GUI. Will be re‐
1030              moved once the user acknowledged it (e.g. an  transition  notice
1031              on an upgrade).
1032
1033       trafficClass
1034              Specify  a type of service (TOS)/traffic class of outgoing pack‐
1035              ets.
1036
1037       stunServer
1038              Server to be used for STUN, given as ip:port.  The  keyword  de‐
1039              fault  gets  expanded to stun.callwithus.com:3478, stun.counter‐
1040              path.com:3478,  stun.counterpath.net:3478,  stun.ekiga.net:3478,
1041              stun.ideasip.com:3478,              stun.internetcalls.com:3478,
1042              stun.schlund.de:3478,     stun.sipgate.net:10000,      stun.sip‐
1043              gate.net:3478,                          stun.voip.aebc.com:3478,
1044              stun.voiparound.com:3478,  stun.voipbuster.com:3478,  stun.voip‐
1045              stunt.com:3478 and stun.xten.com:3478 (this is the default).
1046
1047       stunKeepaliveStartS
1048              Interval in seconds between contacting a STUN server to maintain
1049              NAT mapping. Default is 24 and you can set it to  0  to  disable
1050              contacting  STUN servers.  The interval is automatically reduced
1051              if needed, down to a minimum of stunKeepaliveMinS.
1052
1053       stunKeepaliveMinS
1054              Minimum for the stunKeepaliveStartS interval, in seconds.
1055
1056       setLowPriority
1057              Syncthing will attempt to lower its process priority at startup.
1058              Specifically:  on Linux, set itself to a separate process group,
1059              set the niceness level of that process group to nine and the I/O
1060              priority  to  best  effort  level five; on other Unixes, set the
1061              process niceness level to nine; on Windows, set the process pri‐
1062              ority class to below normal. To disable this behavior, for exam‐
1063              ple to control process priority yourself as  part  of  launching
1064              Syncthing, set this option to false.
1065
1066       maxFolderConcurrency
1067              This  option  controls  how  many folders may concurrently be in
1068              I/O-intensive operations such as syncing or scanning.  The mech‐
1069              anism is described in detail in a separate chapter.
1070
1071       crashReportingURL
1072              Server  URL  where  automatic  crash reports will be sent if en‐
1073              abled.
1074
1075       crashReportingEnabled
1076              Switch to opt out from the automatic  crash  reporting  feature.
1077              Set  false  to keep Syncthing from sending panic logs on serious
1078              troubles.  Defaults  to  true,  to  help  the  developers  trou‐
1079              bleshoot.
1080
1081       databaseTuning
1082              Controls  how Syncthing uses the backend key-value database that
1083              stores the index data and other persistent data it  needs.   The
1084              available  options  and implications are explained in a separate
1085              chapter.
1086
1087       maxConcurrentIncomingRequestKiB
1088              This limits how many bytes we have “in the air” in the  form  of
1089              response data being read and processed.
1090
1091       announceLANAddresses
1092              Enable (the default) or disable announcing private (RFC1918) LAN
1093              IP addresses to global discovery.
1094
1095       sendFullIndexOnUpgrade
1096              Controls whether all index data is resent when  an  upgrade  has
1097              happened,  equivalent to starting Syncthing with --reset-deltas.
1098              This used to be the default behavior in older versions,  but  is
1099              mainly useful as a troubleshooting step and causes high database
1100              churn. The default is now false.
1101
1102       featureFlag
1103              Feature flags are simple strings that, when added to the config‐
1104              uration, may unleash unfinished or still-in-development features
1105              to allow early user testing.  Any supported value will be  sepa‐
1106              rately  announced with the feature, so that regular users do not
1107              enable it by accident.
1108
1109       connectionLimitEnough
1110              The number of connections at which we stop trying to connect  to
1111              more  devices,  zero meaning no limit.  Does not affect incoming
1112              connections.  The mechanism is described in detail in a separate
1113              chapter.
1114
1115       connectionLimitMax
1116              The  maximum number of connections which we will allow in total,
1117              zero meaning no limit.  Affects incoming  connections  and  pre‐
1118              vents  attempting  outgoing  connections.   The mechanism is de‐
1119              scribed in detail in a separate chapter.
1120
1121       insecureAllowOldTLSVersions
1122              Only for compatibility with old versions of Syncthing on  remote
1123              devices,    as    detailed    in   /advanced/option-insecure-al‐
1124              low-old-tls-versions.
1125

DEFAULTS ELEMENT

1127          <defaults>
1128              <folder id="" label="" path="~" type="sendreceive" rescanIntervalS="3600" fsWatcherEnabled="true" fsWatcherDelayS="10" ignorePerms="false" autoNormalize="true">
1129                  <filesystemType>basic</filesystemType>
1130                  <device id="S7UKX27-GI7ZTXS-GC6RKUA-7AJGZ44-C6NAYEB-HSKTJQK-KJHU2NO-CWV7EQW" introducedBy="">
1131                      <encryptionPassword></encryptionPassword>
1132                  </device>
1133                  <minDiskFree unit="%">1</minDiskFree>
1134                  <versioning>
1135                      <cleanupIntervalS>3600</cleanupIntervalS>
1136                      <fsPath></fsPath>
1137                      <fsType>basic</fsType>
1138                  </versioning>
1139                  <copiers>0</copiers>
1140                  <pullerMaxPendingKiB>0</pullerMaxPendingKiB>
1141                  <hashers>0</hashers>
1142                  <order>random</order>
1143                  <ignoreDelete>false</ignoreDelete>
1144                  <scanProgressIntervalS>0</scanProgressIntervalS>
1145                  <pullerPauseS>0</pullerPauseS>
1146                  <maxConflicts>10</maxConflicts>
1147                  <disableSparseFiles>false</disableSparseFiles>
1148                  <disableTempIndexes>false</disableTempIndexes>
1149                  <paused>false</paused>
1150                  <weakHashThresholdPct>25</weakHashThresholdPct>
1151                  <markerName>.stfolder</markerName>
1152                  <copyOwnershipFromParent>false</copyOwnershipFromParent>
1153                  <modTimeWindowS>0</modTimeWindowS>
1154                  <maxConcurrentWrites>2</maxConcurrentWrites>
1155                  <disableFsync>false</disableFsync>
1156                  <blockPullOrder>standard</blockPullOrder>
1157                  <copyRangeMethod>standard</copyRangeMethod>
1158                  <caseSensitiveFS>false</caseSensitiveFS>
1159                  <junctionsAsDirs>false</junctionsAsDirs>
1160              </folder>
1161              <device id="" compression="metadata" introducer="false" skipIntroductionRemovals="false" introducedBy="">
1162                  <address>dynamic</address>
1163                  <paused>false</paused>
1164                  <autoAcceptFolders>false</autoAcceptFolders>
1165                  <maxSendKbps>0</maxSendKbps>
1166                  <maxRecvKbps>0</maxRecvKbps>
1167                  <maxRequestKiB>0</maxRequestKiB>
1168                  <untrusted>false</untrusted>
1169                  <remoteGUIPort>0</remoteGUIPort>
1170              </device>
1171              <ignores>
1172                  <line>!foo2</line>
1173                  <line>// comment</line>
1174                  <line>(?d).DS_Store</line>
1175                  <line>*2</line>
1176                  <line>qu*</line>
1177              </ignores>
1178          </defaults>
1179
1180       The defaults element describes a template for newly  added  device  and
1181       folder  options.  These will be used when adding a new remote device or
1182       folder, either through the GUI or the command line interface.  The fol‐
1183       lowing child elements can be present in the defaults element:
1184
1185       device Template for a device element, with the same internal structure.
1186              Any fields here will be used for a newly  added  remote  device.
1187              The id attribute is meaningless in this context.
1188
1189       folder Template for a folder element, with the same internal structure.
1190              Any fields here will be used for a newly  added  shared  folder.
1191              The id attribute is meaningless in this context.
1192
1193              The  UI  will propose to create new folders at the path given in
1194              the path attribute (used to be defaultFolderPath under options).
1195              It  also applies to folders automatically accepted from a remote
1196              device.
1197
1198              Even sharing with other remote devices can be done in  the  tem‐
1199              plate  by including the appropriate folder.device element under‐
1200              neath.
1201
1202       ignores
1203              New in version 1.19.0.
1204
1205
1206              Template for the ignore patterns applied to new folders.   These
1207              are  copied to the .stignore file when a folder is automatically
1208              accepted from a remote device.  The GUI uses  them  to  pre-fill
1209              the  respective field when adding a new folder as well.  In XML,
1210              each pattern line is represented as by a <line> element.
1211
1212   Listen Addresses
1213       The following address types are accepted in sync  protocol  listen  ad‐
1214       dresses.   If  you  want Syncthing to listen on multiple addresses, you
1215       can either: add multiple <listenAddress> tags in the configuration file
1216       or enter several addresses separated by commas in the GUI.
1217
1218       Default listen addresses (default)
1219              This  is equivalent to tcp://0.0.0.0:22000, quic://0.0.0.0:22000
1220              and dynamic+https://relays.syncthing.net/endpoint.
1221
1222       TCP wildcard and port (tcp://0.0.0.0:22000, tcp://:22000)
1223              These are equivalent and will result in Syncthing  listening  on
1224              all interfaces, IPv4 and IPv6, on the specified port.
1225
1226       TCP IPv4 wildcard and port (tcp4://0.0.0.0:22000, tcp4://:22000)
1227              These  are  equivalent and will result in Syncthing listening on
1228              all interfaces via IPv4 only.
1229
1230       TCP IPv4 address and port (tcp4://192.0.2.1:22000)
1231              This results in Syncthing listening on the specified address and
1232              port, IPv4 only.
1233
1234       TCP IPv6 wildcard and port (tcp6://[::]:22000, tcp6://:22000)
1235              These  are  equivalent and will result in Syncthing listening on
1236              all interfaces via IPv6 only.
1237
1238       TCP IPv6 address and port (tcp6://[2001:db8::42]:22000)
1239              This results in Syncthing listening on the specified address and
1240              port, IPv6 only.
1241
1242       QUIC address and port (e.g. quic://0.0.0.0:22000)
1243              Syntax is the same as for TCP, also quic4 and quic6 can be used.
1244
1245       Static relay address (relay://192.0.2.42:22067?id=abcd123...)
1246              Syncthing  will  connect  to and listen for incoming connections
1247              via the specified relay address.
1248
1249   Todo
1250       Document available URL parameters.
1251
1252       Dynamic relay pool (dynamic+https://192.0.2.42/relays)
1253              Syncthing will fetch the specified HTTPS URL,  parse  it  for  a
1254              JSON  payload  describing relays, select a relay from the avail‐
1255              able ones and listen via that as if specified as a static  relay
1256              above.
1257
1258   Todo
1259       Document available URL parameters.
1260

SYNCING CONFIGURATION FILES

1262       Syncing configuration files between devices (such that multiple devices
1263       are using the same configuration files) can cause issues. This is  easy
1264       to do accidentally if you sync your home folder between devices. A com‐
1265       mon symptom of syncing configuration files is  two  devices  ending  up
1266       with the same Device ID.
1267
1268       If  you want to use Syncthing to backup your configuration files, it is
1269       recommended that the files you are backing up are in a  folder-sendonly
1270       to prevent other devices from overwriting the per device configuration.
1271       The folder on the remote device(s) should not be used as  configuration
1272       for the remote devices.
1273
1274       If  you’d  like to sync your home folder in non-send only mode, you may
1275       add the folder that stores the configuration files to the ignore  list.
1276       If  you’d  also  like  to  backup your configuration files, add another
1277       folder in send only mode for just the configuration folder.
1278

AUTHOR

1280       The Syncthing Authors
1281
1283       2014-2019, The Syncthing Authors
1284
1285
1286
1287
1288v1.20.0                          May 08, 2022              SYNCTHING-CONFIG(5)
Impressum