از جمی در 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

بوترپ چيست؟

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).

پس اگر اینترنت قطع شده باشد، برای ایجاد شبکه به یک بوترپ دیگر نیاز دارید. در یک LAN، دو راه برای پیکربندی آن در Jami وجود دارد:

تنظیمات بوتر استرپ

در تنظیمات حساب پیشرفته، کاربر می تواند چندین بوترپ را پیکربندی کند. bootstrap.jami.net معمولا پیش فرض است، bootstrap.jami.net؛your.bootstrap.tld معتبر خواهد بود. IP:port یک گره DHT دیگر می تواند به عنوان بوترپ مشخص شود.

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.

کشف همسالان محلی

روش دیگری این است که کشف همتایان را فعال کنید. این با پخش بسته های UDP (مانند یک پرینتر) بوترپ را در شبکه اعلام می کند. بنابراین، پخش UDP باید توسط شبکه پشتیبانی شود تا کار کند. با این حال، این روش نیازی به مشخص کردن ip:port در تنظیمات ندارد، بنابراین می توان آن را ترجیح داد.

TURN

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).

در یک LAN، ممکن است نادیده گرفته شود (چون NAT وجود نخواهد داشت) ، اما غیر فعال کردن آن نباید ضروری باشد (چون اگر غیر قابل دسترسی باشد استفاده نخواهد شد).

در تلفن همراه (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.

نام سرور

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 (:doc:/developer/name-server-protocol) or only use IDs.