Для поиска проблемы я бы поступал следующим образом:
Посмотрите со стороны клиента куда уходят запросы к DNS
В одном окне терминала (на стороне OpenVPN клиента) запустите:
# tcpdump -i any port 53
В другом окне терминала (на стороне OpenVPN клиента) выполните два запроса:
первый запрос с автовыбором NS сервера
$ nslookup домен
второй запрос адресный прямо на сервер
$ nslookup домен XXX.XXX.XXX.XXX
где XXX.XXX.XXX.XXX адрес NS сервера который через VPN.
Посмотрите какие сервера перебирает первый запрос
и через какой интерфейс и куда улетает второй.
И если проходимость есть (маршрутизация работает верно, firewall пропускает, dns сервер отвечает) то для второго запроса должны получить правильный ответ: IP адрес.
Если же ответа нет то посмотрите не закрыт ли Firewall как на клиенте так и на сервере
# iptables -nvL
Включите более подробные логи для OpenVPN на клиенте и на сервере и проанализируйте их
log /var/log/openvpn.vpn-client1.log
verb 5
mute 20
DNS прописывать руками нет нужды. Вам верно сказали, что со стороны сервера его нужно затолкнуть на клиента
push "dhcp-option DOMAIN domain.local"
Но вы сначала определитесь будете ресолвить все имена с того сервера который вам даёт VPN или только те что внутри домена.
Посмотрите запускается или нет dnsmasq из NetworkManager
# cat /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifcfg-rh
#dns=dnsmasq
dns=none
Не забывайте про SELinux. Временно отключите:
# setenforce 0
По своему опыту скажу, что в Fedora20, на которой я сижу в данный момент, я отказался от использования OpenVPN, iptables и dnsmasq через Network Manager по причине неадекватного поведения. Мой "VPN зоопарк" оказалось проще настроить по старинке.