Thank you, I did not test USE_NETBIOS OFF, lately...
Those damned win32 headers !
I had to change (for v1.29.0, that failed to compile otherwise) the includes order so that llwin32headerslean.h is now automatically included by linden_common.h (which gets included in every *.cpp source file), unless llwin32headers.h was included first (the two llwin32*.h header files share the same #define LL_LLWIN32HEADERS_H include guard for this purpose), but sadly nb30.h needs llwin32headers.h (full headers) while iphlpapi.h only needs the "lean" version and since it appears before linden_common.h... The hen and the egg !
So yeah, no elegant way to solve this issue, and your solution (explicit llwin32headerslean.h inclusion for iphlpapi.h) seems the best choice...