VPN 유무에 관계없이 DNS 라우팅이 어떻게 작동하는지 이해하려고 노력하고 있습니다. 다음 인터페이스가 있습니다.
Wireless LAN adapter Wi-Fi:
DNS Servers . . . . . . . . . . . : 192.168.40.1
이에 대한 nslookup은 다음과 같이 작동합니다.
nslookup google.com 192.168.40.1
Address: 192.168.40.1
Non-authoritative answer:
Name: google.com
VPN을 실행 중인 경우 다른 인터페이스가 제공되고 DNS 쿼리는 기본적으로 이 인터페이스로 라우팅됩니다.
Unknown adapter Mullvad:
DNS Servers . . . . . . . . . . . : 10.8.0.1
그러나 이제 다른 인터페이스에서 DNS에 쿼리를 시도하면 통과되지 않습니다.
nslookup google.com 192.168.40.1
DNS request timed out.
하지만 내 로컬 서버에 문제 없이 요청을 보낼 수 있습니다.
curl 192.168.40.22:8080
OK
어떻게 작동하나요? IP 트래픽은 통과하지만 DNS가 차단됩니까? VPN은 일반적으로 게이트웨이로 트래픽을 전달하기 위해 라우팅 테이블 규칙을 설정한다는 것을 알고 있습니다. 그런데 그게 ip 맞나요? DNS는 영향을 받아서는 안 됩니다. 이것의 기본 메커니즘은 무엇입니까? 다른 인터페이스에서 DNS 쿼리를 강제할 수 있는 방법이 있습니까?
이것은 Windows에 있지만 내 생각에는 Linux에서도 비슷하게 작동할 것 같습니다.
답변1
간단한 답변:
구성 방법에 따라 VPN 클라이언트는 모든 트래픽을 가상 인터페이스를 통해 강제로 적용합니다.즉, 로컬 LAN의 트래픽을 차단합니다. 로컬 트래픽이 없으므로 클라이언트는 터널이 활성화될 때 다른 이름 서버를 사용할 수 있습니다.
답변2
나는 그리워IP구성어쨌든 두 시나리오 모두에서 VPN이 없으면 로컬 DCHPd에서 IP 및 기본 이름 서버를 얻었으므로 컴퓨터가 로컬 이름 서버에 대한 DSN 확인을 요청할 수 있습니다.
VPN에 연결한 후 VPN 서버에서 다른 IP를 얻었고 기본 경로를 VPN 인터페이스로 설정했다는 소리가 들립니다. 이는 모든 트래픽이 VPN을 통과하므로 로컬 이름 서버에 도달할 수 없음을 의미합니다.
이 문제를 해결하려면 두 네트워크 모두에서 접근할 수 있는 글로벌 DNS 서버(예: 8.8.8.8 또는 1.1.1.1)를 사용할 수 있습니다.