我知道如果IP超出子网掩码+本地IP规则,它只能通过网关访问.问题是我不知道如何使用.NET以编程方式获取本地IP地址,也不知道本地子网掩码.你们中的任何人可以帮助我吗?
我将使用此信息从我的批处理SQL插入队列中挤出最大性能.如果SQL服务器属于同一子网,那么它将使用针对最小延迟优化的算法,否则我将使用针对高延迟优化的算法.
您可以使用System.Net.NetworkInformation命名空间(在.NET 2.0中引入)中的类:
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 ); } }