C # - сравнить пути UNC - PullRequest
       32

C # - сравнить пути UNC

0 голосов
/ 31 декабря 2018

Есть ли простой способ сравнить пути UNC на равенство?Например, \\server\share равно \\server.domain.com\share?

1 Ответ

0 голосов
/ 31 декабря 2018

Просто взглянув на строку, абсолютно невозможно определить, указывают ли они на один и тот же сервер.

Лучший способ - извлечь часть узла, а затем запросить DNS.

Dns.GetHostAddresses("server");
Dns.GetHostAddresses("server.domain.com");

даст вам два массива IP-адресов для сервера.если два набора идеально совпадают, то они указывают на один и тот же сервер.

Если они этого не делают, это * может означать, что они иногда указывают на одно и то же, а иногда нет (балансировка нагрузки), или на сервере просто есть несколько IP-адресов, и DNS настроен на возврат другого для разныхимя хоста.

IPv4 против IPv6 может быть еще одним уловом, но я очень сомневаюсь, что ваш ИТ-отдел будет стрелять себе в ногу, как это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...