Thema: IP Range

Einzelnen Beitrag anzeigen

Frickeldrecktuxer_TM
(Gast)

n/a Beiträge
 
#2

Re: IP Range

  Alt 19. Mär 2006, 16:23
Zitat von Luckie:
Ich habe zwei IP Adressen: 192.168.2.100 und 192.168.5.100 Jeder Teil der IP Adresse liegt mir als Integer vor. Wie kann ich jetzt alle IP Adressen in diesem Bereich generieren? Ich habe da irgendwie gerade einen Blackout.
kürze sie zu jeweils 4 bytes mache einen integer daraus und lasse von integer1 bis integer2 alle zahlen durchlaufen.
Delphi-Quellcode:
TIP = array[0..3] of Integer;

function makeip(IP: Integer): String;
begin
  result := IntToStr((IP shr 24) and $FF) + '.' + IntToStr((IP shr 16) and $FF) + '.' + IntToStr((IP shr 8) and $FF) + '.' + IntToStr((IP shr 0) and $FF);
end;

ip1_int := ((ip1[0] and $FF) shl 24) or ((ip1[1] and $FF) shl 16) or ((ip1[2] and $FF) shl 8) or ((ip1[3] and $FF) shl 0);
ip2_int := ((ip2[0] and $FF) shl 24) or ((ip2[1] and $FF) shl 16) or ((ip2[2] and $FF) shl 8) or ((ip2[3] and $FF) shl 0);

for i := ip1_int to ip2_int do
begin
  Memo1.Lines.Add(IntToStr(makeip(i));
end;
  Mit Zitat antworten Zitat