MSDN.WhiteKnight - Stack Overflow answers
Ответ на "Как определить IP-адрес любого компьютера во внутренней сети, зная список IP-адресов данного узла?"
Answer 982419
Никак. У компьютера нет никакого "IP-адреса во внутренней сети", IP-адрес - это свойство интерфейса, а не компьютера. Компьютер может иметь любое число интерфейсов, в том числе, смотрящих в одну сеть (хотя такая конфигурация на практике бессмысленна) или смотрящих в разные сети, каждая из которых имеет маршрут до вашего сервера. Строка
Dns.GetHostEntry(Dns.GetHostName())
никак не решает эту задачу. По сути, она просто возвращает IP-адрес текущего компьютера, как его видит DNS-сервер. Это, с высокой вероятностью, не то, что вам нужно (зачем вообще приплетать DNS?)Для частного случая, когда компьютер имеет только один физический интерфейс, можно воспользоваться решением отсюда: https://ru.stackoverflow.com/a/830696/240512 и взять первый IP-адрес из коллекции, возвращенной методом
GetIpAddresses()
.
Content is retrieved from StackExchange API.
Auto-generated by ruso-archive tools.