2018-03-11 22:08:02 +02:00
|
|
|
# Public Peers
|
|
|
|
|
2019-03-25 20:04:52 +02:00
|
|
|
This repository contains peering information for publicly accessible nodes on
|
2020-06-13 21:43:41 +03:00
|
|
|
the Yggdrasil network.
|
|
|
|
|
|
|
|
Note that not all peers in this repository are guaranteed to be online - check
|
|
|
|
the [Public Peers](https://publicpeers.neilalexander.dev/) page instead to find
|
|
|
|
peers that are online now.
|
2018-03-11 22:08:02 +02:00
|
|
|
|
2019-03-25 20:04:52 +02:00
|
|
|
In most cases, public peers should be accessible by adding the string provided
|
|
|
|
for each peer to the `Peers: []` section of your `yggdrasil.conf` configuration
|
|
|
|
file.
|
|
|
|
|
|
|
|
Example in `yggdrasil.conf`:
|
|
|
|
```
|
2024-02-18 12:25:07 +02:00
|
|
|
Peers: [
|
2019-03-25 20:04:52 +02:00
|
|
|
tcp://a.b.c.d:e
|
2024-02-18 12:25:07 +02:00
|
|
|
tls://d.c.b.a:e
|
2019-03-25 20:04:52 +02:00
|
|
|
tcp://[a:b:c::d]:e
|
2024-02-18 12:25:07 +02:00
|
|
|
tls://[d:c:b::a]:e
|
2019-03-25 20:04:52 +02:00
|
|
|
]
|
|
|
|
```
|
|
|
|
|
|
|
|
### How do I pick peers?
|
|
|
|
|
2020-06-13 21:43:41 +03:00
|
|
|
If you are new to the network then take a look at the [Public Peers](https://publicpeers.neilalexander.dev/)
|
|
|
|
page to find public peers that are online.
|
|
|
|
|
2019-03-25 20:04:52 +02:00
|
|
|
Always try to pick peers that are as close to you geographically as possible, as
|
|
|
|
this will keep the latency of the network down.
|
|
|
|
|
2024-02-18 12:25:07 +02:00
|
|
|
If you are using a home connection, then you should avoid peering with any nodes
|
2019-03-25 20:04:52 +02:00
|
|
|
that are far away, as you may end up carrying traffic for the rest of the
|
|
|
|
network.
|
|
|
|
|
|
|
|
For normal usage, you probably only need 2 or 3 peers.
|
2019-10-31 12:34:46 +02:00
|
|
|
|
2024-02-18 12:25:07 +02:00
|
|
|
### Peering reference
|
|
|
|
URI format: `[protocol]://[host]:[port]?[options]`
|
2019-10-31 12:34:46 +02:00
|
|
|
|
2024-02-18 12:25:07 +02:00
|
|
|
**Available protocols:**
|
|
|
|
- Cleartext TCP: `tcp://`
|
|
|
|
- TLS: `tls://`
|
|
|
|
- TCP over SOCKS5: `socks://[proxyhost]:[proxyport]/[host]:[port]`
|
|
|
|
- UNIX sockets: `unix://`
|
|
|
|
- QUIC (v0.5.0+): `quic://`
|
|
|
|
- TLS over SOCKS5 (v0.5.2+): `sockstls://[proxyhost]:[proxyport]/[host]:[port]`
|
2019-10-31 12:34:46 +02:00
|
|
|
|
2024-02-18 12:25:07 +02:00
|
|
|
Yggdrasil supports basic authentication for SOCKS5 using credentials in the URI like this:
|
2019-10-31 12:34:46 +02:00
|
|
|
|
2024-02-18 12:25:07 +02:00
|
|
|
`socks://[username]:[password]@[proxyhost]:[proxyport]/[host]:[port]`
|
|
|
|
|
|
|
|
**Query options:**
|
|
|
|
- Public-key authentication: `?key=[publickey]` (can have multiple values)
|
|
|
|
- Custom SNI (for TLS/QUIC): `?sni=[domain]` (default is host if it's domain)
|
|
|
|
- Same-peer link priority: `?priority=[integer]` (default is 0, maximum 254 for lowest priority)
|
|
|
|
- Password authentication (v0.5.0+): `?password=[string]` (length up to 64 characters)
|
|
|
|
- Maximum back-off time (v0.5.5+): `?maxbackoff=[seconds]` (supports duration values like 5m, 1h etc)
|