Hoe Een Ip-adres Te Vertalen

Inhoudsopgave:

Hoe Een Ip-adres Te Vertalen
Hoe Een Ip-adres Te Vertalen

Video: Hoe Een Ip-adres Te Vertalen

Video: Hoe Een Ip-adres Te Vertalen
Video: Using nslookup to resolve domain names to ip addresses 2024, November
Anonim

Een IP-adres bestaat uit vier decimale getallen, die elk kunnen variëren van 0 tot 255. Elk zo'n getal is gelijk aan een tweecijferig hexadecimaal of acht-bits binair getal en wordt daarom een octet genoemd. Deze vier korte nummers moeten soms worden vertaald in één lang bij het schrijven van scripts.

Hoe een ip-adres te vertalen
Hoe een ip-adres te vertalen

instructies:

Stap 1

Vermenigvuldig het eerste octet van het IP-adres met 16777216, of equivalent, 256 tot de derde macht. Als we het bijvoorbeeld hebben over het IP-adres 192.168.1.1 (het wordt vaak gevonden in kleine lokale netwerken), dan krijg je na vermenigvuldiging van het getal 192 met 16777216 3221225472.

Stap 2

Vermenigvuldig het tweede getal met 65536 - dat is hoeveel je krijgt als je 256 verheft tot de tweede macht. In het adres 192.168.1.1 moet u bijvoorbeeld 168 vermenigvuldigen met 65536 en u krijgt 11010048.

Stap 3

Vermenigvuldig het derde octet met 256 tot de eerste macht - dat wil zeggen met het getal 256 zelf. Als u het IP-adres 192.168.1.1 naar de lange vorm converteert, is het resultaat van deze vermenigvuldiging 256 * 1 = 256.

Stap 4

Laat het vierde getal ongewijzigd, wat gelijk staat aan vermenigvuldigen met één. Dit komt door het feit dat als je het getal 256 (of een ander getal) tot de macht nul verhoogt, je 1 krijgt. In het IP-adres 192.168.1.1 is het resultaat van de vermenigvuldiging 1 * 1 = 1.

Stap 5

Tel alle vier de vermenigvuldigingsresultaten bij elkaar op. Voor het hier beschouwde voorbeeld ziet het bedrag er als volgt uit: 3232235777.

Stap 6

Gebruik bij het programmeren in PHP de kant-en-klare functie ip2long om een IP-adres om te zetten in een lange vorm. Een functie met een vergelijkbaar doel kan worden samengesteld en opgenomen in een programma of een afzonderlijke module in een andere programmeertaal.

Stap 7

De taak om een IP-adres van een lange vorm terug naar een korte te vertalen, komt veel minder vaak voor. Om dit te doen, deelt u het lange adres door 16777216, en het hele deel van het delingsresultaat wordt het eerste octet. Deel de rest (verwar het niet met het fractionele deel) door 65536 om het tweede octet te krijgen, enzovoort. Bereken op technische rekenmachines de modulus als volgt: [C] eerste getal [MOD] tweede getal [=]. De eenvoudigste rekenmachines hebben deze functie niet.

Stap 8

Wanneer u een functie schrijft voor het uitvoeren van een omgekeerde vertaling in een bepaalde programmeertaal, gebruik dan functies voor het delen van gehele getallen en het berekenen van de rest van de deling. In Pascal worden ze bijvoorbeeld respectievelijk div en mod genoemd. Een fragment van het programma voor het uitvoeren van een dergelijke vertaling kan er als volgt uitzien:

octet [1]: = longip div 16777216;

volgend nummer: = longip mod 16777216;

octet [2]: = volgend nummer div 65536;

volgend nummer: = volgend nummer mod 65536;

octet [3]: = volgend nummer div 256;

octet [4]: = volgend nummer mod 256;

Aanbevolen: