summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--etc/inc/system.inc2
-rwxr-xr-xetc/rc.newwanip5
2 files changed, 6 insertions, 1 deletions
diff --git a/etc/inc/system.inc b/etc/inc/system.inc
index 964004d..292770d 100644
--- a/etc/inc/system.inc
+++ b/etc/inc/system.inc
@@ -383,6 +383,8 @@ function system_routing_configure($interface = "") {
if (isset($gateways_arr[$rtent['gateway']])) {
$gatewayip = $gateways_arr[$rtent['gateway']]['gateway'];
$interfacegw = $gateways_arr[$rtent['gateway']]['interface'];
+ if ($interface == $gateways_arr[$rtent['gateway']]['friendlyiface'])
+ continue;
} else if (is_ipaddr($rtent['gateway'])) {
$gatewayip = $rtent['gateway'];
} else {
diff --git a/etc/rc.newwanip b/etc/rc.newwanip
index 57c48bd..7030b85 100755
--- a/etc/rc.newwanip
+++ b/etc/rc.newwanip
@@ -63,7 +63,7 @@ log_error("rc.newwanip: on (IP address: {$curwanip}) (interface: {$interface}) (
if($curwanip == "0.0.0.0" || !is_ipaddr($curwanip)) {
log_error("rc.newwanip: Failed to update {$interface} IP, restarting...");
- interface_configure($interface);
+ send_event("interface reconfigure {$inerface}");
exit;
}
@@ -81,6 +81,9 @@ file_put_contents("{$g['vardb_path']}/{$interface}_cacheip", $curwanip);
if (is_ipaddr($oldip) && $curwanip == $oldip)
exit;
+/* reconfigure static routes (kernel may have deleted them) */
+system_routing_configure($interface);
+
/* reconfigure our gateway monitor */
setup_gateways_monitor();
OpenPOWER on IntegriCloud