It looks like on Windows, OpenVPN ignores the MTU it's supposed to be
using and just queries the TAP driver for its MTU.

I suspect this was done in the past because there was no way to *set*
the MTU that Windows was expected to use.

That is no longer the case; recent versions of Windows let you do it by:
netsh interface ipv[46] set subinterface $DEVICE mtu=$MTU store=active

I do this in OpenConnect on Windows, and I suspect OpenVPN should too.

I'm left with the question of what to do on older versions of Windows
where we can't configure the MTU. One option which occurs to me is that
we could actually send Windows back an ICMP 'too big' message when it
receives a packet which is larger than the VPN MTU. This is horrid, but
hey, it's Windows. We *already* do horrider things in TAP-Windows to
fake ARP and ND.

What do you think?

-- 
dwmw2

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to