aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAlex <alex@adnab.me>2024-02-19 11:44:05 +0000
committerAlex <alex@adnab.me>2024-02-19 11:44:05 +0000
commit6bb34899f225141e65e79fe140b9abca29b39fd6 (patch)
tree250bb249084a3c4678c0088fcba0eb52d8344181 /doc
parentb8217361c05883a839996a7db24be71c601e428f (diff)
parenteab54b37981073651712a15334b60b2c409f2576 (diff)
downloadgarage-6bb34899f225141e65e79fe140b9abca29b39fd6.tar.gz
garage-6bb34899f225141e65e79fe140b9abca29b39fd6.zip
Merge pull request 'fixes to RPC networking' (#721) from networking-fixes into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/721
Diffstat (limited to 'doc')
-rw-r--r--doc/book/reference-manual/configuration.md13
1 files changed, 13 insertions, 0 deletions
diff --git a/doc/book/reference-manual/configuration.md b/doc/book/reference-manual/configuration.md
index 27d9fd54..f1474613 100644
--- a/doc/book/reference-manual/configuration.md
+++ b/doc/book/reference-manual/configuration.md
@@ -27,6 +27,7 @@ compression_level = 1
rpc_secret = "4425f5c26c5e11581d3223904324dcb5b5d5dfb14e5e7f35e38c595424f5f1e6"
rpc_bind_addr = "[::]:3901"
+rpc_bind_outgoing = false
rpc_public_addr = "[fc00:1::1]:3901"
bootstrap_peers = [
@@ -91,6 +92,7 @@ Top-level configuration options:
[`metadata_fsync`](#metadata_fsync),
[`replication_mode`](#replication_mode),
[`rpc_bind_addr`](#rpc_bind_addr),
+[`rpc_bind_outgoing`](#rpc_bind_outgoing),
[`rpc_public_addr`](#rpc_public_addr),
[`rpc_secret`/`rpc_secret_file`](#rpc_secret),
[`sled_cache_capacity`](#sled_cache_capacity),
@@ -415,6 +417,17 @@ the node, even in the case of a NAT: the NAT should be configured to forward the
port number to the same internal port nubmer. This means that if you have several nodes running
behind a NAT, they should each use a different RPC port number.
+#### `rpc_bind_outgoing` {#rpc_bind_outgoing} (since v0.9.2)
+
+If enabled, pre-bind all sockets for outgoing connections to the same IP address
+used for listening (the IP address specified in `rpc_bind_addr`) before
+trying to connect to remote nodes.
+This can be necessary if a node has multiple IP addresses,
+but only one is allowed or able to reach the other nodes,
+for instance due to firewall rules or specific routing configuration.
+
+Disabled by default.
+
#### `rpc_public_addr` {#rpc_public_addr}
The address and port that other nodes need to use to contact this node for