[RFC,07/15] network startup: Reload routing informations for every interface

Message ID 20230523172314.7826-8-jonatan.schlag@ipfire.org
State Changes Requested
Headers
Series [RFC,01/15] Remove ipsec interface creation from network startup |

Commit Message

Jonatan Schlag May 23, 2023, 5:23 p.m. UTC
  This reload can and needs to be done when an interface is started. Not only
when all interfaces are started.

Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
---
 src/initscripts/networking/any | 2 ++
 src/initscripts/system/network | 2 --
 2 files changed, 2 insertions(+), 2 deletions(-)
  

Comments

Michael Tremer May 24, 2023, 9 a.m. UTC | #1
This assumption is incorrect.

You could have a route that points somewhere else if a certain interface is not available (e.g. VPNs).

This is probably bad network design, but I suppose that we did support this before.

> On 23 May 2023, at 18:23, Jonatan Schlag <jonatan.schlag@ipfire.org> wrote:
> 
> This reload can and needs to be done when an interface is started. Not only
> when all interfaces are started.
> 
> Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
> ---
> src/initscripts/networking/any | 2 ++
> src/initscripts/system/network | 2 --
> 2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/initscripts/networking/any b/src/initscripts/networking/any
> index 6dba5bef9..ec1321ad9 100644
> --- a/src/initscripts/networking/any
> +++ b/src/initscripts/networking/any
> @@ -109,6 +109,8 @@ case "${1}" in
> ip addr add ${args} dev ${DEVICE}
> evaluate_retval
> fi
> +
> + /etc/rc.d/init.d/static-routes reload
> ;;
> 
> stop)
> diff --git a/src/initscripts/system/network b/src/initscripts/system/network
> index 6a47456f3..b346d487c 100644
> --- a/src/initscripts/system/network
> +++ b/src/initscripts/system/network
> @@ -66,8 +66,6 @@ case "${DO}" in
> /etc/rc.d/init.d/networking/red start
> fi
> 
> - /etc/rc.d/init.d/static-routes start
> -
> boot_mesg "Mounting network file systems..."
> mount -a -O _netdev
> evaluate_retval
> -- 
> 2.30.2
>
  

Patch

diff --git a/src/initscripts/networking/any b/src/initscripts/networking/any
index 6dba5bef9..ec1321ad9 100644
--- a/src/initscripts/networking/any
+++ b/src/initscripts/networking/any
@@ -109,6 +109,8 @@  case "${1}" in
 			ip addr add ${args} dev ${DEVICE}
 			evaluate_retval
 		fi
+
+		/etc/rc.d/init.d/static-routes reload
 		;;
 
 	stop)
diff --git a/src/initscripts/system/network b/src/initscripts/system/network
index 6a47456f3..b346d487c 100644
--- a/src/initscripts/system/network
+++ b/src/initscripts/system/network
@@ -66,8 +66,6 @@  case "${DO}" in
 			/etc/rc.d/init.d/networking/red start
 		fi
 
-		/etc/rc.d/init.d/static-routes start
-
 		boot_mesg "Mounting network file systems..."
 		mount -a -O _netdev
 		evaluate_retval