5 [<servername> - <client>]
7 [<servername>] often [SERVER]
10 Keys are looked up in that order, unless otherwise specified.
11 <client> is the client's virtual address.
12 <servername> must be a valid DNS hostname and not look like an address.
17 Specifies <servername>.
18 Is looked up in [SERVER] and [COMMON] only.
19 If not specified there, it is SERVER.
21 Used by server to select the appropriate parts of the
22 rest of the configuration. Ignored by the client.
25 Looked up in the usual way, but used by client and server to
26 determine which possible peerings to try to set up, and which to
29 We define the sets of putative clients and servers, as follows:
30 all those, for which there is any section (even an empty one)
31 whose name is based on <client> or <servername> (as applicable).
32 (LIMIT sections do not count.)
34 The server queue packets for, and accept requests from, each
35 putative client for which the config search yields a secret.
37 Each client will create a local interface, and try to communicate
38 with the server, for each possible pair (putative server,
39 putative client) for which the config search yields a secret.
42 Command to run to create and communicate with local network
43 interface. Passed to sh -c. Must speak SLIP on stdin/stdout.
44 The following additional interpolations aare substituted:
45 %(local)s %(peer)s %(rnet)s %(ifname)s
46 on server <vaddr> <vrelay> <vnetwork> <ifname_server>
47 on client <client> <vaddr> <vroutes> <ifname_client>
48 ["userv root ipif %(local)s,%(peer)s,%(mtu)s,slip %(rnets)s"]
50 On server: applies to all clients; not looked up in
51 client-specific sections.
52 On client: may be different for different servers.
56 Values in [<server> LIMIT] and [LIMIT] are a cap (maximum) on
57 those from the other sections (including COMMON).
60 Size limit for response payloads (used by server only)
61 [65536 bytes; LIMIT: 262144 bytes]
64 Discard packets after they have been queued this long waiting
66 On server: setting applies to downward packets, and is capped
68 On client: setting applies to upward packets, and is
69 not affected by LIMIT values.
73 On server: return with empty payload any http request oustanding
75 On client: give up on any http request outstanding for
76 for this long plus http_timeout_grace
77 Client's effective timeout must be at least server's (checked).
80 target_requests_outstanding
81 On server: whenever number of outstanding requests for
82 a client exceeds this, return oldest with empty payload
83 On client: try to keep this many requests outstanding.
84 Must match between client and server (checked).
87 Ordinary settings, used by both, not client-specific:
89 These are not looked up in the client-specific config sections.
92 Public IP (v4 or v6) address(es) of the server;
94 On server: mandatory; used for bind. No default.
95 On client: used only to construct default url.
98 Private network range (<prefix>/<length>). Must contain all
99 <client>s. Must contain <vaddr> and <vrelay>, and used
100 to compute their defaults. [172.24.230.192/28]
103 Address of server's virtual interface.
106 Virtual point-to-point address used for tunnel routing
107 (does not appear in packets).
108 [first host entry in <vnetwork> other than <vaddr>,
112 Public port number of the server. [80]
113 On server: used for bind.
114 On client: used only to construct default url.
117 Must match exactly. (UNCHECKED) [1500 bytes]
120 Virtual interface name on the server. [shippo%d]
122 Virtual interface name on the client. [hippo%d]
123 Any %d is interpolated (by the kernel).
125 Ordinary settings, used by server only:
128 Permissible clock skew between client and server.
129 hippotat will not work if clock skew is more than this.
130 Conversely: when moving client from one public network to
131 another, the first network can deny service to the client for
132 this period after the client leaves the first network.
135 Ordinary settings, used by client only:
138 See http_timeout. [5 s]
140 max_requests_outstanding
141 Client will hold off sending more requests than this to
142 server even if it has data to send. [6]
145 Size limit for request payloads. [4000 bytes]
148 If a request fails, wait this long before considering it
149 "finished" - to limit rate of futile requests. [5 s]
152 Public url of server.
153 [http://<first-entry-in-addrs>:<port>/]
156 Virtual addresses (in CIDR syntax) to be found at the server
157 end, space-separated. Routes to those will be created on