개인 DNS 주소를 확인하기 위해 개인 네트워크에 OpenVPN 서버와 DNS 서버를 설정했습니다.
OpenVPN 서버의 클라이언트 DNS 구성에 개인 DNS 주소를 설정했습니다. Android, Ubuntu 및 Raspbian을 실행하는 세 개의 클라이언트가 있습니다.
Android 및 Ubuntu 클라이언트는 개인 서버를 사용하는 것 같습니다. 최소한 개인 이름을 확인할 수 있습니다. 그러나 이는 Raspbian 클라이언트에서는 작동하지 않습니다. 개인 주소를 확인할 수 없으며 nslookup
VPN의 원격 측이 아닌 클라이언트 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 서버 자체 서브넷의 쿼리만 허용합니다.
이 두 가지 변경 사항을 통해 이제 개인 이름을 확인할 수 있습니다.