To get rid of tech debt and delegate some of internal logic to dedicated tool, subscription-manager replaces 'python3-ethtool' package with 'iproute' for network fact collection. This results in a change of dependencies in specfile and in new network collector. While there may be behavioral changes (current tooling does not support network interface teaming, for example), the collected facts *should* be nearly the same.
Pre-verification testing... Before applying the fix for this Bugzilla... [root@rhsm-auto93-client1 ~]# rpm -q subscription-manager subscription-manager-1.29.35-1.el9.x86_64 [root@rhsm-auto93-client1 ~]# rpm -q subscription-manager --requires /bin/sh /bin/sh /bin/sh /bin/sh /bin/sh /usr/bin/python3 config(subscription-manager) = 1.29.35-1.el9 dmidecode dnf >= 1.0.0 libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_2.8)(64bit) libdnf-plugin-subscription-manager = 1.29.35 libglib-2.0.so.0()(64bit) python(abi) = 3.9 python3-cloud-what = 1.29.35-1.el9 python3-dateutil python3-dbus python3-decorator python3-dnf-plugins-core python3-ethtool <=========== NOTICE THE PRIOR REQUIRED DEPENDENCY python3-gobject-base python3-iniparse python3-inotify python3-librepo python3-setuptools python3-subscription-manager-rhsm = 1.29.35 python3.9dist(ethtool) python3.9dist(iniparse) python3.9dist(python-dateutil) python3.9dist(setuptools) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsZstd) <= 5.4.18-1 rtld(GNU_HASH) subscription-manager-rhsm-certificates systemd systemd systemd usermode virt-what [root@rhsm-auto93-client1 ~]# [root@rhsm-auto93-client1 ~]# subscription-manager facts | grep address | sort dmi.bios.address: 0xe8000 lscpu.address_sizes: 46 bits physical, 57 bits virtual net.interface.eth0.ipv4_address: 10.8.30.92 net.interface.eth0.ipv4_address_list: 10.8.30.92 net.interface.eth0.ipv6_address.global: 2620:52:0:800:2eab:a1f1:9233:6357 net.interface.eth0.ipv6_address.global_list: 2620:52:0:800:2eab:a1f1:9233:6357 net.interface.eth0.ipv6_address.link: fe80::a3cd:3097:1f73:f84d net.interface.eth0.ipv6_address.link_list: fe80::a3cd:3097:1f73:f84d net.interface.eth0.mac_address: 52:54:00:03:8e:1c net.interface.lo.ipv4_address: 127.0.0.1 net.interface.lo.ipv4_address_list: 127.0.0.1 net.interface.lo.ipv6_address.host: ::1 net.interface.lo.ipv6_address.host_list: ::1 network.ipv4_address: 10.8.30.92 network.ipv6_address: fe80::a3cd:3097:1f73:f84d, 2620:52:0:800:2eab:a1f1:9233:6357 proc_cpuinfo.common.address_sizes: 46 bits physical, 57 bits virtual [root@rhsm-auto93-client1 ~]# After applying the fix for this Bugzilla... [root@rhsm-auto93-client1 ~]# rpm -q subscription-manager subscription-manager-1.29.35+35.g614325532-1.git.0.160f2a4.x86_64 [root@rhsm-auto93-client1 ~]# rpm -q subscription-manager --changelog | grep 2215974 - 2215974: Collect network facts using 'ip' (mhorky) [root@rhsm-auto93-client1 ~]# rpm -q subscription-manager --requires /bin/sh /bin/sh /bin/sh /bin/sh /bin/sh /usr/bin/python3 config(subscription-manager) = 1.29.35+35.g614325532-1.git.0.160f2a4 dmidecode iproute <============== NOTICE NEW DEPENDENCY iproute REPLACES python3-ethtool libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.33)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_2.8)(64bit) libdnf-plugin-subscription-manager = 1.29.35+35.g614325532 libglib-2.0.so.0()(64bit) python(abi) = 3.9 python3-cloud-what = 1.29.35+35.g614325532-1.git.0.160f2a4 python3-dateutil python3-dbus python3-decorator python3-dnf python3-dnf-plugins-core python3-gobject-base python3-iniparse python3-inotify python3-librepo python3-setuptools python3-subscription-manager-rhsm = 1.29.35+35.g614325532 python3.9dist(iniparse) python3.9dist(python-dateutil) python3.9dist(setuptools) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsZstd) <= 5.4.18-1 rtld(GNU_HASH) subscription-manager-rhsm-certificates systemd systemd systemd usermode virt-what [root@rhsm-auto93-client1 ~]# [root@rhsm-auto93-client1 ~]# subscription-manager facts | grep address | sort dmi.bios.address: 0xe8000 lscpu.address_sizes: 46 bits physical, 57 bits virtual net.interface.eth0.ipv4_address: 10.8.30.92 net.interface.eth0.ipv4_address_list: 10.8.30.92 net.interface.eth0.ipv6_address.global: 2620:52:0:800:2eab:a1f1:9233:6357 net.interface.eth0.ipv6_address.global_list: 2620:52:0:800:2eab:a1f1:9233:6357 net.interface.eth0.ipv6_address.link: fe80::a3cd:3097:1f73:f84d net.interface.eth0.ipv6_address.link_list: fe80::a3cd:3097:1f73:f84d net.interface.eth0.mac_address: 52:54:00:03:8e:1c net.interface.lo.ipv4_address: 127.0.0.1 net.interface.lo.ipv4_address_list: 127.0.0.1 net.interface.lo.ipv6_address.host: ::1 net.interface.lo.ipv6_address.host_list: ::1 network.ipv4_address: 10.8.30.92 network.ipv6_address: 2620:52:0:800:2eab:a1f1:9233:6357, fe80::a3cd:3097:1f73:f84d proc_cpuinfo.common.address_sizes: 46 bits physical, 57 bits virtual [root@rhsm-auto93-client1 ~]# VERIFIED: The dependency on python3-ethtool has been replaced by iproute with no changes to any of the address facts. The only minor difference occurs on the ordering of the comma delimited value for network.ipv6_address. However, we have no preceding requirement for an expected order.