Я пишу программу, которая показывает пользователю свой IP-адрес, маску подсети и шлюз по умолчанию. Я могу получить первые два, но для последнего, это то, что я обнаружил:
GatewayIPAddressInformationCollection gwc =
System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()[0].GetIPProperties().GatewayAddresses;
Это, конечно, возвращает коллекцию GatewayIPAddressInformation
. Итак, если компьютер имеет несколько шлюзов, как я могу определить, какой шлюз по умолчанию?
На практике я только видел, что в этой коллекции содержится одна запись, но поскольку она реализована как коллекция, то понятно, что на некоторых компьютерах есть несколько шлюзов, ни одна из которых не помечена как "По умолчанию". Итак, есть ли способ определить значение по умолчанию или все это просто догадки?