private List<HostName> GetIpList(Tuple<HostName, HostName> seip)
{
List<HostName> ipa = new List<HostName>();
string[] startIPString;
byte[] startIPBytes =
new byte[4];
try
{
startIPString = seip.Item1.DisplayName.Split(".".ToCharArray());
startIPBytes[0] = Convert.ToByte(startIPString[0]);
startIPBytes[1] = Convert.ToByte(startIPString[1]);
startIPBytes[2] = Convert.ToByte(startIPString[2]);
startIPBytes[3] = Convert.ToByte(startIPString[3]);
}
catch
{
return ipa;
}
string[] endIPString;
byte[] endIPBytes =
new byte[4];
try
{
endIPString = seip.Item2.DisplayName.Split(".".ToCharArray());
endIPBytes[0] = Convert.ToByte(endIPString[0]);
endIPBytes[1] = Convert.ToByte(endIPString[1]);
endIPBytes[2] = Convert.ToByte(endIPString[2]);
endIPBytes[3] = Convert.ToByte(endIPString[3]);
}
catch
{
return ipa;
}
if (startIPBytes.Length == 4 && endIPBytes.Length == 4)
{
int s0 = startIPBytes[0];
while (s0 <= endIPBytes[0])
{
int s1 = startIPBytes[1];
while (s1 <= endIPBytes[1])
{
int s2 = startIPBytes[2];
while (s2 <= endIPBytes[2])
{
int s3 = startIPBytes[3] + 1;
while (s3 < endIPBytes[3])
{
ipa.Add(new HostName(s0 + "." + s1 + "." + s2 + "." + s3));
s3++;
}
s2++;
}
s1++;
}
s0++;
}
}
return ipa;
}
}