Фатальные ошибки при попытке к чтению-записи к таблице являются доказательством в большинстве случаев, с которыми я столкнулся.
Кроме того, EXPLAIN
только обеспечивает предполагаемое количество строк, таким образом, я не обязательно рассмотрел бы EXPLAIN
вывод с неожиданным количеством строк читал/возвращал как признак повреждения таблицы.
Почему бы не использовать один файл зоны в BIND?
Вы создаете файл зоны с именем virtual_hosts
и размещаете записи A, записи MX и т. Д. там. Затем в файле named.conf
вы указываете каждому "простому" домену один и тот же файл зоны.
zone "domainx.com" IN {
type master;
file "virtual_hosts";
allow-update { none; };
};
zone "domainy.com" IN {
type master;
file "virtual_hosts";
allow-update { none; };
};
zone "domainz.com" IN {
type master;
file "virtual_hosts";
allow-update { none; };
};
Если у вас много зон и / или записей, вам может быть лучше использовать API-интерфейсы для их реализации, чем обрабатывать их все вручную через веб-интерфейсы.
У большинства авторитетных поставщиков DNS есть Доступны API. ( Пример , Пример , Wiki-страница .)
используйте подстановочный знак (*) для записей, указывающих на один и тот же IP-адрес
Таким образом, test.com будет вашим доменом:
$ORIGIN test.com.
* A 1.1.1.1
В этом случае каждый субдомен будет иметь запись A 1.1.1.1 в том числе www
Но я читал, что domainx.com -> CNAME -> myserver.com - это зло
CNAME - это не зло. Однако использование CNAMES для домена второго уровня нарушит работу DNS для этих доменов. Вы не можете добавить MX, TXT или какие-либо другие записи на том же уровне, что и запись CNAME. Из rfc1912 :
Запись CNAME не может сосуществовать с любыми другими данными. В
другими словами, если suzy.podunk.xx - это псевдоним для sue.podunk.xx, вы
не может также иметь запись MX для suzy.podunk.edu, запись A или
даже запись в формате TXT. Особенно не пытайтесь комбинировать CNAME и NS
записи
Технически это может сработать, но смешивание CNAMES с другими записями может сбить с толку другие DNS-серверы, что приведет к странным сбоям и станет головной болью администратора.
Хотя CNAME для доменов - зло, существует малоизвестное имя DNAME, которое будет делать в значительной степени именно то, что вы хотите (и предназначено именно для этого). Если также позволит переопределить определенные записи в поддоменах (например, текстовые записи spf и т. Д., Если вам нужно) - см. Этот вопрос и мой ответ для примера.