Stephen Hemminger 0ea0699ea0 route: filter by interface on multipath routes
The ip route command would silently hide multipath routes when filter
by interface. The problem was it was not looking for interface when
filter multipath routes.

Example:
	ip link add name dummy1 up type dummy
	ip link add name dummy2 up type dummy
	ip address add 192.0.2.1/28 dev dummy1
	ip address add 192.0.2.17/28 dev dummy2
	ip route add 198.51.100.0/24 \
		nexthop via 192.0.2.2 dev dummy1 \
		nexthop via 192.0.2.18 dev dummy2

Before:
ip route show dev dummy1
192.0.2.0/28 proto kernel scope link src 192.0.2.1

After:
ip route show dev dummy1
192.0.2.0/28 proto kernel scope link src 192.0.2.1
198.51.100.0/24
	nexthop via 192.0.2.2 dev dummy1 weight 1
	nexthop via 192.0.2.18 dev dummy2 weight 1

Reported-by: "Muggeridge, Matt" <matt.muggeridge2@hpe.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
2024-07-04 17:44:55 -07:00
2023-06-28 16:31:33 -07:00
2021-03-30 03:04:09 +00:00
2024-01-25 16:49:10 -08:00
2024-02-08 09:21:39 -08:00
2024-05-13 22:23:55 -07:00
2024-06-27 09:59:18 -07:00
2023-01-14 09:00:34 -08:00
2023-10-30 11:35:32 -07:00
2024-01-25 16:49:10 -08:00
2019-05-15 09:50:42 -07:00
2008-03-08 13:31:03 -08:00
2023-05-13 19:25:04 -07:00
2023-11-22 19:27:45 +00:00
2023-09-29 16:06:42 -07:00

This is a set of utilities for Linux networking.

Information:
    https://wiki.linuxfoundation.org/networking/iproute2

Download:
    http://www.kernel.org/pub/linux/utils/net/iproute2/

Stable version repository:
    git://git.kernel.org/pub/scm/network/iproute2/iproute2.git

Development repository:
    git://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git

Compatibility
-------------
A new release of iproute2 is done with each kernel version, but
there is a wide range of compatibility. Newer versions of iproute2
will still work with older kernels, but there are some limitations.

If an iproute2 command with a new feature is used with an older
kernel, the kernel may report an error or silently ignore the new
attribute. Likewise if older iproute2 is used with an newer kernel,
it is not possible to use or see new features. The range of
compatibility extends back as far as the oldest supported Long Term
Support (LTS) kernel version.

How to compile this.
--------------------
1. libdbm

arpd needs to have the berkeleydb development libraries. For Debian
users this is the package with a name like libdbX.X-dev.
DBM_INCLUDE points to the directory with db_185.h which
is the include file used by arpd to get to the old format Berkeley
database routines.  Often this is in the db-devel package.

2. make

The makefile will automatically build a config.mk file which
contains definitions of libraries that may or may not be available
on the system such as: ATM, ELF, MNL, and SELINUX.

3. include/uapi

This package includes matching sanitized kernel headers because
the build environment may not have up to date versions. See Makefile
if you have special requirements and need to point at different
kernel include files.

Stephen Hemminger
stephen@networkplumber.org

David Ahern
dsahern@gmail.com
Description
No description provided
Readme 8.5 MiB
Languages
C 97.3%
Shell 1.9%
Makefile 0.5%
Yacc 0.2%