Как получить DNS-имя в среде балансировки нагрузки? - PullRequest
3 голосов
/ 09 марта 2011

У меня 4 сервера, участвующих в среде балансировки нагрузки. Одно и то же приложение ASP.NET размещается на каждом сервере. Я хотел бы получить имя DNS независимо от основного сервера. Какой из следующих ответов даст правильный ответ?

Request.Url.Host
Environment.MachineName
System.Net.Dns.GetHostName() 

Спасибо за ваше предложение!

Ответы [ 2 ]

3 голосов
/ 09 марта 2011

Вы можете попробовать Request.Url.GetLeftPart(UriPartial.Authority). Так, например, если URL-адрес запроса http://www.contoso.com/index.htm?date=today, он вернет http://www.contoso.com.

0 голосов
/ 09 марта 2011

Первый.На самом деле, это ЕДИНСТВЕННЫЙ, который даже смутно актуален.

  • Environment.MachineName может быть тем, что вы хотите - никто не говорит, что он должен быть раскрыт через DNS.Особенно в среде хостинга.
  • System.Net.Dns.GetHostName - вернет имя хоста машины, не знаю, как.

Anyhjoe, оба не могут быть тем, что естьиспользуется для доступа к машине.Это в значительной степени Url.Host только часть, поскольку это пришло через запрос.

...