<html><head></head><body>I did something similar some years ago in an attempt to divine video servers (eg YouTube) from their TLS certificates in Https connections to mark the connection appropriately. The nfqueue stuff worked beautifully, the cert stuff less so, so I abandoned it. With the latest TLS version the cert stuff is no longer visible anyway.<br><br>There is a Python binding to libnetfilter_queue which might make it easier to play quickly.<br><br>regards,<br>John<br><br><br><div class="gmail_quote">On 20 May 2021 17:07:43 BST, Nils Andreas Svee <me@lochnair.net> wrote:<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">Hi folks<br><br>Currently my setup looks something like this: LAN <-> EdgeRouter <-><br>WireGuard <-> VPS <-> Internet.<br><br>CAKE for upstream is running on the EdgeRouter and downstream on the<br>VPS.<br><br>The public IPs are all on the VPS per today, so that the host isolation<br>can do its job with NAT enabled.<br><br>Ideally I'd like to route the public IPs to each endpoint and handle<br>NAT-ing there, but then I'd obviously lose the ability to do proper<br>host isolation.<br><br>Now, I've been toying with the idea of using an userspace application<br>to extract conntrack information, to let the VPS know which host hash<br>it should use.<br><br>I might be way of here, but I'm thinking of using NFQUEUE to mark new<br>flows based on information from the EdgeRouter, and let tc filters set<br>the host hash based on that mark. For performance purposes only send<br>unmarked flows to NFQUEUE.<br><br>I realise this is kinda overkill, but it might we a fun weekend<br>project.<br></pre></blockquote></div><br>-- <br>Sent from the Aether.</body></html>