Viktor Liu
2f5d9fc0cd
Add IPv6 dispatch for OutputDNAT, fix v6 guard pattern, rename DNAT params
...
- Add IPv6 router dispatch to AddOutputDNAT/RemoveOutputDNAT in both
nftables and iptables managers (was hardcoded to v4 router only).
- Fix all DNAT and AddDNATRule dispatch methods to check Is6() first,
then error with ErrIPv6NotInitialized if v6 components are missing.
Previously the hasIPv6() && Is6() pattern silently fell through to
the v4 router for v6 addresses when v6 was not initialized.
- Add ErrIPv6NotInitialized sentinel error, replace all ad-hoc
"IPv6 not initialized" format strings across both managers.
- Rename sourcePort/targetPort to originalPort/translatedPort in all
DNAT method signatures to reflect actual DNAT semantics.
- Remove stale "localAddr must be IPv4" comments from interface.
2026-04-10 12:32:41 +02:00
Viktor Liu
f484835292
Use net.JoinHostPort and net.SplitHostPort for IPv6-safe host:port handling ( #5836 )
2026-04-10 09:10:57 +08:00
Viktor Liu
1c4e5e71d7
[client] Add IPv6 support to ACL manager, USP filter, and forwarder ( #5688 )
2026-04-09 10:56:08 +02:00
Viktor Liu
cb73b94ffb
[client] Add TCP DNS support for local listener ( #5758 )
2026-04-08 07:40:36 +02:00
Viktor Liu
bb85eee40a
[client] Skip down interfaces in network address collection for posture checks ( #5768 )
2026-04-07 17:56:48 +02:00
Zoltan Papp
1c934cca64
Ignore false lint alert ( #5370 )
2026-02-17 16:07:35 +01:00
Pascal Fischer
f53155562f
[management, reverse proxy] Add reverse proxy feature ( #5291 )
...
* implement reverse proxy
---------
Co-authored-by: Alisdair MacLeod <git@alisdairmacleod.co.uk >
Co-authored-by: mlsmaycon <mlsmaycon@gmail.com >
Co-authored-by: Eduard Gert <kontakt@eduardgert.de >
Co-authored-by: Viktor Liu <viktor@netbird.io >
Co-authored-by: Diego Noguês <diego.sure@gmail.com >
Co-authored-by: Diego Noguês <49420+diegocn@users.noreply.github.com >
Co-authored-by: Bethuel Mmbaga <bethuelmbaga12@gmail.com >
Co-authored-by: Zoltan Papp <zoltan.pmail@gmail.com >
Co-authored-by: Ashley Mensah <ashleyamo982@gmail.com >
2026-02-13 19:37:43 +01:00
Viktor Liu
391221a986
[client] Fix uspfilter duplicate firewall rules ( #5269 )
2026-02-09 10:14:02 +01:00
Viktor Liu
d4f7df271a
[cllient] Don't track ebpf traffic in conntrack ( #5166 )
2026-01-27 11:04:23 +01:00
Viktor Liu
0ad0c81899
[client] Reorder userspace ACL checks to fail faster for better performance ( #4226 )
2026-01-09 09:13:04 +01:00
Viktor Liu
e8863fbb55
[client] Add non-root ICMP support to userspace firewall forwarder ( #4792 )
2026-01-09 02:53:37 +08:00
Zoltan Papp
9c9d8e17d7
Revert "Revert "[relay] Update GO version and QUIC version ( #4736 )" ( #5055 )" ( #5071 )
...
This reverts commit 24df442198 .
2026-01-08 18:58:22 +01:00
Maycon Santos
24df442198
Revert "[relay] Update GO version and QUIC version ( #4736 )" ( #5055 )
...
This reverts commit 8722b79799 .
2026-01-07 19:02:20 +01:00
Zoltan Papp
8722b79799
[relay] Update GO version and QUIC version ( #4736 )
...
- Go 1.25.5
- QUIC 0.55.0
2026-01-07 16:30:29 +01:00
Viktor Liu
d71a82769c
[client,management] Rewrite the SSH feature ( #4015 )
2025-11-17 17:10:41 +01:00
Viktor Liu
45c25dca84
[client] Clamp MSS on outbound traffic ( #4735 )
2025-11-04 17:18:51 +01:00
Viktor Liu
86eff0d750
[client] Fix netstack dns forwarder ( #4727 )
2025-10-31 14:18:09 +01:00
Viktor Liu
404cab90ba
[client] Redirect dns forwarder port 5353 to new listening port 22054 ( #4707 )
...
- Port dnat changes from https://github.com/netbirdio/netbird/pull/4015 (nftables/iptables/userspace)
- For userspace: rewrite the original port to the target port
- Remember original destination port in conntrack
- Rewrite the source port back to the original port for replies
- Redirect incoming port 5353 to 22054 (tcp/udp)
- Revert port changes based on the network map received from management
- Adjust tracer to show NAT stages
2025-10-28 15:12:53 +01:00
Viktor Liu
7cd5dcae59
[client] Fix rule order for deny rules in peer ACLs ( #4147 )
2025-08-18 11:17:00 +02:00
Viktor Liu
1d5e871bdf
[misc] Move shared components to shared directory ( #4286 )
...
Moved the following directories:
```
- management/client → shared/management/client
- management/domain → shared/management/domain
- management/proto → shared/management/proto
- signal/client → shared/signal/client
- signal/proto → shared/signal/proto
- relay/client → shared/relay/client
- relay/auth → shared/relay/auth
```
and adjusted import paths
2025-08-05 15:22:58 +02:00
Viktor Liu
71bb09d870
[client] Improve userspace filter logging performance ( #4221 )
2025-07-31 14:36:30 +02:00
Viktor Liu
77ec32dd6f
[client] Implement dns routes for Android ( #3989 )
2025-07-04 16:43:11 +02:00
Viktor Liu
bfa5c21d2d
[client] Improve icmp conntrack log ( #3963 )
2025-06-16 10:12:59 +02:00
Viktor Liu
609654eee7
[client] Allow userspace local forwarding to internal interfaces if requested ( #3884 )
2025-06-04 18:12:48 +02:00
Viktor Liu
ea4d13e96d
[client] Use platform-native routing APIs for freeBSD, macOS and Windows
2025-06-04 16:28:58 +02:00
Viktor Liu
1ce4ee0cef
[client] Add block inbound flag to disallow inbound connections of any kind ( #3897 )
2025-06-03 10:53:27 +02:00
Viktor Liu
41cd4952f1
[client] Apply return traffic rules only if firewall is stateless ( #3895 )
2025-06-02 12:11:54 +02:00
hakansa
84bfecdd37
[client] add byte counters & ruleID for routed traffic on userspace ( #3653 )
...
* [client] add byte counters for routed traffic on userspace
* [client] add allowed ruleID for routed traffic on userspace
2025-04-28 10:10:41 +03:00
Viktor Liu
3cf87b6846
[client] Run container tests more generically ( #3737 )
2025-04-25 18:50:44 +02:00
Viktor Liu
4a9049566a
[client] Set up firewall rules for dns routes dynamically based on dns response ( #3702 )
2025-04-24 17:37:28 +02:00
Viktor Liu
85f92f8321
[client] Add more userspace filter ACL test cases ( #3730 )
2025-04-24 12:57:46 +02:00
Viktor Liu
192c97aa63
[client] Support IP fragmentation in userspace ( #3639 )
2025-04-08 12:49:14 +02:00
Viktor Liu
df9c1b9883
[client] Improve TCP conn tracking ( #3572 )
2025-04-05 11:42:15 +02:00
Viktor Liu
5752bb78f2
[client] Fix missing inbound flows in Linux userspace mode with native router ( #3624 )
...
* Fix missing inbound flows in Linux userspace mode with native router
* Fix route enable/disable order for userspace mode
2025-04-05 11:41:31 +02:00
Viktor Liu
48ffec95dd
Improve local ip lookup ( #3551 )
...
- lower memory footprint in most cases
- increase accuracy
2025-03-31 10:05:57 +02:00
Viktor Liu
29a6e5be71
[client] Stop flow grpc receiver properly ( #3596 )
2025-03-28 16:08:31 +01:00
Viktor Liu
99b41543b8
[client] Fix flows for embedded listeners ( #3564 )
2025-03-22 18:51:48 +01:00
Maycon Santos
c02e236196
[client,management] add netflow support to client and update management ( #3414 )
...
adds NetFlow functionality to track and log network traffic information between peers, with features including:
- Flow logging for TCP, UDP, and ICMP traffic
- Integration with connection tracking system
- Resource ID tracking in NetFlow events
- DNS and exit node collection configuration
- Flow API and Redis cache in management
- Memory-based flow storage implementation
- Kernel conntrack counters and userspace counters
- TCP state machine improvements for more accurate tracking
- Migration from net.IP to netip.Addr in the userspace firewall
2025-03-20 17:05:48 +01:00
Viktor Liu
80ceb80197
[client] Ignore candidates that are part of the the wireguard subnet ( #3472 )
2025-03-10 13:59:21 +01:00
Zoltan Papp
6bef474e9e
[client] Prevent panic in case of double close call ( #3475 )
...
Prevent panic in case of double close call
2025-03-10 13:16:28 +01:00
Viktor Liu
fc1da94520
[client, management] Add port forwarding ( #3275 )
...
Add initial support to ingress ports on the client code.
- new types where added
- new protocol messages and controller
2025-03-09 16:06:43 +01:00
Viktor Liu
bcc5824980
[client] Close userspace firewall properly ( #3426 )
2025-03-04 11:19:42 +01:00
Viktor Liu
a74208abac
[client] Fix udp forwarder deadline ( #3364 )
2025-02-21 18:51:52 +01:00
Viktor Liu
631ef4ed28
[client] Add embeddable library ( #3239 )
2025-02-20 13:22:03 +01:00
Viktor Liu
b41de7fcd1
[client] Enable userspace forwarder conditionally ( #3309 )
...
* Enable userspace forwarder conditionally
* Move disable/enable logic
2025-02-12 11:10:49 +01:00
Viktor Liu
05415f72ec
[client] Add experimental support for userspace routing ( #3134 )
2025-02-07 14:11:53 +01:00
Viktor Liu
5c05131a94
[client] Support port ranges in peer ACLs ( #3232 )
2025-01-27 13:51:57 +01:00
Viktor Liu
5a82477d48
[client] Remove outbound chains ( #3157 )
2025-01-15 16:57:41 +01:00
Viktor Liu
d9905d1a57
[client] Add disable system flags ( #3153 )
2025-01-07 20:38:18 +01:00
Viktor Liu
b3c87cb5d1
[client] Fix inbound tracking in userspace firewall ( #3111 )
...
* Don't create state for inbound SYN
* Allow final ack in some cases
* Relax state machine test a little
2024-12-26 00:51:27 +01:00