Compare commits

...

2 Commits

Author SHA1 Message Date
8284a5fb66 add: .bruno folder to gitignore 2026-06-17 07:38:16 +00:00
0b7af06fb3 add: gateway change 2026-06-17 07:37:59 +00:00
2 changed files with 18 additions and 1 deletions

2
.gitignore vendored
View File

@@ -2,3 +2,5 @@
**/.terraform*
*.tfstate*
*credentials.auto.tfvars
# Bruno
.bruno

View File

@@ -38,6 +38,9 @@ if ($vhid !== $primary_vhid) {
// Interface key to manage
$ifkey = 'wan';
$real_if = get_real_interface('wan');
// Fallback gateway name
$gw_name = 'LAN_GW';
// Determine whether WAN interface is currently enabled
$ifkey_enabled = !empty($config['interfaces'][$ifkey]['enable']) ? true : false;
// Lock file to prevent interface flapping
@@ -80,6 +83,18 @@ if ($type === "MASTER") {
unset($config['interfaces'][$ifkey]['enable']);
write_config("disable interface '$ifkey' due CARP event '$type'", false);
interface_configure(false, $ifkey, false, false);
// Remove WAN default gateway
mwexec("/sbin/route delete default");
foreach ($config['OPNsense']['Gateways']['gateway_item'] as $gw) {
if ($gw['name'] === $gw_name) {
$gw_ip = $gw['gateway'];
break;
}
}
// Shutdown WAN interface
mwexec("/sbin/ifconfig {$real_if} down")
// Add fallback default gateway
mwexec("/sbin/route add default {$gw_ip}");
// Create lock file
file_put_contents($lock_file, time());
sleep($lock_default_age);