IP2Location – import pełnych zakresów IPv4
Przetłumaczone automatycznie z angielskiego. Przeczytaj oryginał
IP2Location to baza adresów IP, w której znajdziesz najnowsze powiązania adresów IP z lokalizacjami. Pełny zakres IPv4 to 4 294 967 296 adresów, czyli 32 bity. IP2Location zawiera 4 291 944 710 adresów, czyli nieco mniej. Jednak aż 608 487 295 adresów nie ma przypisanej lokalizacji. Wynika to z następujących zakresów:
- 0.0.0.0/8 (lokalne)
- 10.0.0.0/8 (klasa A)
- 100.64.0.0/10 (współdzielone)
- 127.0.0.0/8 (host)
- 169.254.0.0/16 (link-local)
- 172.16.0.0/12 (klasa B)
- 192.0.0.0/24 (dual-stack)
- 192.0.2.0/24 (dokumentacja itp.)
- 192.88.99.0/24 (zarezerwowane, IPv6 do IPV4)
- 192.168.0.0/16 (klasa C)
- 198.18.0.0/15 (benchmarking)
- 198.51.100.0/24 (dokumentacja itp.)
- 203.0.113.0/24 (dokumentacja itp.)
- 224.0.0.0/4 (multicast, klasa D)
- 233.252.0.0/24 (dokumentacja itp.)
- 240.0.0/4 (zarezerwowane, klasa E)
- 255.255.255.255/32 (broadcast)
Powyższe nie powinny mieć przypisanej lokalizacji, ponieważ są to specjalne zakresy IPv4. Liczba adresów IPv4 o prawidłowym zastosowaniu komercyjnym (a także niekomercyjnym) powinna więc wynosić w okolicach 3 683 457 415, czyli wszystkie adresy minus adresy bez lokalizacji. Opracowany przez DARPA protokół IPv4 wystartował w 1981 roku, a jego pula wyczerpała się w 2011 roku.
Jak to się ma do baz danych Cassandra? #
Pełne 3,6 mld adresów waży ok. 40 GB danych w pojedynczym węźle Apache Cassandra 5.0. Na zwykłym sprzęcie z Intel i5 10200H i dyskiem NVME Western Digital SN530 możemy uzyskać do 29 tys. insertów na sekundę. Z obliczeń wynika, że pełny import powinien zakończyć się w ciągu 35 godzin. Gdybyśmy jednak użyli wielu węzłów Cassandry do rozłożenia zapisów, najprawdopodobniej byłoby to znacznie szybsze. Powiedzmy, że osiągnęlibyśmy 100 tys./s – wtedy czas importu wyniósłby 10 godzin. Przy 1 mln/s trwałoby to tylko godzinę.