우분투 인스턴스에 dnsmasq DNS 서버를 설치하고 구성에 도메인 이름을 추가했습니다. 도메인 이름을 확인하는 것과 동일한 방식으로 알 수 없는 호스트를 확인한다는 점을 제외하면 잘 작동합니다.
내 구성은 다음과 같습니다.
/etc/dnsmasq.conf
# domain name
domain=example.com
local=/example.com/
address=/example.com/127.0.0.1
listen-address=127.0.0.1
/etc/호스트
127.0.0.1 localhost
172.217.16.195 www.google.com
10.10.1.x testhost
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
"example" 인스턴스에 nginx 서버를 설치했으므로 포트 80에 GET 요청을 보낼 때 기본 페이지가 표시될 것으로 예상하며 이는 계획대로 작동합니다.
curl example.com
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
...
"testhost" 인스턴스에 "hello world"를 반환하는 간단한 서버를 설치했는데 이것도 잘 작동합니다.
curl testhost.example.com
hello world
그러나 존재하지 않는 호스트를 요청하면 "예제" 호스트로 리디렉션됩니다.
curl random-string-asfasfasfasf.example.com
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
...
이 동작을 방지하려면 어떻게 해야 합니까?