Во время развертывания я выполняю DNS-регистрацию и затем проверяю, что она действительно работает, используя Dns.GetHostEntry Method .
Например, предположим, что мой Source
равен cdn-my-source.net
, а мой Target
- cdn-my-source.edge.net
.Я бы выполнил следующую операцию и счел бы мою регистрацию успешной, если она вернула true:
var sourceEntry = Dns.GetHostEntry(source);
if (sourceEntry.HostName.Equals(target, StringComparison.OrdinalIgnoreCase)) {
// success!
}
Я использую Akamai в качестве поставщика CDN, и у меня есть контроль над тем, кем я хотел бы быть Source
, иTarget
имена.Однако, если я введу любое из этих имен в такой инструмент, как nslookup
, вместо этого я получу имя, которое Akamai генерирует за кулисами (пока не смог найти API для него).
Итаквышеприведенная проверка не работает, потому что я не могу знать, что такое HostName
моего источника, пока CDN не будет создан, и даже тогда он является случайным.
Есть ли способ, используя C #,для меня, чтобы получить все псевдонимы, которые разрешают к названному имени?Таким образом, я могу сказать, что если мой Source
также связан с псевдонимом (мой Target
), то я могу гарантировать, что регистрация прошла успешно.