Verwenden Sie Jami auf einem LAN
Due the distributed nature of Jami, it is possible to use it over a local area network (LAN), without any Internet connection. This allows you to continue to communicate with other people in the company/building/country without global Internet access. However, some services are external so in this document we will explain some tweaks you may need.
Bootstrapping
Was ist ein Bootstrap?
Jami uses the distributed hash table (DHT) technology to find other users. So, all the users you want to contact must be reachable on the same DHT network (e.g. if the Internet is split between two buildings, users in the first buildings will not be able to reach the second building). To enter a DHT network, one must be able to reach at least one other node. This node is called bootstrap, it is the entry point of the network. By default, bootstrap.jami.net is configured, but any node in the public DHT can be a bootstrap (it is a classic node, generally always online).
Wenn das Internet abgeschaltet ist, braucht man einen anderen Bootstrap, um ein Netzwerk zu erstellen.
Bootstrap-Einstellungen
In den fortgeschrittenen Konto-Einstellungen kann der Benutzer mehrere Bootstraps konfigurieren. bootstrap.jami.net ist in der Regel die Standardfunktion, bootstrap.jami.net;your.bootstrap.tld wird gültig. Der IP:port eines anderen DHT-Knoten kann als Bootstrap angegeben werden.
Running a bootstrap
It’s possible to run a DHT node to serve as a bootstrap for Jami clients. In this case, the bootstrap field in the settings must be replaced by the new bootstrap. The documentation to run a DHT node is located in OpenDHT’s wiki: https://github.com/savoirfairelinux/opendht/wiki/Running-a-node-with-dhtnode.
Einheimische Peer-Entdeckung
Eine andere Möglichkeit ist die Peer-Discovery zu aktivieren. Dies wird den Bootstrap auf dem Netzwerk durch die Übertragung von UDP-Paketen (wie ein Drucker) bekannt geben.
Die Vergangenheit
Another external service is the TURN server, used as a fallback for connections if the NAT block all possible connections. Generally it is turn.jami.net but can be any TURN (we use coturn).
Auf einem LAN kann es ignoriert werden (weil es keine NAT gibt), aber es sollte nicht notwendig sein, es zu deaktivieren (weil es nicht verwendet wird, wenn es nicht erreichbar ist).
Auf dem Handy (DHT Proxy)
A DHT Proxy is used with mobile devices to save battery by avoiding synchronization. It is generally dhtproxy.jami.net but can be any DHT node with the REST API enabled. However, if the DHT proxy is using push notifications it will depend on another external service (Firebase or APN or a UnifiedPush instance). In this case, only the third one can be self-hosted.
On iOS it is basically impossible to work without push, as the OS from Apple will kill any application as soon as it is in background. So you can not disable the usage of push-notifications. However, for Android, you may want to self-host your proxy (with or without UnifiedPush support), or you can disable the DHT Proxy and enable „Run in the background“ in order to use your local DHT.
Namenserver
Finally, the last external service you may need is a name server. This is used to translate addresses (the 40-characters fingerprint ID) to usernames. You may not have access to ns.jami.net, but you can self-host one (name server protocol) or only use IDs.