Ah, that's now what we need, nice for the script!
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Yesterday
The file /usr/local/etc/devd/carp.conf :
You can directly use variables in the action to pass interface and state with $subsystem and $type
notify 0 {
match "system" "CARP";
match "subsystem" "[0-9]+@[0-9a-z.]+";
match "type" "(MASTER|BACKUP)";
action "/usr/local/scripts/carp-test.sh";
};For all CARP external documentation, I think I've found the threshold where information is outdated in that man page:
According carp(4) (man carp) examples section, the name has changed.
@dereckson I first tried to redefine the devd rule by matching specific IFNET event types such as LINK_UP, LINK_DOWN, UP and DOWN, but none of them were triggered during CARP state changes in my tests.
notify 0 {
match "system" "IFNET";
match "subsystem" "vmx1";
action "logger CARP state change detected";
};A dedicated devd file was placed in /usr/local/etc/devd because this directory is usually used for custom configurations added by administrators, while /etc/devd contains the default system rules from FreeBSD. It makes the setup cleaner, avoids mixing custom logic with system configuration, and makes future maintenance or upgrades easier.
Sat, Mar 21
Proof of concept to call OVH API from Python to define MAC address to router-002/003.
Fri, Mar 20
OVH API credentials published to apps/network/carp-hyper-001-switch path,
under application_key, application_secret, consumer_key keys.
Thu, Mar 19
Wed, Mar 18
Tue, Mar 17
If we trigger the script through devd, we can provide a .conf configuration file in /usr/local/etc/devd.
Mon, Mar 16
This task required the renewal of the Vault certificate :
Fri, Mar 13
Configured at OVH level.