# ant-quic server configuration
# Generated by Ansible

[server]
bind_addr = "0.0.0.0:9000"
role = "bootstrap"
enable_coordinator = true

# Public addresses for NAT traversal
public_addrs = [
    "{{ ansible_default_ipv4.address }}:9000",
    {% if ansible_default_ipv6.address is defined %}
    "[{{ ansible_default_ipv6.address }}]:9000",
    {% endif %}
]

[nat_traversal]
enable_discovery = true
max_candidates = 100
coordination_timeout_secs = 30
enable_symmetric_nat = true
enable_relay_fallback = true

[tls]
cert_path = "/opt/ant-quic/certs/cert.pem"
key_path = "/opt/ant-quic/certs/key.pem"
# Use Raw Public Keys for P2P
enable_rpk = true

[logging]
level = "{{ ant_quic_log_level | default('info') }}"
format = "json"
output = "/var/log/ant-quic/ant-quic.json"

[metrics]
enable = true
bind_addr = "127.0.0.1:9100"
export_interval_secs = 10

[testing]
# Enable test mode features
enable_test_endpoints = true
allow_insecure_connections = false

[limits]
max_connections = 10000
max_streams_per_connection = 1000
connection_timeout_secs = 60

[performance]
# UDP buffer sizes
receive_buffer_size = 2097152  # 2MB
send_buffer_size = 1048576     # 1MB

# Connection settings
initial_rtt_ms = 333
max_idle_timeout_ms = 30000
keep_alive_interval_ms = 10000