Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-89582

Add support for configuring per-device IPv4 sysctl forwarding option in NetworkManager

Linking RHIVOS CVEs to...Migration: Automation ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • NetworkManager-1.53.4-1.el10
    • Moderate
    • rhel-net-mgmt
    • ssg_networking
    • 1
    • False
    • False
    • Hide

      None

      Show
      None
    • Yes
    • None
    • Hide

      Definition of Done:

      Please mark each item below with ( / ) if completed or ( x ) if incomplete:

      ( ) The acceptance criteria defined below are met.

      Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1),

      When the system administrator sets ipv4.forwarding to yes in the NetworkManager profile for that interface,

      Then NetworkManager should apply the sysctl setting net.ipv4.conf.eth1.forward=1, enabling IP forwarding for that interface

      Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1),

      When the system administrator sets ipv4.forwarding to no in the NetworkManager profile for that interface,

      Then NetworkManager should apply the sysctl setting net.ipv4.conf.eth1.forward=0, disabling IP forwarding for that interface

       

      Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1),

      When the system administrator sets ipv4.forwarding to auto in the NetworkManager profile for that interface,

      Then NetworkManager should set the forwarding only if there is an activated shared connection. 

       

      Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1),

      When the system administrator sets ipv4.forwarding to ignore in the NetworkManager profile for that interface,

      Then NetworkManager should not modify the current forwarding configuration for that interface.


      ( ) Code changes are included in a downstream build attached to an errata.


      ( ) All required testing (manual and/or automated) passes successfully.


      ( ) Related documentation updates (if applicable) have been completed.

      Show
      Definition of Done: Please mark each item below with ( / ) if completed or ( x ) if incomplete: ( ) The acceptance criteria defined below are met. Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1), When the system administrator sets ipv4.forwarding to yes in the NetworkManager profile for that interface, Then NetworkManager should apply the sysctl setting net.ipv4.conf.eth1.forward=1, enabling IP forwarding for that interface Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1), When the system administrator sets ipv4.forwarding to no in the NetworkManager profile for that interface, Then NetworkManager should apply the sysctl setting net.ipv4.conf.eth1.forward=0, disabling IP forwarding for that interface   Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1), When the system administrator sets ipv4.forwarding to auto in the NetworkManager profile for that interface, Then NetworkManager should set the forwarding only if there is an activated shared connection.    Given a system administrator has configured a NetworkManager connection profile for an Ethernet interface (e.g., eth1), When the system administrator sets ipv4.forwarding to ignore in the NetworkManager profile for that interface, Then NetworkManager should not modify the current forwarding configuration for that interface. ( ) Code changes are included in a downstream build attached to an errata. ( ) All required testing (manual and/or automated) passes successfully. ( ) Related documentation updates (if applicable) have been completed.
    • Pass
    • Automated
    • Enhancement
    • Hide
      .NetworkManager and Nmstate support configuring IPv4 forwarding per interface

      With this enhancement, NetworkManager can enable and disable IPv4 forwarding per network interface. This enables granular control directly in NetworkManager connection profiles, and updating `sysctl` kernel settings is no longer required. If you enable the `ipv4.forwarding` parameter in a profile, the corresponding interface acts as a router and forwards IPv4 packets. With the default value `auto`, NetworkManager enables IPv4 forwarding if any shared connection is active and, in other cases, it uses the kernel default value.

      This feature is also available in Nmstate.
      Show
      .NetworkManager and Nmstate support configuring IPv4 forwarding per interface With this enhancement, NetworkManager can enable and disable IPv4 forwarding per network interface. This enables granular control directly in NetworkManager connection profiles, and updating `sysctl` kernel settings is no longer required. If you enable the `ipv4.forwarding` parameter in a profile, the corresponding interface acts as a router and forwards IPv4 packets. With the default value `auto`, NetworkManager enables IPv4 forwarding if any shared connection is active and, in other cases, it uses the kernel default value. This feature is also available in Nmstate.
    • Done
    • Done
    • Done
    • Not Required
    • None

      To meet the needs of users configuring multi-interface nodes (OCP) and enable IPv4 forwarding per interface (See RHEL-36429), NetworkManager should support configuring sysctl settings for IPv4 forwarding.

      Specifically, the setting net.ipv4.conf.<interface>.forward=1 should be configurable via NetworkManager profiles. This will allow specific interfaces to enable IPv4 forwarding, such as for use cases like Metallb load balancing, without requiring global ip_forward=1 settings.

       

       

              rhn-engineering-vbenes Vladimir Benes
              rh-ee-sfaye Stanislas Faye
              Network Management Team Network Management Team
              Vladimir Benes Vladimir Benes
              Marc Muehlfeld Marc Muehlfeld
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

                Created:
                Updated: