네트워킹 설정을 변경하지 않았음에도 며칠 전에 Ubuntu 18.04에서 문제가 발생하기 시작했습니다.
문제는 회사 VPN(OpenVPN)에 연결할 때 "이 네트워크의 리소스에만 이 연결 사용"을 선택하면 해당 VPN 네트워크의 DNS 이름을 확인할 수 없다는 것입니다. 해당 옵션을 비활성화하면 네트워크 내부의 DNS를 확인할 수 있지만 당연히 외부에는 연결할 수 없습니다.
systemd-resolve --status
"이 네트워크의 리소스에만 이 연결 사용"을 비활성화하고 VPN에 연결한 경우 의 출력은 다음과 같습니다 .
Link 10 (tun0)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 10.xxx.xx.xx
DNS Domain: ~.
실제로 DNS 서버가 표시됩니다. 그러나 "이 네트워크의 리소스에만 이 연결 사용"을 다시 켜면 다음과 같습니다.
Link 11 (tun1)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 10 (tun0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
이 질문에 대한 해결책을 시도했습니다openvpn에 연결하면 Ubuntu 18.04에서 DNS 확인이 불가능합니다.하지만 아무것도 작동하지 않는 것 같았습니다.
또한 패키지를 사용해 보았지만 unbound
도움이 되지 않았습니다.
이것도 찾았다Ubuntu 18.04에서 갑자기 VPN 네트워크의 리소스에 액세스할 수 없습니까?그래서 나는 분명히 이것에 혼자가 아니지만 해결책이 없습니다.
해야 할 일을 조금 잃었습니다. 이로 인해 전체 시스템을 다시 설치하고 싶지 않습니다.
답변1
다음 명령으로 문제를 해결했을 수도 있습니다.
nmcli c modify <vpn-settings-name> ipv4.dns-search '<domain>'
<vpn-settings-name>
NetworkManager 설정과 동일해야 합니다 .
지금은 트릭을 수행하는 것 같습니다. 위의 명령을 실행하는 것 외에 부팅 후 아무것도 수정하지 않았으며 이제 systemd-resolve --status
VPN 네트워크에 대한 올바른 DNS가 표시됩니다.
다른 사람이 같은 문제로 어려움을 겪는 경우를 대비해 해결책을 게시하고 싶었습니다.
답변2
나는 다음을 발견했습니다.
"이 네트워크의 리소스에만 이 연결 사용"을 선택하면 질문에 따라 DNS가 없습니다.
선택을 취소하면 중복된 기본 경로가 있는 것이므로 일단 삭제하면 DNS를 포함한 모든 것이 작동합니다.
이 두 시나리오 의 결과를 비교하여 systemd-resolve --status
다음을 발견했습니다.
DNS가 작동했지만 옵션이 중복 경로를 생성한 경우 다음이 표시됩니다.
DNS Domain: ~.
corporate-network.local
DNS가 작동하지 않으면 다음과 같이 표시됩니다.
DNS Domain: corporate-network.local
따라서 해결책은 "이 네트워크의 리소스에만 이 연결 사용" 상자를 선택하고 ~.
추가 DNS 도메인으로 입력하는 것입니다.
이제 허위 기본 게이트웨이를 삭제하고 모든 내부 DNS를 확인하지 않고도 네트워크 관리자에서 직접 연결이 작동합니다.
답변3
아직 가져오지 않았다면 원본 .ovpn 파일을 다시 가져오세요. VPN의 DNS 서버가 에 표시되지 않는 비슷한 문제가 발생했지만 systemd-resolve --status
Network Manager에서 .ovpn 파일을 다시 가져오면 문제가 해결되었습니다.
답변4
nmcli c modify "Put your VPN Name Here" ipv4.dns-search ~.
명령줄에 입력 하고 VPN 연결을 다시 시작하면 효과가 있었습니다.