From: Ian Jackson Date: Sun, 2 Apr 2017 13:10:41 +0000 (+0100) Subject: wip new config X-Git-Tag: hippotat/1.0.0~55^2~127 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=hippotat.git;a=commitdiff_plain;h=abb06ac1919fe89cc544b36b7b818af8e9cbd27d;ds=sidebyside wip new config --- diff --git a/README.config b/README.config new file mode 100644 index 0000000..4c0a43e --- /dev/null +++ b/README.config @@ -0,0 +1,119 @@ +-*- Fundamental -*- + +Sections + + [ - ] + [] + [] usually [SERVER] + [DEFAULT] + +Keys are looked up in that order. must not +be a valid IPv4 or IPv6 address. + +Exceptional settings: + + server + + Specifies . + Is looked up in [SERVER] and [DEFAULT] only. + If not specified there, it is SERVER. + + password + + Looked up in the usual way, but used by client to + determine its own s. + + The client will create a local interface, and try to communicate + with the server, for Each (,) pair for + which the config search yields a password. + + On the server: clients with no password are ignored. + +Capped settings: + + Values in are a cap (maximum) on those from the + other sections (including DEFAULT): + + max_batch_down + Size limit for response payloads (server only) [65536 bytes] + + max_queue_time + Discard downwards packets after this long (server only) [10 s] + + http_timeout + (On server) return with empty payload any http request oustanding + for this long + (On client) give up on any http request outstanding for + for this long plus http_timeout_grace + Client's effective timeout must be at least server's (checked). + [30 s] + + target_requests_outstanding + (On server) whenever number of outstanding requests for + a client exceeds this, return oldest with empty payload + (On client) try to keep this many requests outstanding. + Must match between client and server (checked). [3] + +Ordinary settings, used by client and server: + + ipif + Command to run to create and communicate with local network + interface. Passed to sh -c. Must speak SLIP on stdin/stdout. + The following additional interpolations aare substituted: + %(local)s %(peer)s %(rnet)s + on server + on client + ["userv root ipif %(local)s,%(peer)s,%(mtu)s,slip %(rnets)s"] + + addrs + Public IP (v4 or v6) address(es) of the server; + space-separated. + (On server) mandatory; used for bind. No default. + (On client) used only to construct default url. + + vnetwork + Private network range (/). Must contain all + s. Must contain and , and used + to compute their defaults. [172.24.230.192/28] + + vaddr + Address of server's virtual interface. + + vrelay + Virtual point-to-point address used for tunnel routing + (does not appear in packets). + [first host entry in other than , + so 172.24.230.194] + + port + Public port number of the server. [80] + (On server) used for bind. + (On client) used only to construct default url. + + mtu + Must match exactly. (checked) [1500 bytes] + +Ordinary settings, used by client only: + + http_timeout_grace + See http_timeout. [5 s] + + max_requests_outstanding + Client will hold off sending more requests than this to + server even if it has data to send. [6] + + max_batch_up + Size limit for request payloads. [4000 bytes] + + http_retry + If a request fails, wait this long before considering it + "finished" - to limit rate of futile requests. [5 s] + + url + Public url of server. + [http://:/] + + vroutes + Virtual addresses (in CIDR syntax) to be found at the server + end, space-separated. Routes to those will be created on + the client. [""] diff --git a/simple.cfg b/simple.cfg new file mode 100644 index 0000000..fe86d16 --- /dev/null +++ b/simple.cfg @@ -0,0 +1,6 @@ +[SERVER] +addrs = 203.0.113.46 2001:db8::4:cafe +vnetwork = 192.0.2.0/24 + +[192.0.2.6] +password = sesame