chihaya: # The interval communicated with BitTorrent clients informing them how # frequently they should announce in between client events. announce_interval: 30m # 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 prometheus_addr: "0.0.0.0:6880" # The maximum number of peers returned in an announce. max_numwant: 50 # The default number of peers returned in an announce. default_numwant: 25 # The number of infohashes a single scrape can request before being truncated. max_scrape_infohashes: 50 # This block defines configuration for the tracker's HTTP interface. # If you do not wish to run this, delete this section. http: # The network interface that will bind to an HTTP server for serving # BitTorrent traffic. addr: "0.0.0.0:6881" # 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 path to the required files to listen via HTTPS. tls_cert_path: "" tls_key_path: "" # The timeout durations for HTTP requests. read_timeout: 5s write_timeout: 5s # Whether to time requests. # Disabling this should increase performance/decrease load. enable_request_timing: false # This block defines configuration for the tracker's UDP interface. # If you do not wish to run this, delete this section. udp: # The network interface that will bind to a UDP server for serving # BitTorrent traffic. addr: "0.0.0.0:6881" # 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 leeway for a timestamp on a connection ID. max_clock_skew: 10s # The key used to encrypt connection IDs. private_key: "paste a random string here that will be used to hmac connection IDs" # Whether to time requests. # Disabling this should increase performance/decrease load. enable_request_timing: false # This block defines configuration used for the storage of peer data. storage: name: memory config: # The frequency which stale peers are removed. gc_interval: 3m # The amount of time until a peer is considered stale. # To avoid churn, keep this slightly larger than `announce_interval` peer_lifetime: 31m # The number of partitions data will be divided into in order to provide a # higher degree of parallelism. shard_count: 1024 # The interval at which metrics about the number of infohashes and peers # are collected and posted to Prometheus. prometheus_reporting_interval: 1s # This block defines configuration used for middleware executed before a # response has been returned to a BitTorrent client. prehooks: #- name: jwt # config: # issuer: "https://issuer.com" # audience: "https://chihaya.issuer.com" # jwk_set_url: "https://issuer.com/keys" # jwk_set_update_interval: 5m #- name: client approval # config: # whitelist: # - "OP1011" # blacklist: # - "OP1012" #- name: interval variation # config: # modify_response_probability: 0.2 # max_increase_delta: 60 # modify_min_interval: true