Cyanogenmod 7 OpenVPN DNS not working
I found now a solution myself:

First, cat /etc/resolv.conf isn't a valid way to display the used DNS servers under Android. Use getprop net.dns1 instead.

In my case the DNS server wasn't the Google server as set in /etc/resolv.conf, instead it was one of my ISP which accepts only requests from IPs in its network but my OpenVPN server is in another network.

To solve this issue i just modified /system/etc/dhcpcd/dhcpcd-hooks/20-dns.conf a bit:

# Set net.&lt;iface&gt;.dnsN properties that contain the
# DNS server addresses given by the DHCP server.

set_dns_props()
{
    case "${new_domain_name_servers}" in
    "")   return 0;;
    esac

    count=1
    for i in 1 2 3 4; do
        setprop dhcp.${interface}.dns${i} ""
    done

    count=1
    for dnsaddr in ${new_domain_name_servers}; do
        setprop dhcp.${interface}.dns${count} ${dnsaddr}
        count=$(($count + 1))
    done

    setprop net.dns1 8.8.8.8
    setprop net.dns2 8.8.4.4
}

case "${reason}" in
BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT)       set_dns_props;;
EXPIRE|FAIL|IPV4LL|RELEASE|STOP)                unset_dns_props;;
esac


That will force the phone to always use the Google DNS servers for all connections (e.g. 3G, WiFi, OpenVPN, ...).

I've tested that for a few weeks now and it works perfect.