I have made a kinda Multitexture setup for my material using "Geometry>Random per Island" node to choose between different textures, and it works just fine, gives me the random distribution of textures which I wanted.
The only issue I have is that it gives me different distribution in viewport and in Render. Both look good so that's fine, except I don't know why is it so.

It looks to me like it has a different "Random per Island" value (seed?). Different but consistent in each render. Or maybe in the viewport "R per I" is calculated for basic mesh and in Render it recalculates for mesh with modifiers applied?