Snap bones to uneven surface.

So, I’ve been looking for a way to get my character to move on uneven terrain and have the bones snap to the floor for a while now but I can’t seem to find it. I would appreciate any help with this.