From: Hangbin Liu <liuhangbin@gmail.com>
To: Jay Vosburgh <jv@jvosburgh.net>
Cc: David Wilder <wilder@us.ibm.com>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"pradeeps@linux.vnet.ibm.com" <pradeeps@linux.vnet.ibm.com>,
Pradeep Satyanarayana <pradeep@us.ibm.com>,
"i.maximets@ovn.org" <i.maximets@ovn.org>,
Adrian Moreno Zapata <amorenoz@redhat.com>
Subject: Re: [PATCH net-next v4 0/7] bonding: Extend arp_ip_target format to allow for a list of vlan tags.
Date: Fri, 8 Aug 2025 10:17:35 +0000 [thread overview]
Message-ID: <aJXOvymrACCRkd3k@fedora> (raw)
In-Reply-To: <603132.1754590220@famine>
On Thu, Aug 07, 2025 at 11:10:20AM -0700, Jay Vosburgh wrote:
> >> This is a key difference between IPv6 and IPv4:
> >> In IPv4, it's possible to get a destination route via the bond even when the
> >> source IP is configured on a different interface. But in IPv6, the routing
> >> mechanism is stricter in requiring the source address to be valid on the
> >> outgoing interface.
> >>
> >> I'm not sure how to fix this yet, as it's fundamentally tied to how IPv6
> >> routing behaves.
> >
> >I am thinking that we don't need to do a route lookup as if we are sending
> >from the bonding interface. We only need to find the interface we should
> >send the packet through. As if we ran "ip route get <dest addr>".
>
> Assuming I'm following correctly, the whole point of the route
> lookup is to determine which interface the ARP (or NS for IPv6) should
> nominally sent through (based on the destination address). This serves
> two purposes:
>
> - collecting the VLAN tags,
>
> - insuring that the ARP / NS won't be sent on a logically
> incorrect interface (e.g., its address corresponds to some totally
> unrelated interface).
>
> So, really, I'm agreed that what we're really looking for is
> "what is the proper output interface to use to send to destination X,"
> which we can then check to see if that interface is logically connected
> to the bond (e.g., a VLAN atop the bond).
>
> Is the solution to call ip6_route_output() with the flowi6_oif
> set to zero? That seems to be what happens for the "ip route get" case
> in inet6_rtm_getroute() (he says, looking at the code but not running
> actual tests).
Looks reasonable to me. We can find the dst interface first and check
if it's an upper link of the bond interface.
Thanks
Hangbin
prev parent reply other threads:[~2025-08-08 10:17 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-27 20:17 [PATCH net-next v4 0/7] bonding: Extend arp_ip_target format to allow for a list of vlan tags David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 1/7] bonding: Adding struct bond_arp_target David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 2/7] bonding: Adding extra_len field to struct bond_opt_value David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 3/7] bonding: arp_ip_target helpers David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 4/7] bonding: Processing extended arp_ip_target from user space David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 5/7] bonding: Update to bond_arp_send_all() to use supplied vlan tags David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 6/7] bonding: Update to bond's sysfs and procfs for extended arp_ip_target format David Wilder
2025-07-02 18:32 ` Jay Vosburgh
2025-07-03 18:07 ` David Wilder
2025-06-27 20:17 ` [PATCH net-next v4 7/7] bonding: Selftest and documentation for the arp_ip_target parameter David Wilder
2025-06-28 1:03 ` [PATCH net-next v4 0/7] bonding: Extend arp_ip_target format to allow for a list of vlan tags Jakub Kicinski
2025-06-30 10:18 ` Hangbin Liu
2025-06-30 16:19 ` David Wilder
2025-07-01 7:13 ` Hangbin Liu
2025-08-07 4:38 ` Hangbin Liu
2025-08-07 16:24 ` David Wilder
2025-08-07 18:10 ` Jay Vosburgh
2025-08-08 10:17 ` Hangbin Liu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aJXOvymrACCRkd3k@fedora \
--to=liuhangbin@gmail.com \
--cc=amorenoz@redhat.com \
--cc=i.maximets@ovn.org \
--cc=jv@jvosburgh.net \
--cc=netdev@vger.kernel.org \
--cc=pradeep@us.ibm.com \
--cc=pradeeps@linux.vnet.ibm.com \
--cc=wilder@us.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox