В любом случае нужно иметь постоянные адреса серверов в DNS, по которым балансировать с помощью DNS, если нужно, и с которых проксировать на главные/резервные сервера, как уже заметили в ответах, но я хочу немного добавить для полноты картины.
Еще нужно учитывать, что клиентские/провайдерские сервера кэшируют запросы, порой очень надолго, поэтому никаких обращений к вашим NS не будет. Кроме того, не ясно, какой длины цепочка из серверов до вас, там по пути могут что попало накэшировать.
Бинд по умолчанию максимально кэширует на неделю, например.
Также я прошелся по
RFC1034 по диагонали, нашел важное: "The order of RRs in a set is not significant, and need not be preserved by name servers, resolvers, or other parts of the DNS." Или: "Since the DNS does not preserve the order of RRs, this function may choose to sort the returned addresses or select the "best" address if the service returns only one choice to the client."
В общем, точно нельзя полагаться на определенный порядок нигде.
Пара примеров:
Например, Гугл использует балансировку: их NS возвращают один адрес с малым TTL (300). Вот реакция разных серверов на это: мой named по умолчанию так и возвращает, и пока TTL не истечет, показывает одну запись; 4.2.2.1 выводит сразу много А записей с разными маленькими TTL; 8.8.8.8 просто не кэширует, отдает по одному адресу, но с разными TTL (тоже маленькими)).
Касательно NS можете попробовать
dig @8.8.8.8 ya.ru NS
и убедиться в том, что порядок любой.