#
# This file defines all configuration directives which can be modified for
# the isle daemon at runtime. All values specified here are the
# default values.
#
################################################################################

# A DNS service runs as part of every isle process.
dns:

  # list of IPs that the DNS service will use to resolve requests outside the
  # network's domain.
  resolvers:
    - 1.1.1.1
    - 8.8.8.8

# A VPN service runs as part of every isle process.
vpn:

  # Enable this field if the vpn will be made to be publicly accessible at a
  # particular IP or hostname. At least one host must have a publicly accessible
  # VPN process at any given moment.
  #public_addr: "host:port"

  # Firewall directives, as described here:
  # https://github.com/slackhq/nebula/blob/v1.6.1/examples/config.yml#L260
  firewall:

    conntrack:
      tcp_timeout: 12m
      udp_timeout: 3m
      default_timeout: 10m
      max_connections: 100000

    outbound:

      # Allow all outbound traffic from this node.
      - port: any
        proto: any
        host: any

    inbound:

      # If any storage allocations are declared below, the ports used will be
      # allowed here automatically.

      # Allow ICMP between hosts.
      - port: any
        proto: icmp
        host: any

      # That's it.

  tun:
    # Name of the tun network device which will route VPN traffic.
    device: isle-tun

storage:

  # Allocations defined here are used to store data in the distributed storage
  # network. If no allocations are defined then no data is replicated to this
  # node.
  #
  # Each allocation should have its own data/meta directories, separate from the
  # other allocations.
  #
  # The data directory of each allocation should be on a different drive, while
  # the meta directories can be anywhere (ideally on an SSD).
  #
  # Capacity declares how many gigabytes can be stored in each allocation, and
  # is required. It must be a multiple of 100.
  #
  # The ports are all _optional_, and will be automatically assigned if they are
  # not specified. If ports any ports are specified then all should be
  # specified, and each should be unique across all allocations.
  #
  #allocations:

    #- data_path: /foo/bar/data
    #  meta_path: /foo/bar/meta
    #  capacity: 1200
    #  #rpc_port:    3900
    #  #s3_api_port: 3901
    #  #admin_port:  3902