У нас был сценарий FTP, который обновит каталоги, которые поместили отчеты нашего Клиента в корпус. Сценарий был похож на это...
ftp www.ourcompany.com
cd <ClientsDirectory>/
put *.html ( including index.html )
Таким образом, что происходит, когда <ClientsDirectory> не существует?
Вы получаете индексную страницу клиента как свою домашнюю страницу компаний... Opps
Насколько я знаю, ответ нет - конечно, никакой стандартный путь, так как существует миллиард различных вариантов сервера DNS. Одна опция состояла бы в том, чтобы иметь запись 'masterdns.mydomain.com', гарантируемый содержать IP-адрес ведущего устройства (даже не выставляйте ее, никакая потребность) - затем все, что необходимо сделать, сравнивают IP сервера DNS к IP, который она дает Вам для ведущего устройства, и Вы все установлены. Это также несовершенно из-за искажения / размещение в разных сетях / независимо-от-того,-что-ад (Вы не можете гарантировать, что это - другой сервер), но..
.. Вы, кажется, подразумеваете установку всего этого сами, в этом случае у Вас должна просто быть запись masterdns.mydomain.com.
Нет, нет никакого пути. Протокол DNS не обеспечивает ничего для приобретения знаний основных/ведомых отношений из внешней стороны.
Кроме того, сегодня этого различия часто не стало. Много доменов имеют только ведущие устройства, синхронизируемые на общей базе данных.
Можно использовать эвристику (см. предложения Мааса или используйте увеличение порядковых номеров, сервер имени для увеличения будет ведущим устройством), но они ясно не надежны.
Во-первых, технически сервер DNS является не обязательно исключительно ведущим устройством или ведомым устройством. Это может отличаться на домене доменным основанием. Это могло бы быть ведущее устройство для некоторых доменов и ведомое устройство для других.
Если зона DNS доменного имени настроена правильно - затем можно запросить запись SOA зоны, которая (среди других вещей) содержит имя хоста основного сервера DNS (ведущее устройство).
Например:
C:\>nslookup
Default Server: UnKnown
Address: 192.168.1.1
> set type=SOA
> google.com.
Server: UnKnown
Address: 192.168.1.1
Non-authoritative answer:
google.com
primary name server = ns1.google.com
responsible mail addr = dns-admin.google.com
serial = 1396486
refresh = 7200 (2 hours)
retry = 1800 (30 mins)
expire = 1209600 (14 days)
default TTL = 300 (5 mins)
Можно теперь сделать другой поиск на названии основного сервера (от записи SOA - в этом случае "ns1.google.com"), для получения IP-адреса ведущего устройства:
C:\nslookup ns1.google.com.
Server: UnKnown
Address: 192.168.1.1
Non-authoritative answer:
Name: ns1.google.com
Address: 216.239.32.10
Ответ в этом случае 216.239.32.10
Команда dig -t SOA your-url
вернет официальный сервер в разделе ОТВЕТ, а затем, если хотите, вы можете dig authoritative-server-url
, чтобы иметь IP. Или вы можете использовать host -t SOA your-url
и host authoritative-server-url
для более краткого ответа.