From: David Ahern <dsah...@gmail.com> Date: Thu, 1 Aug 2019 22:16:00 -0600
> On 8/1/19 10:13 PM, Hangbin Liu wrote: >> On Thu, Aug 01, 2019 at 01:51:25PM -0600, David Ahern wrote: >>> On 8/1/19 2:29 AM, Hangbin Liu wrote: >>>> Jianlin reported a bug that for IPv4, ip route get from src_addr would fail >>>> if src_addr is not an address on local system. >>>> >>>> \# ip route get 1.1.1.1 from 2.2.2.2 >>>> RTNETLINK answers: Invalid argument >>> >>> so this is a forwarding lookup in which case iif should be set. Based on >> >> with out setting iif in userspace, the kernel set iif to lo by default. > > right, it presumes locally generated traffic. >> >>> the above 'route get' inet_rtm_getroute is doing a lookup as if it is >>> locally generated traffic. >> >> yeah... but what about the IPv6 part. That cause a different behavior in >> userspace. > > just one of many, many annoying differences between v4 and v6. We could > try to catalog it. I think we just have to accept this difference because this change would change behavior for all route lookups, not just those done by ip route get.