diff --git a/net/redhat-linux-lib.pl b/net/redhat-linux-lib.pl index 65f723ce6..8a3307bbd 100755 --- a/net/redhat-linux-lib.pl +++ b/net/redhat-linux-lib.pl @@ -259,6 +259,7 @@ if ($pmode) { delete($conf{'NETMASK'.$n}); &write_env_file($file, \%conf); &unlock_file($file); + $b->{'parent'} ||= $b->{'name'}; } else { # Interface has it's own file @@ -879,10 +880,20 @@ else { sub apply_interface { my ($i) = @_; -local $out = &backquote_logged( - "cd / ; ". - "ifdown ".quotemeta($i->{'fullname'})." >/dev/null 2>&1 {'fullname'})." 2>&1 {'parent'} && $i->{'virtual'} ne '') { + $out = &backquote_logged( + "cd / ; ". + "ifup ".quotemeta($i->{'name'})." 2>&1 {'fullname'}). + " >/dev/null 2>&1 {'fullname'}). + " 2>&1