On Tue, 6 Mar 2018 13:30:05 -0700
David Ahern <dsah...@gmail.com> wrote:

> On 3/6/18 3:10 AM, Stefano Brivio wrote:
> > Currently, administrative MTU changes on a given netdevice are
> > not reflected on route exceptions for MTU-less routes, with a
> > set PMTU value, for that device:
> > 
> >  # ip -6 route get 2001:db8::b
> >  2001:db8::b from :: dev vti_a proto kernel src 2001:db8::a metric 256 pref 
> > medium
> >  # ping6 -c 1 -q -s10000 2001:db8::b > /dev/null
> >  # ip netns exec a ip -6 route get 2001:db8::b
> >  2001:db8::b from :: dev vti_a src 2001:db8::a metric 0
> >      cache expires 571sec mtu 4926 pref medium
> >  # ip link set dev vti_a mtu 3000
> >  # ip -6 route get 2001:db8::b
> >  2001:db8::b from :: dev vti_a src 2001:db8::a metric 0
> >      cache expires 571sec mtu 4926 pref medium
> >  # ip link set dev vti_a mtu 9000
> >  # ip -6 route get 2001:db8::b
> >  2001:db8::b from :: dev vti_a src 2001:db8::a metric 0
> >      cache expires 571sec mtu 4926 pref medium  
> 
> Using your test script, I never see the route get an updated MTU -- it
> is always 1426.
> 
> ++ exception='fd00:2::b from :: dev vti_a src fd00:2::a metric 0 expires
> 598sec mtu 1426 pref medium'

Thanks for reporting this.

There's another issue in the test script: the initial PMTU of the
exception depends on the veth MTU value, which I'm not explicitly
setting. It happened to be 5000 on my host, it's a more reasonable 1500
on yours.

If you have 1426 as initial PMTU, by setting the MTU to 3000 as second
step in the script, I'm clearly not decreasing it.

I'll send a v3 of the test script.

-- 
Stefano

Reply via email to