Comments (8)
May I see the manifest that you are using? If you are trying to go in through bsd::network::interface
, than I think I'm expecting this. If you are using bsd::network::interface::vlan
, the values passed to the bsd::network::interface
class should already be 'processed' and formatted correctly.
from puppet-bsd.
Here's how I was attempting to create VLAN interfaces:
class { 'bsd::network':
v4forwarding => true,
}
bsd::network::interface { 'em0':
description => 'Primary Interface',
values => [ '10.0.0.1/24' ],
}
bsd::network::interface::vlan { 'vlan101':
id => '101',
device => 'em0',
address => '10.0.101.1/24',
}
bsd::network::interface::vlan { 'vlan102':
id => '102',
device => 'em0',
address => '10.0.102.1/24',
}
from puppet-bsd.
Yep, that manifest is the expected approach. I'll try to give some evening time this week to get a test this out. I've been neglecting tests for FreeBSD and plan to rectify this soon once I get my test lab online.
from puppet-bsd.
This should be in a better state now, though I need to add a test to make sure I've not broken OpenBSD in the process. I'll come back.
In the meantime, if you'd like to test this out, I'd appreciate it. I've also modified the interface refreshing so when the values in rc.conf change, the interface is restarted. I'd like feedback on this approach if you have it.
I'm not yet handling cloned interfaces, and I'm not quite sure how to model that in Puppet.
from puppet-bsd.
#63 has been merged. 0.2.7 has been cut for this.
from puppet-bsd.
Much appreciated Zach. I'll be testing it out in the next couple days.
Regarding the cloned interfaces, for my hacked together solution I just added another variable in the network class that takes an array of interface names then added a shell_config item for adding it into rc.conf. Maybe it's not the most elegant solution but it works for the time being.
from puppet-bsd.
@Thracky How'd the testing go? I'll close this out if its working for you.
from puppet-bsd.
Everything worked great. The cloned_interfaces still had to be done separately but the actual interface configuration worked flawlessly otherwise.
Thanks again!
from puppet-bsd.
Related Issues (20)
- Refresh should move to the bsd_interface provider. HOT 1
- Setting address on trunk interfaces doesn't actually set the addresses on OpenBSD HOT 1
- Should manage cloned interfaces in rc.conf on FreeBSD HOT 1
- Alias IP addresses and routes on other than bsd::network::interface interfaces HOT 2
- order of interface handling in the catalog HOT 3
- Should support kernel module load state
- sysctl dependency change problem HOT 7
- Document setting the MTU
- Ability to manage /etc/login.conf HOT 2
- Removing trunk interfaces should not require a parent interface
- link-local IPv6 addresses with %interface suffix are not matched/valid HOT 2
- FreeBSD11 uses `accept_rtadv` to enable router advertisements
- Cloned interfaces on FreeBSD HOT 1
- gre interfaces does not appear to work on freebsd 11.1 HOT 31
- Support static_routes from rc.conf on FreeBSD HOT 1
- Error: Failed to apply catalog: no parameter named 'value' HOT 16
- route does not get set on FreeBSD HOT 12
- trunk does not manage cloned_interfaces parameter HOT 18
- feature request: hiera support for most settings HOT 3
- Seeking New Ownership
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from puppet-bsd.