I've used acrylic rods and silicone. In my opinion, that works the best because it gives you two forms of stability, instead of one by just using either alone. I personally wouldn't recommend using any type of silicone or any type of epoxy by ITSELF.. unless you were doing smaller rock structures. When you make larger structures made up of a few rocks.. it will be pretty heavy so you wan't those rocks to be as stable as possible. Any falling over or tipping and it could crash in to the tank walls.. ya know?
Like i was saying.. i would recommend using either 1/4" or 1/2" acrylic rods, depending on the size of the rocks you are working with.. and then just fill in the gaps with aquarium-safe silicone.. OR aquarium safe epoxy. Either one would do fine.. i just used the silicone because it was easier to apply and a little less messy. And to put the acrylic rods in.. you'll need to get a certain bit, depending on how soft or how hard the rock is. I used a standard black-oxide type bit(1/2 inch) and i my rocks were fiji rocks.. which are pretty soft so i had no troubles drilling in to them. If you had rocks that were less-porous and thicker.. you would need something like a stainless steel bit. Just whatever bit you choose.. make sure you buy it new unless you are 100% sure you've only used it for things like wood. If you've used it to drill through dry-wall.. cement and other things.. i would advise on spending the 3 or 4$ for a new bit.. not that expensive at all. Especially if you buy on online. I bought 3 drill bits for 4$ on amazon.com
Right now my rock structure are extremely stable and i've had the privilege of testing their strength.. unwillingly of course. They had fallen quite a few times after i've knocked them over. The rocks never broke off or chipped or loosened.. nothing. So that's why i advise going the acrylic rod + silicone route. It's a great idea.