how to prevent dhclient from replacing /etc/resolv.conf

simple. just do:

[root@kangaroo-q1 ~]# cat > /etc/dhclient.conf
interface "eth0" {
        supersede domain-name "example.com foo.example.com";
        supersede domain-name-servers 10.0.0.8, 10.0.0.9;
        request subnet-mask, broadcast-address, time-offset, routers;
        require subnet-mask;
        script "/sbin/dhclient-script";
}