Fiber LogoFiber Docs

Configuration Reference

Complete reference for all config.yml fields, environment variables, and defaults

Fiber Node is configured via a config.yml file. This page documents all available fields, their types, defaults, and usage.

Configuration Priority

Environment variables > Command-line arguments > config.yml > Built-in defaults

Top-Level Structure

fiber:
  # P2P network and channel configuration
rpc:
  # JSON-RPC server configuration
ckb:
  # CKB blockchain integration
cch:
  # Cross-Chain Hub configuration (optional)
services:
  - fiber
  - rpc
  - ckb

services specifies which services to run. At least one is required. Options: fiber, rpc, ckb, cch.


Fiber Section (fiber)

Network Configuration

FieldTypeDefaultDescription
listening_addrstring/ip4/0.0.0.0/tcp/0TCP listening address for P2P connections (multiaddr format)
announce_listening_addrboolfalseWhether to announce the listening address to peers
announce_private_addrboolfalseWhether to announce private addresses (only for private networks)
announced_addrsstring[][]Public addresses to announce (multiaddr format). Set this to your public IP.
announced_node_namestringNode name shown in RPC responses, TUI, and network graph
bootnode_addrsstring[][]Bootstrap node addresses for initial peer discovery (multiaddr format)
chainstringrequiredChain specification: "mainnet", "testnet", or path to custom chain spec

Channel Configuration

FieldTypeDefaultDescription
open_channel_auto_accept_min_ckb_funding_amountu6410000000000 (100 CKB)Minimum CKB funding to auto-accept channel requests
auto_accept_channel_ckb_funding_amountu649900000000 (99 CKB)CKB amount to auto-accept. Set to 0 to disable auto-accept.
to_be_accepted_channels_number_limitusize20Max pending channels from one peer
to_be_accepted_channels_bytes_limitusize50000Max storage bytes of pending channels from one peer
funding_timeout_secondsu6486400 (1 day)Timeout for funding transaction confirmation
external_funding_timeout_secondsu64300 (5 min)Timeout waiting for externally signed funding tx

TLC Configuration

FieldTypeDefaultDescription
tlc_expiry_deltau6486400000 (1 day, ms)Time window to forward a TLC
tlc_min_valueu1280Minimum TLC value (0 = no minimum)
tlc_fee_proportional_millionthsu1281000Fee for forwarding TLCs (1000 = 0.1%)

Peer Connection

FieldTypeDefaultDescription
max_inbound_peersusize16Maximum inbound connections
min_outbound_peersusize8Minimum outbound connections to maintain
enable_peer_reconnect_backoffbooltrueAuto-reconnect for peers with active channels

Gossip Network

FieldTypeDefaultDescription
sync_network_graphbooltrueWhether to sync network graph from peers
gossip_network_maintenance_interval_msu6460000 (1 min)Interval for gossip network maintenance
gossip_store_maintenance_interval_msu6420000Interval for gossip store maintenance

Watchtower

FieldTypeDefaultDescription
watchtower_check_interval_secondsu6460Interval to check watchtower. 0 = never check.
disable_built_in_watchtowerboolfalseDisable built-in watchtower actor
standalone_watchtower_rpc_urlstringURL of standalone watchtower RPC server
standalone_watchtower_tokenstringRPC token for standalone watchtower

Proxy & Tor

FieldTypeDefaultDescription
proxy.proxy_urlstringSOCKS5 proxy URL (e.g., socks5://127.0.0.1:9050)
proxy.proxy_random_authbooltrueRandom username/password for Tor stream isolation
onion.listen_on_onionboolfalseMake node reachable via .onion address
onion.onion_serverstringTor SOCKS5 proxy URL
onion.tor_controllerstring127.0.0.1:9051Tor controller address

RPC Section (rpc)

FieldTypeDefaultDescription
listening_addrstringListen address for JSON-RPC (e.g., 127.0.0.1:8227). Required if RPC service enabled.
biscuit_public_keystringPublic key for Biscuit authorization. If set, RPC requires Bearer token auth.
enabled_modulesstring[]all modulesRPC modules to enable: cch, channel, graph, payment, info, invoice, peer, watchtower
cors_enabledboolfalseEnable CORS for HTTP RPC
cors_allowed_originsstring[][]Allowed origins for CORS (empty = allow all if CORS enabled)

CKB Section (ckb)

FieldTypeDefaultDescription
rpc_urlstringhttp://127.0.0.1:8114CKB node RPC URL
udt_whitelistarray[]Supported UDT configurations (see below)

UDT Configuration

ckb:
  udt_whitelist:
    - name: "USDI"
      script:
        code_hash: "0x..."
        hash_type: type
        args: "0x..."
      auto_accept_amount: 10000000  # Optional: auto-accept amount
      cell_deps:
        - type_id:
            code_hash: "0x..."
            hash_type: type
            args: "0x..."

CCH Section (cch) — Cross-Chain Hub

FieldTypeDefaultDescription
lnd_rpc_urlstringhttps://127.0.0.1:10009LND gRPC endpoint
lnd_cert_pathstringPath to TLS cert for gRPC
lnd_macaroon_pathstringPath to Macaroon file
wrapped_btc_type_script_argsstringrequiredWrapped BTC UDT type script args
order_expiry_delta_secondsu64129600 (36h)Cross-chain order expiry time
base_fee_satsu640Base fee per order (satoshis)
fee_rate_per_million_satsu641Proportional fee per million satoshis

Environment Variables

All config fields can be overridden with environment variables using the prefix pattern:

  • FIBER_* for the fiber section (e.g., FIBER_LISTENING_ADDR)
  • RPC_* for the rpc section (e.g., RPC_LISTENING_ADDR)
  • CKB_* for the ckb section (e.g., CKB_NODE_RPC_URL)
  • CCH_* for the cch section (e.g., CCH_LND_RPC_URL)

Special variable: FIBER_SECRET_KEY_PASSWORD — Required to decrypt the CKB private key at startup.


Example: Minimal Testnet Config

fiber:
  listening_addr: "/ip4/0.0.0.0/tcp/8228"
  bootnode_addrs:
    - "/ip4/54.179.226.154/tcp/8228/p2p/Qmes1EBD4yNo9Ywkfe6eRw9tG1nVNGLDmMud1xJMsoYFKy"
  announce_listening_addr: true
  chain: testnet
  scripts:
    - name: FundingLock
      script: { code_hash: "0x6c67887fe201ee0c7853f1682c0b77c0e6214044c156c7558269390a8afa6d7c", hash_type: type, args: "0x" }
      cell_deps: []
    - name: CommitmentLock
      script: { code_hash: "0x740dee83f87c6f309824d8fd3fbdd3c8380ee6fc9acc90b1a748438afcdf81d8", hash_type: type, args: "0x" }
      cell_deps: []

rpc:
  listening_addr: "127.0.0.1:8227"

ckb:
  rpc_url: "https://testnet.ckbapp.dev/"

services:
  - fiber
  - rpc
  - ckb

Tip: Use the config files from the Fiber repository as starting points — they include the correct script hashes and bootnode addresses for each network.

Fiber AI Assistant

Ask me anything

I can answer questions about Fiber Network using our documentation.

AI answers are based on Fiber documentation