2022年8月11日木曜日

PHPでIPv6の逆引きみたいな事をする

昨今のレンタルサーバもモバイル回線キャリアもデフォでIPv6になってきた・・・

ホスト判定してる物が、正しく動かないので困る。


IPv6は事実上、逆引きできない。

10年以上前に逆引きできるようにするってアメリカ人が言ってたのに・・・


https://www.radb.net/


<案1 上流でwhoisしてみる>

IPv6のアドレスから地域別のapnicとかianaに問い合わせる。

https://www.iana.org/assignments/ipv6-unicast-address-assignments/ipv6-unicast-address-assignments.xhtml

国の割り当てが変わる度に、問い合わせ先が変わるので注意。


正にこれ!

https://blog.ver001.com/php-ipv6-whois-gethosrbyaddr/


descrに会社名が入るので、それで判別。

地域別のwhoisに問い合わせる手段もあるが、それだとASNが判らない。

ASN2527:So-net

https://www.nic.ad.jp/ja/ip/as-numbers.txt

googleとか複数のASN持ってるので、ASNで判断するのは無しで!


<案2 辞書を持つ>

GeoLite2のCSVから判定する。

1ヶ月に1回データ更新の必要があるけど、無駄な通信しないのは良い。

ただし、辞書が23Mぐらいあって意外と大きい。

これ走査させるのか・・・どうなんだろ・・・

参考

https://blog.jtc-i.co.jp/2022/04/ssb-csvexport-geoip2lite.html




0 件のコメント:

コメントを投稿