[Draft] VR: allow outgoing traffic from Remote access VPN clients
Description
This PR enables VR to allow outgoing traffic from Remote access VPN clients via CloudStack VR.
This PR is a draft. Ideally there is a global/account configuration, or new property of remote access VPN (similar as remote.access.vpn.client.iprange)
Remote access vpn (setup by L2tp in CloudStack VR) does not support split tunneling. Where are two options when user connects to the RAV server
- Do not use the VPN connection for the client. User has to manually add static route to the VMs on guest network.
- Use the VPN connection for the client. All traffic will go through the RAV server (cloudstack VR). Currently, if uses choose this option, the RAV client will lose connection to the Internet. This PR fixes the issue.
Note, there is no option for L2TP clients to "Use the VPN connection only on the resource of the network".
Types of changes
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] Enhancement (improves an existing feature and functionality)
- [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
- [ ] build/CI
- [ ] test (unit or integration test code)
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
- [ ] Major
- [ ] Minor
Bug Severity
- [ ] BLOCKER
- [ ] Critical
- [ ] Major
- [ ] Minor
- [ ] Trivial
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?
Codecov Report
:white_check_mark: All modified and coverable lines are covered by tests.
:white_check_mark: Project coverage is 16.21%. Comparing base (79ebf69) to head (4d26d8c).
Additional details and impacted files
@@ Coverage Diff @@
## 4.20 #10083 +/- ##
============================================
- Coverage 16.21% 16.21% -0.01%
+ Complexity 13354 13351 -3
============================================
Files 5657 5657
Lines 498642 498642
Branches 60520 60520
============================================
- Hits 80868 80860 -8
- Misses 408754 408770 +16
+ Partials 9020 9012 -8
| Flag | Coverage Δ | |
|---|---|---|
| uitests | 4.00% <ø> (ø) |
|
| unittests | 17.07% <ø> (-0.01%) |
:arrow_down: |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
:rocket: New features to boost your workflow:
- :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
- :package: JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 11804
@weizhouapache is this ready for review?
@blueorangutan package