pascal-fischer
cb7ecd1cc4
Merge pull request #945 from netbirdio/feat/refactor_route_adding_in_client
...
Refactor check logic when adding routes
2023-06-19 10:16:22 +02:00
Maycon Santos
a4350c19e7
Fix: Skip state notification should use a copy of the previous peer state ( #960 )
...
This was affecting the behavior of the route manager,
causing issues with HA and with cases of flaky connections
2023-06-17 09:03:52 +02:00
Zoltan Papp
f1b38dbe80
Fix/dns initialization ( #954 )
...
The systemd HostManagers require valid, initialized network interface
2023-06-15 12:25:18 +02:00
Givi Khojanashvili
042f124702
Use different initialize order for DNS resolver in android/nonandroid clients ( #952 )
2023-06-13 09:20:29 +02:00
Pascal Fischer
b5d8142705
test windows
2023-06-12 16:22:53 +02:00
Pascal Fischer
f45eb1a1da
test windows
2023-06-12 16:12:24 +02:00
Pascal Fischer
2567006412
test windows
2023-06-12 16:01:06 +02:00
Pascal Fischer
b92107efc8
test windows
2023-06-12 15:38:47 +02:00
Pascal Fischer
5d19811331
test windows
2023-06-12 15:26:28 +02:00
Pascal Fischer
697d41c94e
test windows
2023-06-12 15:14:51 +02:00
Pascal Fischer
75d541f967
test windows
2023-06-12 14:56:30 +02:00
Zoltan Papp
481465e1ae
Feature/android dns ( #943 )
...
Support DNS feature on mobile systems
---------
Co-authored-by: Givi Khojanashvili <gigovich@gmail.com>
2023-06-12 14:43:55 +02:00
Pascal Fischer
7dfbb71f7a
test windows
2023-06-12 12:49:21 +02:00
Pascal Fischer
a5d14c92ff
test windows
2023-06-12 12:16:00 +02:00
Pascal Fischer
ce091ab42b
test windows
2023-06-12 11:43:18 +02:00
Pascal Fischer
d2fad1cfd9
testing windows
2023-06-12 11:06:49 +02:00
Maycon Santos
c331cef242
Remove the number of status notifications on disconnected peers ( #946 )
...
Only send notifications when disconnected once, at peer's IP update
2023-06-11 21:51:33 +02:00
Pascal Fischer
0b5594f145
testing windows
2023-06-09 19:17:26 +02:00
Pascal Fischer
9beaa91db9
testing windows
2023-06-09 19:15:39 +02:00
Pascal Fischer
c8b4c08139
split systemops for operating systems and add linux
2023-06-09 18:48:21 +02:00
Pascal Fischer
dad5501a44
split systemops for operating systems and add linux
2023-06-09 18:40:35 +02:00
Pascal Fischer
1ced2462c1
split systemops for operating systems and add linux
2023-06-09 18:36:49 +02:00
Pascal Fischer
64adaeb276
split systemops for operating systems and add linux
2023-06-09 18:30:36 +02:00
Pascal Fischer
6e26d03fb8
split systemops for operating systems and add linux
2023-06-09 18:27:09 +02:00
Pascal Fischer
493ddb4fe3
Revert "hacky all-operating-systems solution"
...
This reverts commit 75fac258e7
.
2023-06-09 17:59:06 +02:00
Pascal Fischer
75fac258e7
hacky all-operating-systems solution
2023-06-09 17:40:10 +02:00
Pascal Fischer
bc8ee8fc3c
add tests
2023-06-09 16:18:48 +02:00
Pascal Fischer
3724323f76
test still failing
2023-06-09 15:33:22 +02:00
Pascal Fischer
3ef33874b1
change checks before route adding to not only check for default gateway (test missing)
2023-06-09 12:35:57 +02:00
Givi Khojanashvili
1d9feab2d9
Feat fake dns address ( #902 )
...
Works only with userspace implementation:
1. Configure host to solve DNS requests via a fake DSN server address in the Netbird network.
2. Add to firewall catch rule for these DNS requests.
3. Resolve these DNS requests and respond by writing directly to wireguard device.
2023-06-08 13:46:57 +04:00
Givi Khojanashvili
ef59001459
Fix routes allow acl rule ( #940 )
...
Modify rules in iptables and nftables to accept all traffic not from netbird network but routed through it.
2023-06-07 15:24:27 +02:00
Zoltan Papp
dd69c1cd31
Struct Engine has methods on both value ( #934 )
...
Struct Engine has methods on both value and pointer receivers.
Such usage is not recommended by the Go Documentation.
2023-06-05 15:34:22 +02:00
Givi Khojanashvili
5507e1f7a5
Add SSH accept rule on the client ( #924 )
2023-06-02 15:26:33 +04:00
Givi Khojanashvili
4cd9ccb493
Squash firewall rules by protocoll if they affects all peers ( #921 )
2023-06-02 10:14:47 +04:00
Givi Khojanashvili
1939973c2e
Use by default nftables on the linux systems ( #922 )
2023-06-01 19:51:13 +04:00
Maycon Santos
3e9b46f8d8
Prevent peer updates on flapping status and fix route score logic ( #920 )
...
Prevent peer updates if the status is not changing from disconnected to connected and vice versa.
Fixed route score calculation, added tests and changed the log message
fixed installer /usr/local/bin creation
2023-06-01 16:00:44 +02:00
Givi Khojanashvili
293499c3c0
Extend protocol and firewall manager to handle old management ( #915 )
...
* Extend protocol and firewall manager to handle old management
* Send correct empty firewall rules list when delete peer
* Add extra tests for firewall manager and uspfilter
* Work with inconsistent state
* Review note
* Update comment
2023-05-31 19:04:38 +02:00
Zoltan Papp
45a6263adc
Feature/android route notification ( #868 )
...
Add new feature to notify the user when new client route has arrived.
Refactor the initial route handling. I move every route logic into the route
manager package.
* Add notification management for client rules
* Export the route notification for Android
* Compare the notification based on network range instead of id.
2023-05-31 18:25:24 +02:00
Givi Khojanashvili
ba7a39a4fc
Feat linux firewall support ( #805 )
...
Update the client's engine to apply firewall rules received from the manager (results of ACL policy).
2023-05-29 16:00:18 +02:00
Zoltan Papp
460cb34d80
Add force relay conn env var for debug purpose ( #904 )
...
Add force relay conn env var for debug purpose.
Move another conn related env settings into a common go file.
2023-05-29 13:50:40 +02:00
Maycon Santos
b6105e9d7c
Use backoff.retry to check if upstreams are responsive ( #901 )
...
Retry, in an exponential interval, querying the upstream servers until it gets a positive response
2023-05-26 17:13:59 +02:00
Misha Bragin
03a42de5a0
Add telemetry to measure app durations ( #878 )
2023-05-19 11:42:25 +02:00
Zoltan Papp
8a8c4bdddd
Fix issue 872 ( #873 )
...
Read and check ip_forward from proc before write
2023-05-18 19:31:54 +02:00
Maycon Santos
db69a0cf9d
Prevent setting primary resolver if using custom DNS port ( #861 )
...
Most host managers doesn't support using custom DNS ports.
We are now disabling setting it up to avoid unwanted results
2023-05-17 00:03:26 +02:00
Bethuel
fea53b2f0f
Fix incomplete verification URI issue in device auth flow ( #838 )
...
Adds functionality to support Identity Provider (IdP) managers
that do not support a complete verification URI in the
device authentication flow.
In cases where the verification_uri_complete field is empty,
the user will be prompted with their user_code,
and the verification_uri field will be used as a fallback
2023-05-05 12:43:04 +02:00
Misha Bragin
cb12e2da21
Correct sharedsock BPF fields ( #835 )
2023-05-04 12:28:32 +02:00
Maycon Santos
ecac82a5ae
Share kernel Wireguard port with raw socket ( #826 )
...
This PR brings support of a shared port between stun (ICE agent) and
the kernel WireGuard
It implements a single port mode for execution with kernel WireGuard
interface using a raw socket listener.
BPF filters ensure that only STUN packets hit the NetBird userspace app
Removed a lot of the proxy logic and direct mode exchange.
Now we are doing an extra hole punch to the remote WireGuard
port for best-effort cases and support to old client's direct mode.
2023-05-03 14:47:44 +02:00
Misha Bragin
e096ec39d5
Enable roaming for mobile ( #827 )
2023-04-28 16:26:54 +02:00
Maycon Santos
118880b6f7
Send a status notification on offline peers change ( #821 )
...
Sum offline peers too
2023-04-20 15:59:07 +02:00
Zoltan Papp
4616bc5258
Add route management for Android interface ( #801 )
...
Support client route management feature on Android
2023-04-17 11:15:37 +02:00