From 1005d0a57c729ac897d5e75fe441ac2aaa4726b5 Mon Sep 17 00:00:00 2001 From: lol3rrr Date: Tue, 19 May 2026 23:06:05 +0200 Subject: [PATCH] Add some more content --- content/homelab-ipv4-expose-2/index.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/content/homelab-ipv4-expose-2/index.md b/content/homelab-ipv4-expose-2/index.md index 11275fa..fcf1092 100644 --- a/content/homelab-ipv4-expose-2/index.md +++ b/content/homelab-ipv4-expose-2/index.md @@ -128,9 +128,17 @@ runcmd: {% end %} ## 2. Extend ipv-proxy -In its original state, the ipv-proxy could only do "manual" forwarding. -Therefore I first extended it, to support different backends for performing the actual forwarding. -It also now supports multiple addresses for consul, which it will try round-robin style, until one works. +In its original state, the ipv-proxy could only do "manual" forwarding and connect to a single consul address, which both needs to be reworked. + +The first change, was to add support for different backends that perform the actual forwarding. +Previously it was pretty hard-coded how the forwarding worked, but now all the behaviour for the forwarding is abstracted away and the core logic just +gets something that knows how to do all the forwarding specific stuff. +This allowed me to easily add a jool backend, which just needs to implement the corresponding trait and integrate it into CLI, but the rest of the logic is left untouched. +Another benefit, that I hope to utilize soon, is that I can also pass in dummy/mock/test implementations for forwarding, to test the core logic and its interaction with the forwarding. + +The second change, was more subtle and in the pursuit of better reliability, as it now supports having multiple consul addresses. +Previously one could only pass a single address and if that had issues, then the ipv-proxy was basically not working anymore. +However now, I can pass the addresses of all my consul servers and it will try all of them until one responds, which means I no longer have a single point of failure in this regard. ## 3. Wireguard setup TODO