저는 OpenVPN 2.3.11 i686-pc-linux-gnu를 사용하여 원격 VPN 서버에 연결하고 있습니다.
VPN 서버에 연결하고 VPN 서버에서 DNS 이름 서버를 로드하고 싶습니다.
VPN 서버와의 연결이 끊어지면 DNS 설정이 원래 설정으로 되돌아갑니다.
현재 OpenVPN 서버에 연결하여 DNS 설정을 가져올 수 있으므로 VPN의 이름 서버를 통해 이름을 확인할 수 있습니다. 그러나 VPN 연결을 끊은 후에도 로컬 DHCP 서버의 원래 DNS 서버가 아직 설정되지 않았습니다.
resolvconf 및 openresolv를 사용하고 있으며 표준 OpenVPN 구성 파일 config.ovpn에 다음 항목을 추가했습니다.
...
up /etc/openvpn/update-resolv-conf.sh
down /etc/openvpn/update-resolv-conf.sh
...
openvpn을 시작하면 올바른 DNS 서버를 수신할 수 있고 /etc/resolv.conf 파일이 업데이트됩니다. 여기서 AAAA 및 BBBB는 openvpn 터널의 이름 서버입니다.
cat /etc/resolv.conf
# Generated by resolvconf
nameserver A.A.A.A
nameserver B.B.B.B
이제 openvpn 연결을 끊고(CTRL-C) 네트워크 서비스를 다시 시작하려고 하면 /etc/resolv.conf가 원래 DNS 설정으로 업데이트되지 않습니다. /etc/resolv.conf를 원래 DHCP 설정으로 복원하지 못한 채 다음 명령을 다른 순서로 시도했습니다.
service networking restart
dhclient -r eth0
dhclient eth0
이 문제를 해결하는 방법에 대한 아이디어를 주시면 감사하겠습니다.
추신: 해결 방법으로 원본 DNS 서버를 사용하여 /etc/resolv.conf 파일을 다시 작성했는데, 이는 우아하지도 않고 쓰기 솔루션처럼 보이지도 않습니다.