From ce56135fd4c631cfd59a1f00f70beeba3cb0800f Mon Sep 17 00:00:00 2001 From: f Date: Mon, 22 Jun 2026 20:05:22 -0300 Subject: [PATCH 1/2] feat: optionally specify subnets garage may still prefer the container's private ipv4 address and will inform it to remote nodes, preventing dialbacks. it should be useful for private ipv6 networks. --- .env.sample | 3 +++ garage.toml.tmpl | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.env.sample b/.env.sample index d3d4a9c..a2df81c 100644 --- a/.env.sample +++ b/.env.sample @@ -23,6 +23,9 @@ DATA_FSYNC=false DISABLE_SCRUB=false BLOCK_SIZE=1MiB # only increase if there is a fast network connection between nodes +# Set this to tell Garage which subnet to pick if you're using IPv6. +#PUBLIC_ADDR_SUBNET= + ## Bootstrap this node in an existing Garage cluster #BOOTSTRAP_HOST="" #BOOTSTRAP_ID="" diff --git a/garage.toml.tmpl b/garage.toml.tmpl index caeb375..c93004d 100644 --- a/garage.toml.tmpl +++ b/garage.toml.tmpl @@ -16,6 +16,9 @@ rpc_bind_addr = "[::]:3901" rpc_public_addr = "{{ env "DOMAIN" }}:3901" rpc_addr = "[::]:3901" rpc_secret_file = "/run/secrets/rpc_secret" +{{ if ne (env "PUBLIC_ADDR_SUBNET") "" }} +rpc_public_addr_subnet = "{{ env "PUBLIC_ADDR_SUBNET" }}" +{{ end }} {{ if ne (env "BOOTSTRAP_ID") "" }} bootstrap_peers = [ @@ -34,4 +37,4 @@ api_bind_addr = "[::]:3903" admin_token_file = "/run/secrets/admin_token" metrics_require_token = true metrics_token_file = "/run/secrets/metrics_token" -{{ end }} \ No newline at end of file +{{ end }} -- 2.52.0 From a88e56b4c2115d47bbef31cf9683bb037bd0df34 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 22 Jun 2026 20:09:20 -0300 Subject: [PATCH 2/2] fix: upgrade config version --- abra.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abra.sh b/abra.sh index c028708..607de32 100644 --- a/abra.sh +++ b/abra.sh @@ -1 +1 @@ -export GARAGE_CONF_VERSION=v7 \ No newline at end of file +export GARAGE_CONF_VERSION=v8 -- 2.52.0