A client gets the example.net/provider.json, [link to example]
The api_url and api_version tell the client where to find
* gateway information api.example.net:4430/4/config/eip.json
* x509 material: where to fetch the CA certificate and fingerprint
## eip.json
[insert link for version 4]
This contains a list of available gateways, they have an IPv4 and/or an IPv6 address.
Client picks the gateways as now: it checks it's location (the getmyip service of a provider). If that's not available, it uses a server that is closest by with its local timezone. Once it has it's preffered gateways list it will go one by one:
- try to connect over IPv6 to the gateway (if available)
- try to connect to that gateway over IPv4
- upon failur, try the next gateway, with the same strategy.