私は現在Maxmind Geolite
データベースを使用しています。GEO_IP_CITY_BLOCKS_0
列が存在するという名前のテーブルが1つあります-
START_IP_NUM END_IP_NUM LOCATION_ID
上記の表のサンプルデータ-
7602176 7864319 16
16777216 16777471 17
私が知っている、私がIPアドレスを探しているなら、私はそのIPアドレスをlongに変換する必要があります。つまり、MySqlで以下のクエリを使用して取得しLOCATION_ID
、さらに検索して取得するLOCATION_ID
ことができます。 - City
State
SELECT * FROM `GEO_IP_CITY_BLOCKS_0` WHERE INET_ATON("174.36.207.186") BETWEEN start_ip_num AND end_ip_num
今私の質問は-
- あるとすると
IP Address
、no range
LOCATION_IDを正しく取得できませんか?そして、LOCATION_IDがないので、それ以上のルックアップを行うことはできませんか? - そして、これらはどのよう
START_IP_NUM
にEND_IP_NUM
決定され、どのような要因で意味が決定されMaxmind database
ますか?
私がこれを求めている理由はIP Address
、MySql Maxmindデータベースに範囲がない場合、私が考えていたのは、自分の範囲を作成し、他のソースからのそのIPアドレスに対応するデータをMySqlデータベース(Maxmind)に配置することです。
何らかの理由でMaxmindにその特定のIPアドレスのデータがない場合、誰かがそこに自分datasets
でデータを入力しようとしましたか?Maxmind database
感想を聞かせてください。
例えば-
このIPアドレスの場合と同じように、このSQLを実行して試した105.160.159.59
ので、範囲がありません。Maxmind database
SELECT * FROM GEO_IP_CITY_BLOCKS_0 WHERE INET_ATON("105.160.159.59") BETWEEN start_ip_num AND end_ip_num
しかし、同じIPアドレスの場合、他のソースからデータを取得できるので、私が探しているのは、上記で説明した同様のユースケースのMaxmindデータベースにデータセットを入力する方法はありますか?