Umrechnen einer IP-Adresse in einen Long-Wert

Um Standortdaten anhand der IP-Adresse aus Datenbanken zu ermitteln, wird meist nicht die Standardform (z.B 192.168.100.23), sondern sie muß in einen Long-wert umgewandelt werden.

Mit Hilfe des folgenden kleinen Code-Schnippsels kannst Du das ganz schnell erledigen:

 

public string Ip
{
  get { return _Ip; }
}

public Int64 LongIP

{

   get

   {

      int i;

      string[] arrDec;

      Int64 num = 0;

      if (_Ip == null)

      {

        return 0;

      }

      else

      {

        arrDec = _Ip.Split('.');

        for (i = arrDec.Length - 1; i >= 0; i--)

        {

          num += Convert.ToInt64(((long.Parse(arrDec[i]) % 256) * Math.Pow(256, (3 - i))));

        }

        return num;

      }

   }

}

 

Currently rated 4.0 by 1 people

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Kostenlose Datenbank mit IP-Standorten

Die amerikanischen Firma Maxmind bietet kostenlose IP-Location-Daten zum Einfügen in eine eigene Datenbank an. Die Daten werden monatlich aktualisiert und decken lt. MaxMind ca. 98% der IP-Adressen weltweit ab.
Dabei werden sowohl Länderdaten, als auch Orte mit ihren Längen- und Breitengraden geliefert.
Die Daten liegen als gepackte Zip-Datei vor und kann hier heruntergeladen werden.

Currently rated 5.0 by 2 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Lokalisierung anhand der IP-Adresse im Internet

Zu Idendifikation eine Internetbenutzer anhand seiner IP-Adresse benötigen Sie folgende Dinge:
1. Die IP-Adresse des Users (Diese ist sehr einfach mit Hilfe von Skripten oder Objekteigenschaften zu ermitteln.
2. Ein Datenbank, die zu dieser IP-Adresse einen geografischen Standort (geografische Länge und Breite und/oder politische Lage) ermitteln kann.
3. Ein Visualisierungwerkzeug (z.B. Google-Maps), um die Position verständlich darzustellen.
Dieser Blog wird sich in der nächsten Zeit, unter anderem, mit diesen Dingen genauer auseinandersetzen.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5