mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-28 02:18:50 +00:00
Yesterday, during some portion of the day connections between clients and resources were impossible. While I couldn't pinpoint the exact cause I found some issues with cleanup. This PR fixes those. Furthermore, I increased the default log level for tunnels in the clients so that if this happens again we have better logs to triage. ~~Furthermore, I found out about #2705 so, I removed the limit of relays from connlib since the portal already limits it to 2 (4 if you count per-ip), that way we make sure that we always use both ipv4 and ipv6. The connection start up time seems to slow down due to this but I think this is better. We might want to go to only 2 urls again later on to speed this up, if the portal can ensure it's a working relay load-balanced relay there might not be a point in using more than a single server~~. cc @AndrewDryga Edit: we always get an ipv4 and ipv6 address for the same relay as the first two relays in the relay list, save the case where only one of the ip types is supported. We should be safe limiting it to 2. --------- Signed-off-by: Gabi <gabrielalejandro7@gmail.com> Co-authored-by: Jamil <jamilbk@users.noreply.github.com>
Connlib
Firezone's connectivity library shared by all clients.
🚧 Disclaimer 🚧
NOTE: This repository is undergoing heavy construction. You could say we're Building In The Open™ in true open source spirit. Do not attempt to use anything released here until this notice is removed. You have been warned.
Building Connlib
Setting the CONNLIB_MOCK environment variable when packaging for Apple or Android will activate the mock feature flag, replacing connlib's normal connection logic with a mock for testing purposes.
- You'll need a Rust toolchain installed if you don't have one already. We recommend following the instructions at https://rustup.rs.
rustup showwill install all needed targets since they are added torust-toolchain.toml.- Follow the relevant instructions for your platform:
- Apple
- Android
- Linux
- Windows
Apple
Connlib should build successfully with recent macOS and Xcode versions assuming you have Rust installed. If not, open a PR with the notes you found.