Найти правильный IP-адрес, возвращенный Dns.GetHostEntry - PullRequest
2 голосов
/ 23 июня 2011

Предположим, что в одной сети есть 2 компьютера с именами com1 и com2.

На com1, если я позвоню

Dns.GetHostEntry("com2")

, то достаточно точно, он возвращает только 1 IP-адрес, как 192.168.1.2, который я мог бы использовать для связи с com2.Однако, если я позвоню

Dns.GetHostEntry("com1")

, он вернет все IP-адреса (192.168.1.1 (тот, который я хочу), а также другие адреса, такие как 169.254.100.50 (vm address, Iнужно отфильтровать это))

Вопрос в том, как я могу получить уникальный "реальный" IP-адрес для com1 в этом случае?

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 23 июня 2011

Этот вопрос и ответы могут предоставить некоторую полезную информацию для получения «правильного» IP-адреса.

1 голос
/ 21 сентября 2011

После некоторых исследований на этот вопрос трудно ответить. Если «com1» имеет несколько сетевых адаптеров, трудно определить, какой сетевой адаптер используется для связи с «com2», я обнаружил эту ссылку SO , чтобы получить адрес сетевых карт, подключенных к Интернету, адрес виртуальной машины будет не подключаться к Интернету. Очевидно, что самому запросу «com1» выяснить, какую сетевую карту он использует для подключения к «com2», сложно, лучше вместо этого спросить «com2».

0 голосов
/ 23 июня 2011

Хорошо, тогда вы можете проверить настройки брандмауэра "com2" или проверить его, выключив.

...