Personally, I've had good luck with "Herculiner Bed Liner". I re-did the underside of my Trans AM with this stuff (including the wheel wells) and it has a nice rich black after years. I have Raptor bed liner on my truck, I really like it as a paint job (its a work truck), but wouldn't want to use it as an undercoating. It isn't very "rubbery"
Prep is going to be important, make sure to really get any loose liner off and give the area a good/great scuffing with sandpaper/wire wheel. You really want to scratch up the surface before putting any undercoating on. After scuffing the surface, give it a very good clean with a degreaser before allowing it 24 hours to dry out.
Like Buckaroo said, if done improperly you can trap moisture behind it which will quickly lead to rot - by the time you see it, its too late. You really need to make sure you prep the area correct.
I also have no relationship with Herculiner. It was cheap and available so I picked it.