diff options
author | Renato Botelho <garga@FreeBSD.org> | 2014-12-05 16:20:34 -0200 |
---|---|---|
committer | Renato Botelho <garga@FreeBSD.org> | 2014-12-05 16:23:14 -0200 |
commit | 6a7dae05d3a628492f5b55ff87a7153ee69484dd (patch) | |
tree | 15861b1299ee17022416db2504577bd8ea99c4df /etc | |
parent | 5c3dae1887af1558c71cb38134e7b54432e6fb9a (diff) | |
download | pfsense-6a7dae05d3a628492f5b55ff87a7153ee69484dd.zip pfsense-6a7dae05d3a628492f5b55ff87a7153ee69484dd.tar.gz |
Fix #4066:
Make sure pf is configured before other services are restarted when WAN
IP changes. The way it was before, 'pass out' rules with route-to still
have old IP set as 'from' and some Dynamic DNS ended up not being
updated.
Diffstat (limited to 'etc')
-rwxr-xr-x | etc/rc.newwanip | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/etc/rc.newwanip b/etc/rc.newwanip index 28b7090..864d987 100755 --- a/etc/rc.newwanip +++ b/etc/rc.newwanip @@ -197,6 +197,15 @@ if (!is_ipaddr($oldip) || $curwanip != $oldip || !is_ipaddrv4($config['interface } } + /* + * XXX: Some services (e.g. dyndns, see ticket #4066) depends of + * filter_configure() to be called before, otherwise pass out + * route-to rules have the old ip set in 'from' and connection + * do not go through correct link + */ + filter_configure(); + sleep(1); + /* reconfigure static routes (kernel may have deleted them) */ system_routing_configure($interface); @@ -229,9 +238,9 @@ if (!is_ipaddr($oldip) || $curwanip != $oldip || !is_ipaddrv4($config['interface services_snmpd_configure(); restart_packages(); +} else { + /* signal filter reload */ + filter_configure(); } -/* signal filter reload */ -filter_configure(); - ?> |