bitlvl
SR

Konvertor IP u heks

Unesite IPv4 adresu sa tačkama da je dobijete kao jedan 32-bitni heks broj (0xC0A80101) i kao četiri heks bajta (C0 A8 01 01), ili unesite heks vrednost da dobijete adresu sa tačkama. Decimalni, binarni i oktalni oblik dolaze uz to.

  

Rezultati i poruke ovog alata prikazuju se na engleskom.

IPv4 adresa je 32-bitni broj

Poznati oblik sa tačkama su samo četiri bajta zapisana decimalno. 192.168.1.1 su bajtovi C0 A8 01 01, koji pročitani kao jedan big-endian 32-bitni broj daju 0xC0A80101 = 3.232.235.777. Svaki oktet se množi stepenom broja 256: 192×256³ + 168×256² + 1×256 + 1.

  1. Uzmite oktete redom: a, b, c, d.
  2. Izračunajte a×16.777.216 + b×65.536 + c×256 + d.
  3. Za obrnut smer, uzastopno delite sa 256 i zadržavajte ostatke (ili pomerajte udesno za 8 i maskirajte sa 255).

Gde se koristi celobrojni oblik

  • Baze podataka: MySQL INET_ATON() / INET_NTOA() i PostgreSQL tip inet čuvaju i indeksiraju adrese kao brojeve da bi upiti po opsegu (ip BETWEEN start AND end) bili brzi. GeoIP tabele koriste isti trik.
  • Programiranje: inet_aton u C-u, ip2long u PHP-u, int(ipaddress.ip_address(x)) u Pythonu, binary.BigEndian.Uint32(ip.To4()) u Go-u.
  • Liste pristupa i firewall-i, koji broj porede sa maskom.

Neobični oblici koje pregledači prihvataju

Pošto je adresa broj, i http://3232235777/ i http://0xC0A80101/ u većini pregledača vode na 192.168.1.1, a 192.168.257 se tumači kao 192.168.1.1 (poslednji deo se preliva u prethodni oktet). To je klasičan način da se adresa sakrije u phishing linku, i razlog da se unos strogo proverava, kao što ovaj alat radi.

Pitanja

Koliko iznosi 192.168.1.1 kao ceo broj?

3.232.235.777 decimalno, 0xC0A80101 heksadecimalno. Dobija se iz 192×256³ + 168×256² + 1×256 + 1.

Zašto bih čuvao IP adrese kao cele brojeve?

Ceo broj zauzima 4 bajta umesto do 15 znakova, sortira se u mrežnom redosledu i omogućava da pripadnost opsegu proverite sa dva poređenja. Većina GeoIP i firewall podataka čuva se tako.

Koji je najveći IPv4 ceo broj?

4.294.967.295 (2³² − 1), što je 255.255.255.255.

Radi li ovo za IPv6?

IPv6 adrese su 128-bitni brojevi i traže drugi alat: koristite IPv6 kalkulator, koji prikazuje prošireni, sažeti i binarni oblik.

Da li je 192.168.001.001 isto što i 192.168.1.1?

Ne pouzdano. Neki parseri oktet sa vodećom nulom tumače kao oktalni (001 je u redu, ali 010 bi bilo 8). Pišite oktete bez vodećih nula da izbegnete dvosmislenost; ovaj alat ih baš zato odbija.