OpenVPN 클라이언트는 VPN DNS 서버를 사용하지 않습니다

OpenVPN 클라이언트는 VPN DNS 서버를 사용하지 않습니다

개인 DNS 주소를 확인하기 위해 개인 네트워크에 OpenVPN 서버와 DNS 서버를 설정했습니다.

OpenVPN 서버의 클라이언트 DNS 구성에 개인 DNS 주소를 설정했습니다. Android, Ubuntu 및 Raspbian을 실행하는 세 개의 클라이언트가 있습니다.

Android 및 Ubuntu 클라이언트는 개인 서버를 사용하는 것 같습니다. 최소한 개인 이름을 확인할 수 있습니다. 그러나 이는 Raspbian 클라이언트에서는 작동하지 않습니다. 개인 주소를 확인할 수 없으며 nslookupVPN의 원격 측이 아닌 클라이언트 LAN의 DNS 서버에서 응답이 반환됩니다.

대화형 모드에서 nslookup을 실행하고 서버를 명시적으로 설정하면 쿼리가 구문 분석되어 DNS 쿼리가 차단되지 않고 VPN을 통과할 수 있음을 알 수 있습니다. 문제는 클라이언트가 잘못된 DNS 서버를 쿼리하고 있는 것 같습니다.

Raspbian 클라이언트의 구성은 다음과 같습니다.

client
remote 'vpn.example.org'
ca 'ca.pem'
cert 'cert.pem'
key 'key.pem'
cipher AES-128-CBC
dev tun
proto udp
verify-x509-name 'vpn.example.org'
tls-auth 'hmackey.pem' 1
auth SHA256
nobind
auth-nocache
script-security 2
persist-key
persist-tun

다른 두 클라이언트는 GUI 도구를 사용하여 구성되었으므로 안정적인 구성 파일을 제공할 수 없습니다.

클라이언트가 VPN에서 DNS 서버를 사용하려면 클라이언트 측에서 아무것도 설정해야 합니까?

답변1

~에 따르면이 답변은 서버 오류에 관한 것입니다., 일부 Linux 버전에서는 VPN이 시작되거나 종료될 때 확인자 구성을 업데이트하기 위해 클라이언트 구성에 두 줄을 추가해야 합니다.

up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

또한 VPN의 재귀 쿼리를 허용하도록 내부 DNS 서버를 구성해야 합니다. 기본적으로 일부 서버(예: BIND9)는 DNS 서버 자체 서브넷의 쿼리만 허용합니다.

이 두 가지 변경 사항을 통해 이제 개인 이름을 확인할 수 있습니다.

관련 정보