Итак, насколько я понимаю, у меня все части, а именно DNSmasq и OpenVPN, работают нормально, хотя и независимо друг от друга. Что я сделал?
0.0.0.0
в файле /etc/hosts
, и когда я это сделал nslookup thatdomain.com
,Я получаю ответ 0.0.0.0
В настоящее время это мой/etc/openvpn/server/server.conf
local 134.122.60.252
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-crypt tc.key
topology subnet
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS 10.8.0.1"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
verb 3
crl-verify crl.pem
explicit-exit-notify
duplicate-cn
И единственное изменение, которое я сделал в файле /etc/dnsmasq.conf
по умолчанию, это раскомментировать и указать интерфейс этой строки:
interface=tun0
Где мне нужна помощь?
Как заставить OpenVPN использовать DNSmasq для всех DNS-запросов. Я просто не могу найти четкого ответа, как этого добиться, какой из файлов изменить и что добавить.
Я пропустил какие-либо шаги?
Править:С приведенной выше конфигурацией, когда я подключаюсь по ssh к серверу openvpn (, dnsmasq запускается также на том же сервере ), и я делаю
nslookup google.com 10.8.0.1
, он разрешается правильно
. Когда я делаю nslookup blockthis.com 10.8.0.1
, он разрешается правильно 0.0.0.0
, как и ожидалось, как указано в файле /etc/hosts
.
Проблема в том, что когда я подключаюсь от клиента к openvpn, почему-то openvpn не передает разрешение dns в dnsmasq, хотя строка interface=tun0
включена в dnsmasq, а netstat -plunt
указывает, что порт 53 запущен и работает, прослушивается dnsmasq.