Во-первых, я не очень разбираюсь в DNS, поэтому, возможно, ответ на этот вопрос очень очевиден, извините в любом случае.
Я хочу следующее: запись DNS, которая перехватывает все несуществующие поддомены на моем сайте и связывает их с внешним адресом моего сайта.
Итак, не на мой внутренний IP-адрес, а на мое внешнее имя хоста. Я использую CloudFlare и хочу скрыть IP своего сервера для публики, установив его за CloudFlare. При выполнении пинга затем выводится IP-адрес CloudFlare.
Примеры:
www.example.com -> www.example.com
existing-subdomain.example.com -> existing-subdomain.example.com
non-existing-sub.example.com -> www.example.com (and NOT the internal IP)
Итак, когда кто-то пытается получить IP-адрес с помощью tracert или http://www.hcidata.info/host2ip.cgi например они бы не увидеть мой IP.
Это не обязательно должно указывать на мою домашнюю страницу, я был бы очень рад, если бы просто не было возможности увидеть IP-адрес моего сервера через такие несуществующие поддомены.
Если вы используете BIND или аналогичный DNS-сервер:
В вашем DNS создайте A
записать как следует
* IN A < External IP >
Если ваш внешний IP-адрес 1.2.3.4, строка будет ТОЧНО, как показано ниже
* IN A 1.2.3.4
Если вы хотите указать на имя хоста, используйте следующее (не забудьте поставить точку / точку '.' в конце полного имени хоста)
* IN CNAME www.google.com.
DNS-сервер ответит с этим IP-адресом для всех неопределенных хостов / поддоменов.
Если вы используете DNS-сервер Windows
Создайте запись хоста с именем хоста '*' и внешним IP-адресом.
PS: Хотя вышеприведенное позволяет достичь желаемого, в нормальной ситуации запрос DNS к несуществующему хосту / субдомену не должен возвращать какой-либо IP-адрес.