You cannot make it fully and magically compatible. 128 bits do not fit in 32 bits. They did make it compatible in a whole bunch of ways, like making v4 addresses a subset of v6, and tunnelling v6 through v4, but that seems to have just caused trouble and confused things.