2016-08-17 03:42:08 +02:00
|
|
|
chihaya:
|
2017-01-23 04:41:44 +01:00
|
|
|
# The interval communicated with BitTorrent clients informing them how
|
|
|
|
# frequently they should announce in between client events.
|
2017-06-25 15:36:17 +02:00
|
|
|
announce_interval: 30m
|
2017-01-23 04:41:44 +01:00
|
|
|
|
2017-12-02 22:56:35 +01:00
|
|
|
# The interval communicated with BitTorrent clients informing them of the
|
|
|
|
# minimal duration between announces.
|
|
|
|
min_announce_interval: 15m
|
|
|
|
|
2017-01-23 04:41:44 +01:00
|
|
|
# The network interface that will bind to an HTTP endpoint that can be
|
|
|
|
# scraped by an instance of the Prometheus time series database.
|
|
|
|
# For more info see: https://prometheus.io
|
2017-01-23 20:03:32 +01:00
|
|
|
prometheus_addr: "0.0.0.0:6880"
|
2017-01-23 04:41:44 +01:00
|
|
|
|
|
|
|
# This block defines configuration for the tracker's HTTP interface.
|
|
|
|
# If you do not wish to run this, delete this section.
|
2016-08-03 10:25:45 +02:00
|
|
|
http:
|
2017-01-23 04:41:44 +01:00
|
|
|
# The network interface that will bind to an HTTP server for serving
|
2018-09-09 17:22:19 +02:00
|
|
|
# BitTorrent traffic. Remove this to disable the non-TLS listener.
|
2018-02-13 10:07:01 +01:00
|
|
|
addr: "0.0.0.0:6969"
|
2017-01-23 04:41:44 +01:00
|
|
|
|
2018-09-09 17:22:19 +02:00
|
|
|
# The network interface that will bind to an HTTPS server for serving
|
|
|
|
# BitTorrent traffic. If set, tls_cert_path and tls_key_path are required.
|
|
|
|
https_addr: ""
|
|
|
|
|
2017-02-02 08:01:05 +01:00
|
|
|
# The path to the required files to listen via HTTPS.
|
|
|
|
tls_cert_path: ""
|
|
|
|
tls_key_path: ""
|
|
|
|
|
2017-01-23 04:41:44 +01:00
|
|
|
# The timeout durations for HTTP requests.
|
2016-08-03 10:25:45 +02:00
|
|
|
read_timeout: 5s
|
|
|
|
write_timeout: 5s
|
2016-08-05 07:47:04 +02:00
|
|
|
|
2018-09-09 15:01:53 +02:00
|
|
|
# When true, persistent connections will be allowed. Generally this is not
|
|
|
|
# useful for a public tracker, but helps performance in some cases (use of
|
|
|
|
# a reverse proxy, or when there are few clients issuing many requests).
|
|
|
|
enable_keepalive: false
|
|
|
|
idle_timeout: 30s
|
|
|
|
|
2017-05-12 13:12:35 +02:00
|
|
|
# Whether to time requests.
|
|
|
|
# Disabling this should increase performance/decrease load.
|
|
|
|
enable_request_timing: false
|
|
|
|
|
2020-01-14 23:39:50 +01:00
|
|
|
# An array of routes to listen on for announce requests. This is an option
|
|
|
|
# to support trackers that do not listen for /announce or need to listen
|
|
|
|
# on multiple routes.
|
|
|
|
#
|
|
|
|
# This supports named parameters and catch-all parameters as described at
|
|
|
|
# https://github.com/julienschmidt/httprouter#named-parameters
|
|
|
|
announce_routes:
|
|
|
|
- "/announce"
|
|
|
|
# - "/announce.php"
|
|
|
|
|
|
|
|
# An array of routes to listen on for scrape requests. This is an option
|
|
|
|
# to support trackers that do not listen for /scrape or need to listen
|
|
|
|
# on multiple routes.
|
|
|
|
#
|
|
|
|
# This supports named parameters and catch-all parameters as described at
|
|
|
|
# https://github.com/julienschmidt/httprouter#named-parameters
|
|
|
|
scrape_routes:
|
|
|
|
- "/scrape"
|
|
|
|
# - "/scrape.php"
|
2017-12-05 10:38:50 +01:00
|
|
|
|
2017-10-08 23:44:52 +02:00
|
|
|
# When enabled, the IP address used to connect to the tracker will not
|
|
|
|
# override the value clients advertise as their IP address.
|
|
|
|
allow_ip_spoofing: false
|
|
|
|
|
|
|
|
# The HTTP Header containing the IP address of the client.
|
|
|
|
# This is only necessary if using a reverse proxy.
|
|
|
|
real_ip_header: "x-real-ip"
|
|
|
|
|
|
|
|
# The maximum number of peers returned for an individual request.
|
|
|
|
max_numwant: 100
|
|
|
|
|
|
|
|
# The default number of peers returned for an individual request.
|
|
|
|
default_numwant: 50
|
|
|
|
|
|
|
|
# The maximum number of infohashes that can be scraped in one request.
|
|
|
|
max_scrape_infohashes: 50
|
|
|
|
|
2017-01-23 04:41:44 +01:00
|
|
|
# This block defines configuration for the tracker's UDP interface.
|
|
|
|
# If you do not wish to run this, delete this section.
|
2016-08-03 10:25:45 +02:00
|
|
|
udp:
|
2017-01-23 04:41:44 +01:00
|
|
|
# The network interface that will bind to a UDP server for serving
|
|
|
|
# BitTorrent traffic.
|
2018-02-13 10:07:01 +01:00
|
|
|
addr: "0.0.0.0:6969"
|
2017-01-23 04:41:44 +01:00
|
|
|
|
|
|
|
# The leeway for a timestamp on a connection ID.
|
2016-09-28 04:02:26 +02:00
|
|
|
max_clock_skew: 10s
|
2017-01-23 04:41:44 +01:00
|
|
|
|
|
|
|
# The key used to encrypt connection IDs.
|
2017-01-23 20:03:32 +01:00
|
|
|
private_key: "paste a random string here that will be used to hmac connection IDs"
|
2016-08-05 07:47:04 +02:00
|
|
|
|
2017-05-12 13:12:35 +02:00
|
|
|
# Whether to time requests.
|
|
|
|
# Disabling this should increase performance/decrease load.
|
|
|
|
enable_request_timing: false
|
|
|
|
|
2017-10-08 23:44:52 +02:00
|
|
|
# When enabled, the IP address used to connect to the tracker will not
|
|
|
|
# override the value clients advertise as their IP address.
|
|
|
|
allow_ip_spoofing: false
|
|
|
|
|
|
|
|
# The maximum number of peers returned for an individual request.
|
|
|
|
max_numwant: 100
|
|
|
|
|
|
|
|
# The default number of peers returned for an individual request.
|
|
|
|
default_numwant: 50
|
|
|
|
|
|
|
|
# The maximum number of infohashes that can be scraped in one request.
|
|
|
|
max_scrape_infohashes: 50
|
|
|
|
|
|
|
|
|
2017-01-23 04:41:44 +01:00
|
|
|
# This block defines configuration used for the storage of peer data.
|
2016-08-03 10:25:45 +02:00
|
|
|
storage:
|
2017-02-21 06:58:57 +01:00
|
|
|
name: memory
|
|
|
|
config:
|
|
|
|
# The frequency which stale peers are removed.
|
2019-10-12 05:52:32 +02:00
|
|
|
# This balances between
|
|
|
|
# - collecting garbage more often, potentially using more CPU time, but potentially using less memory (lower value)
|
|
|
|
# - collecting garbage less frequently, saving CPU time, but keeping old peers long, thus using more memory (higher value).
|
2017-06-25 15:36:17 +02:00
|
|
|
gc_interval: 3m
|
2017-02-21 06:58:57 +01:00
|
|
|
|
|
|
|
# The amount of time until a peer is considered stale.
|
|
|
|
# To avoid churn, keep this slightly larger than `announce_interval`
|
2017-06-25 15:36:17 +02:00
|
|
|
peer_lifetime: 31m
|
2017-02-21 06:58:57 +01:00
|
|
|
|
|
|
|
# The number of partitions data will be divided into in order to provide a
|
|
|
|
# higher degree of parallelism.
|
2017-06-29 23:10:25 +02:00
|
|
|
shard_count: 1024
|
2016-08-05 07:47:04 +02:00
|
|
|
|
2017-06-04 22:05:20 +02:00
|
|
|
# The interval at which metrics about the number of infohashes and peers
|
|
|
|
# are collected and posted to Prometheus.
|
|
|
|
prometheus_reporting_interval: 1s
|
2017-05-12 10:30:20 +02:00
|
|
|
|
2019-01-22 11:24:29 +01:00
|
|
|
# This block defines configuration used for redis storage.
|
|
|
|
# storage:
|
|
|
|
# name: redis
|
|
|
|
# config:
|
|
|
|
# # The frequency which stale peers are removed.
|
2019-10-12 05:52:32 +02:00
|
|
|
# # This balances between
|
|
|
|
# # - collecting garbage more often, potentially using more CPU time, but potentially using less memory (lower value)
|
|
|
|
# # - collecting garbage less frequently, saving CPU time, but keeping old peers long, thus using more memory (higher value).
|
2019-10-17 07:59:44 +02:00
|
|
|
# gc_interval: 3m
|
2019-01-22 11:24:29 +01:00
|
|
|
|
2019-10-17 07:59:44 +02:00
|
|
|
# # The interval at which metrics about the number of infohashes and peers
|
|
|
|
# # are collected and posted to Prometheus.
|
2019-01-22 11:24:29 +01:00
|
|
|
# prometheus_reporting_interval: 1s
|
|
|
|
|
|
|
|
# # The amount of time until a peer is considered stale.
|
|
|
|
# # To avoid churn, keep this slightly larger than `announce_interval`
|
2019-10-17 07:59:44 +02:00
|
|
|
# peer_lifetime: 31m
|
2019-01-22 11:24:29 +01:00
|
|
|
|
|
|
|
# # The address of redis storage.
|
|
|
|
# redis_broker: "redis://pwd@127.0.0.1:6379/0"
|
|
|
|
|
|
|
|
# # The timeout for reading a command reply from redis.
|
|
|
|
# redis_read_timeout: 15s
|
|
|
|
|
|
|
|
# # The timeout for writing a command to redis.
|
|
|
|
# redis_write_timeout: 15s
|
|
|
|
|
|
|
|
# # The timeout for connecting to redis server.
|
|
|
|
# redis_connect_timeout: 15s
|
|
|
|
|
2017-01-23 04:41:44 +01:00
|
|
|
# This block defines configuration used for middleware executed before a
|
|
|
|
# response has been returned to a BitTorrent client.
|
2016-08-03 10:25:45 +02:00
|
|
|
prehooks:
|
2017-02-01 01:37:26 +01:00
|
|
|
#- name: jwt
|
2017-12-23 20:54:51 +01:00
|
|
|
# options:
|
2017-02-01 01:37:26 +01:00
|
|
|
# issuer: "https://issuer.com"
|
|
|
|
# audience: "https://chihaya.issuer.com"
|
|
|
|
# jwk_set_url: "https://issuer.com/keys"
|
|
|
|
# jwk_set_update_interval: 5m
|
|
|
|
|
|
|
|
#- name: client approval
|
2017-12-23 20:54:51 +01:00
|
|
|
# options:
|
2017-02-01 01:37:26 +01:00
|
|
|
# whitelist:
|
|
|
|
# - "OP1011"
|
|
|
|
# blacklist:
|
|
|
|
# - "OP1012"
|
|
|
|
|
|
|
|
#- name: interval variation
|
2017-12-23 20:54:51 +01:00
|
|
|
# options:
|
2017-02-01 01:37:26 +01:00
|
|
|
# modify_response_probability: 0.2
|
|
|
|
# max_increase_delta: 60
|
|
|
|
# modify_min_interval: true
|
2018-09-10 18:06:21 +02:00
|
|
|
|
|
|
|
# This block defines configuration used for torrent approval, it requires to be given
|
|
|
|
# hashes for whitelist or for blacklist. Hashes are hexadecimal-encoaded.
|
|
|
|
#- name: torrent approval
|
|
|
|
# options:
|
|
|
|
# whitelist:
|
|
|
|
# - "a1b2c3d4e5a1b2c3d4e5a1b2c3d4e5a1b2c3d4e5"
|
|
|
|
# blacklist:
|
|
|
|
# - "e1d2c3b4a5e1b2c3b4a5e1d2c3b4e5e1d2c3b4a5"
|