Documentation ¶
Index ¶
- Constants
- Variables
- func API() cli.Command
- func DNS() cli.Command
- func FileReceive() cli.Command
- func FileSend() cli.Command
- func Main() func(c *cli.Context) error
- func MainFlags() []cli.Flag
- func Peergate() cli.Command
- func Proxy() cli.Command
- func ServiceAdd() cli.Command
- func ServiceConnect() cli.Command
- func Start() cli.Command
Constants ¶
View Source
const Copyright string = `` /* 188-byte string literal not displayed */
Variables ¶
View Source
var CommonFlags []cli.Flag = []cli.Flag{ &cli.StringFlag{ Name: "config", Usage: "Specify a path to a edgevpn config file", EnvVar: "EDGEVPNCONFIG", }, &cli.StringFlag{ Name: "timeout", Usage: "Specify a default timeout for connection stream", EnvVar: "EDGEVPNTIMEOUT", Value: "15s", }, &cli.IntFlag{ Name: "mtu", Usage: "Specify a mtu", EnvVar: "EDGEVPNMTU", Value: 1200, }, &cli.BoolTFlag{ Name: "bootstrap-iface", Usage: "Setup interface on startup (need privileges)", EnvVar: "EDGEVPNBOOTSTRAPIFACE", }, &cli.IntFlag{ Name: "packet-mtu", Usage: "Specify a mtu", EnvVar: "EDGEVPNPACKETMTU", Value: 1420, }, &cli.IntFlag{ Name: "channel-buffer-size", Usage: "Specify a channel buffer size", EnvVar: "EDGEVPNCHANNELBUFFERSIZE", Value: 0, }, &cli.IntFlag{ Name: "discovery-interval", Usage: "DHT discovery interval time", EnvVar: "EDGEVPNDHTINTERVAL", Value: 720, }, &cli.IntFlag{ Name: "ledger-announce-interval", Usage: "Ledger announce interval time", EnvVar: "EDGEVPNLEDGERINTERVAL", Value: 10, }, &cli.StringFlag{ Name: "autorelay-discovery-interval", Usage: "Autorelay discovery interval", EnvVar: "EDGEVPNAUTORELAYDISCOVERYINTERVAL", Value: "5m", }, &cli.BoolFlag{ Name: "autorelay-static-only", Usage: "Use only defined static relays", EnvVar: "EDGEVPNAUTORELAYSTATICONLY", }, &cli.IntFlag{ Name: "ledger-syncronization-interval", Usage: "Ledger syncronization interval time", EnvVar: "EDGEVPNLEDGERSYNCINTERVAL", Value: 10, }, &cli.IntFlag{ Name: "nat-ratelimit-global", Usage: "Rate limit global requests", EnvVar: "EDGEVPNNATRATELIMITGLOBAL", Value: 10, }, &cli.IntFlag{ Name: "nat-ratelimit-peer", Usage: "Rate limit perr requests", EnvVar: "EDGEVPNNATRATELIMITPEER", Value: 10, }, &cli.IntFlag{ Name: "nat-ratelimit-interval", Usage: "Rate limit interval", EnvVar: "EDGEVPNNATRATELIMITINTERVAL", Value: 60, }, &cli.BoolTFlag{ Name: "nat-ratelimit", Usage: "Changes the default rate limiting configured in helping other peers determine their reachability status", EnvVar: "EDGEVPNNATRATELIMIT", }, &cli.IntFlag{ Name: "max-connections", Usage: "Max connections", EnvVar: "EDGEVPNMAXCONNS", Value: 100, }, &cli.StringFlag{ Name: "ledger-state", Usage: "Specify a ledger state directory", EnvVar: "EDGEVPNLEDGERSTATE", }, &cli.BoolTFlag{ Name: "mdns", Usage: "Enable mDNS for peer discovery", EnvVar: "EDGEVPNMDNS", }, &cli.BoolTFlag{ Name: "autorelay", Usage: "Automatically act as a relay if the node can accept inbound connections", EnvVar: "EDGEVPNAUTORELAY", }, &cli.BoolTFlag{ Name: "autorelay-v1", Usage: "Enable autorelay v1 circuits", EnvVar: "EDGEVPNAUTORELAYV1", }, &cli.IntFlag{ Name: "concurrency", Usage: "Number of concurrent requests to serve", Value: runtime.NumCPU(), }, &cli.BoolTFlag{ Name: "holepunch", Usage: "Automatically try holepunching when possible", EnvVar: "EDGEVPNHOLEPUNCH", }, &cli.BoolTFlag{ Name: "natservice", Usage: "Tries to determine reachability status of nodes", EnvVar: "EDGEVPNNATSERVICE", }, &cli.BoolTFlag{ Name: "natmap", Usage: "Tries to open a port in the firewall via upnp", EnvVar: "EDGEVPNNATMAP", }, &cli.BoolTFlag{ Name: "dht", Usage: "Enable DHT for peer discovery", EnvVar: "EDGEVPNDHT", }, &cli.BoolTFlag{ Name: "low-profile", Usage: "Enable low profile. Lowers connections usage", EnvVar: "EDGEVPNLOWPROFILE", }, &cli.BoolFlag{ Name: "mplex-multiplexer", Usage: "Enable mplex multiplexer.", EnvVar: "EDGEVPNMPLEX", }, &cli.BoolTFlag{ Name: "low-profile-vpn", Usage: "Enable low profile on VPN", EnvVar: "EDGEVPNLOWPROFILEVPN", }, &cli.IntFlag{ Name: "max-streams", Usage: "Number of concurrent streams", Value: 100, EnvVar: "EDGEVPNMAXSTREAMS", }, &cli.IntFlag{ Name: "aliveness-healthcheck-interval", Usage: "Healthcheck interval", EnvVar: "HEALTHCHECKINTERVAL", Value: 120, }, &cli.IntFlag{ Name: "aliveness-healthcheck-scrub-interval", Usage: "Healthcheck scrub interval", EnvVar: "HEALTHCHECKSCRUBINTERVAL", Value: 600, }, &cli.IntFlag{ Name: "aliveness-healthcheck-max-interval", Usage: "Healthcheck max interval. Threshold after a node is determined offline", EnvVar: "HEALTHCHECKMAXINTERVAL", Value: 900, }, &cli.StringFlag{ Name: "log-level", Usage: "Specify loglevel", EnvVar: "EDGEVPNLOGLEVEL", Value: "info", }, &cli.StringFlag{ Name: "libp2p-log-level", Usage: "Specify libp2p loglevel", EnvVar: "EDGEVPNLIBP2PLOGLEVEL", Value: "fatal", }, &cli.StringSliceFlag{ Name: "discovery-bootstrap-peers", Usage: "List of discovery peers to use", EnvVar: "EDGEVPNBOOTSTRAPPEERS", }, &cli.StringSliceFlag{ Name: "autorelay-static-peer", Usage: "List of autorelay static peers to use", EnvVar: "EDGEVPNAUTORELAYPEERS", }, &cli.StringSliceFlag{ Name: "blacklist", Usage: "List of peers/cidr to gate", EnvVar: "EDGEVPNBLACKLIST", }, &cli.StringFlag{ Name: "token", Usage: "Specify an edgevpn token in place of a config file", EnvVar: "EDGEVPNTOKEN", }, &cli.StringFlag{ Name: "limit-file", Usage: "Specify an limit config (json)", EnvVar: "LIMITFILE", }, &cli.StringFlag{ Name: "limit-scope", Usage: "Specify a limit scope", EnvVar: "LIMITSCOPE", Value: "system", }, &cli.BoolFlag{ Name: "limit-config", Usage: "Enable inline resource limit configuration", EnvVar: "LIMITCONFIG", }, &cli.BoolFlag{ Name: "limit-enable", Usage: "Enable resource manager. (Experimental) All options prefixed with limit requires resource manager to be enabled", EnvVar: "LIMITENABLE", }, &cli.IntFlag{ Name: "limit-config-streams", Usage: "Streams resource limit configuration", EnvVar: "LIMITCONFIGSTREAMS", Value: 200, }, &cli.IntFlag{ Name: "limit-config-streams-inbound", Usage: "Inbound streams resource limit configuration", EnvVar: "LIMITCONFIGSTREAMSINBOUND", Value: 30, }, &cli.IntFlag{ Name: "limit-config-streams-outbound", Usage: "Outbound streams resource limit configuration", EnvVar: "LIMITCONFIGSTREAMSOUTBOUND", Value: 30, }, &cli.IntFlag{ Name: "limit-config-conn", Usage: "Connections resource limit configuration", EnvVar: "LIMITCONFIGCONNS", Value: 200, }, &cli.IntFlag{ Name: "limit-config-conn-inbound", Usage: "Inbound connections resource limit configuration", EnvVar: "LIMITCONFIGCONNSINBOUND", Value: 30, }, &cli.IntFlag{ Name: "limit-config-conn-outbound", Usage: "Outbound connections resource limit configuration", EnvVar: "LIMITCONFIGCONNSOUTBOUND", Value: 30, }, &cli.IntFlag{ Name: "limit-config-fd", Usage: "Max fd resource limit configuration", EnvVar: "LIMITCONFIGFD", Value: 30, }, &cli.BoolFlag{ Name: "peerguard", Usage: "Enable peerguard. (Experimental)", EnvVar: "PEERGUARD", }, &cli.BoolFlag{ Name: "peergate", Usage: "Enable peergating. (Experimental)", EnvVar: "PEERGATE", }, &cli.BoolFlag{ Name: "peergate-autoclean", Usage: "Enable peergating autoclean. (Experimental)", EnvVar: "PEERGATE_AUTOCLEAN", }, &cli.BoolFlag{ Name: "peergate-relaxed", Usage: "Enable peergating relaxation. (Experimental)", EnvVar: "PEERGATE_RELAXED", }, &cli.StringFlag{ Name: "peergate-auth", Usage: "Peergate auth", EnvVar: "PEERGATE_AUTH", Value: "", }, &cli.IntFlag{ Name: "peergate-interval", Usage: "Peergater interval time", EnvVar: "EDGEVPNPEERGATEINTERVAL", Value: 120, }, }
Functions ¶
func FileReceive ¶ added in v0.2.1
func ServiceAdd ¶ added in v0.2.0
func ServiceConnect ¶ added in v0.2.0
Types ¶
This section is empty.
Source Files ¶
Click to show internal directories.
Click to hide internal directories.