给定一个IP地址开头和结尾,返回在此范围内的所有IP地址列表,VB.Net实现,可以很容易的转换成C#代码
'start and end ip address ,code from www.75271.com Dim startiprange As Net.IPAddress = Net.IPAddress.Parse("192.168.0.0") Dim endiprange As Net.IPAddress = Net.IPAddress.Parse("192.168.255.255") 'reverse address bytes for conversion to integer Dim strtip() As Byte = startiprange.GetAddressBytes Array.Reverse(strtip) Dim endip() As Byte = endiprange.GetAddressBytes Array.Reverse(endip) 'convert Dim ips As UInt32 = BitConverter.ToUInt32(strtip, 0) Dim ipe As UInt32 = BitConverter.ToUInt32(endip, 0) 'then loop from start to end For anip As UInt32 = ips To ipe 'convert to bytes Dim ipbyt() As Byte = BitConverter.GetBytes(anip) 'reverse and create ip address Array.Reverse(ipbyt) Dim ipaddr As New Net.IPAddress(ipbyt) Debug.WriteLine(ipaddr.ToString) Next