There are 32 possible values (0-31) for each of the 6 stats, which makes it 1 in 32^6 or 1 in 1,073,741,824!
However, you could reduce this when breeding if one of the parent's stats is already 31 by making it hold a power item to guarantee passing on that stat. That would make it a mere 1 in 33,554,432.
If you for some reason already had 2 Pokemon with perfect IVs in every stat, that would guarantee 3 of the baby's IVs would be 31 (3 random stats are passed down). So the chances for the remaining 3 would be 1 in 32,768, still pretty unlikely.