{
  "log": {
    "level": "error"
  },
  "dns": {
    "servers": [
      {
        "type": "local",
        "tag": "default"
      }
    ]
  },
  "inbounds": [
    {
      "type": "mtproxy",
      // https://sing-box.sagernet.org/configuration/shared/listen/
      "listen": "0.0.0.0",
      "listen_port": 3128,
      "users": [
        {
          "name": "user1",
          "secret": "7hBO-dCS4EBzenlKbdLFxyNnb29nbGUuY29t"
        }
      ],
      // concurrency is a size of the worker pool for connection management.
      "concurrency": 8192,
      // domain_fronting_port is a port we use to connect to a fronting domain.
      "domain_fronting_port": 443,
      // domain_fronting_ip is an IP address to use when connecting to the fronting
      // domain instead of resolving the hostname from the secret via DNS.
      "domain_fronting_ip": "",
      // domain_fronting_proxy_protocol is used if communication between upstream
      // endpoint and sing-box supports proxy protocol. 
      "domain_fronting_proxy_protocol": false,
      // prefer_ip defines an IP connectivity preference. Valid values are:
      // 'prefer-ipv4', 'prefer-ipv6', 'only-ipv4', 'only-ipv6'.
      "prefer_ip": "prefer-ipv4",
      // auto_update defines if it is required to auto update proxy list from
      // Telegram instead of relying on a hardcoded list.
      "auto_update": false,
      // allow_fallback_on_unknown_dc defines how proxy behaves if unknown DC was
      // requested. If this setting is set to false, then such connection will be
      // rejected. Otherwise, proxy will chose any DC.
      "allow_fallback_on_unknown_dc": false,
      // tolerate_time_skewness is a time boundary that defines a time range where
      // faketls timestamp is acceptable.
      "tolerate_time_skewness": "",
      // idle_timeout is a timeout for relay when we have to break a stream.
      "idle_timeout": "5m",
      // handshake_timeout is a timeout during which all handshake ceremonies must
      // be completed, otherwise this process will be aborted
      "handshake_timeout": "10s",
      // doppelganger_urls is a list of URLs that should be crawled by
      // sing-box to calculate parameters for statistical distribution of a
      // traffic for fronting domains.
      "doppelganger_urls": [],
      // doppelganger_per_raid defines how many time each URL from
      // doppelganger_urls list should be crawled per raid.
      "doppelganger_per_raid": 10,
      // doppelganger_each defines a time period between each raid. We recommend
      // to use hours here.
      "doppelganger_each": "6h",
      // doppelganger_drs defines if TLS Dynamic Record Sizing is active.
      "doppelganger_drs": false,
      // throttle_max_connections is the total connection limit.
      "throttle_max_connections": 0,
      // throttle_check_interval is how often the throttle recomputes per-user
      // caps.
      "throttle_check_interval": "5s"
    }
  ],
  "outbounds": [
    {
      "type": "direct",
      "tag": "direct"
    }
  ],
  "route": {
    "final": "direct",
    "default_domain_resolver": "default",
    "auto_detect_interface": true
  }
}
