Philipp Hasenfratz: Sucharithmetik IP-Adresse / Wildcard

Beitrag lesen

Halihallo Sascha

für die Abfrage und erstelle einen SELECT, der die IP auf diesen Bereich prüft (BETWEEN
ist dafür möglich). Den unsigned long kannst du ja ziemlich einfach Berechnen (Addition
von Potenzen). Wo genau ist das Problem?
habe zwar nicht den druchblick was Du jetzt meinst mit addition..

War ein IMHO ein schlechter Vorschlag von mir. Zu einer Sucheingabe berechnet man die
"grössste und kleinste IP" (die Addition von Potenzen: 255.255 => 255 + 255*2^8, ...)
und selektiert danach.
Den Vorschlag von Sven mit Maske finde ich jedoch besser, kam mir nicht in den Sinn.
Nun gut, ggf. wäre mein Vorschlag zwar nicht so schön und sicher nicht so flexibel, aber
bei grossen Datenmengen performanter (ein Index über die IP's kann verwendet werden).
Aber Schönheit vor Performance :-)

Vielleicht noch um zu verdeutlichen:

255.127.*.15

Der Intervall:
  255.127.0.15 - 255.127.255.15

255.127.0.15 = 15 + 0*2^8 + 127*2^16 + 255*2^24 = ip_low
255.127.255.15 = 15 + 255*2^8 + 127*2^16 + 255*2^24 = ip_high

=>

... IP BETWEEN ip_low AND ip_high

Viele Grüsse

Philipp

--
RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.