Я ползаю в Интернете около 5 часов и не могу найти решение своей проблемы:
Моя компания разрабатывает обучающую игру, и я пишу для нее средство автоматического обновления, используя Моноторрент. Игра будет использоваться в школах, но поскольку в большинстве школ очень слабое подключение к Интернету, в сети должен быть только один компьютер, который загружается с httpseeder, а остальные должны загружаться с одного компьютера, который загружается с httpseed.
Итак, я получаю множество IP-адресов от трекера, и мне нужно отфильтровать только те, которые находятся в локальной сети.
Конечно, школы иногда довольно строги с брандмауэрами, и между некоторыми будет множество маршрутизаторов и коммутаторов. компьютеры в школе.
Я уже пробовал большинство решений, таких как
NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface iface in interfaces)
{
IPInterfaceProperties properties = iface.GetIPProperties();
foreach (UnicastIPAddressInformation address in properties.UnicastAddresses)
{
Console.WriteLine(
"{0} (Mask: {1})",
address.Address,
address.IPv4Mask
);
}
}
или аналогичные методы, доставляют только информацию о маршрутизаторе / коммутаторе / о чем угодно.
Итак, вкратце, я хочу сделать следующее: проверьте, доступен ли данный IP-адрес через локальную сеть.
Буду очень признателен за любую помощь, потому что эта функция остается последней:)