-
Notifications
You must be signed in to change notification settings - Fork 143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
network: Support adding/removing multiple interfaces in jails #783
Open
tschettervictor
wants to merge
20
commits into
BastilleBSD:master
Choose a base branch
from
tschettervictor:multiple-interfaces
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
network: Support adding/removing multiple interfaces in jails #783
tschettervictor
wants to merge
20
commits into
BastilleBSD:master
from
tschettervictor:multiple-interfaces
+460
−56
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
tschettervictor
changed the title
Support Multiple Interfaces in Jails
network: Support adding/removing multiple interfaces in jails
Jan 1, 2025
Merge add/remove functions to avoid having unnecessarily long code blocks and functions.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a subcommand called "network"
It allows you to add and remove interfaces to each jail, by adding/removing a network block to the jail.con file.
It also makes some changes to clone and create, as the way bastille numbers it's interfaces is by counting the jails. This PR now counts them by grepping each jail.conf file for "epair" and "bastille" as that is what gets created when an interface is created.
To test -
Create a jail
Make sure everything functions as usual
Add an IF (bridged or otherwise) using the network subcommand
Add another IF i you prefer (only one entry per interface is allowed)
Restart to confirm interfaces function properly
Clone that jail
Restart the cloned jail
Confirm jail.conf and /etc/rc.conf are updated as they should be when cloning a jail
Note: cloned jails will set the default interface to the IP specofied, and all other interfaces to SYNCDHCP. This can cause jails to take 10-20 seconds to fully start.
I'm not sure if this is best going forward, but it's the quickest way right now to implement this feature.
Everything works great on my end, so please report any bugs you might encounter.