Как да преведа Ip адрес

Съдържание:

Как да преведа Ip адрес
Как да преведа Ip адрес

Видео: Как да преведа Ip адрес

Видео: Как да преведа Ip адрес
Видео: Настройка IP вручную 2024, Може
Anonim

IP адресът се състои от четири десетични числа, всяко от които може да варира от 0 до 255. Всяко такова число е еквивалентно на двуцифрено шестнадесетично или осембитово двоично число и затова се нарича октет. Тези четири кратки числа понякога трябва да бъдат преведени в едно дълго, когато пишете скриптове.

Как да преведа ip адрес
Как да преведа ip адрес

Инструкции

Етап 1

Умножете първия октет на IP адреса с 16777216 или, еквивалентно, 256 на третата степен. Например, ако говорим за IP адреса 192.168.1.1 (често се среща в малки локални мрежи), след умножаването на числото 192 по 16777216 получавате 3221225472.

Стъпка 2

Умножете второто число по 65536 - толкова получавате, ако вдигнете 256 до втората степен. Например в адреса 192.168.1.1 трябва да умножите 168 по 65536 и ще получите 11010048.

Стъпка 3

Умножете третия октет по 256 на първата степен - т.е. по самото число 256. Ако конвертирате IP адреса 192.168.1.1 в дълга форма, резултатът от това умножение ще бъде 256 * 1 = 256.

Стъпка 4

Оставете четвъртото число непроменено, което е еквивалентно на умножаване по едно. Това се дължи на факта, че ако повдигнете числото 256 (или което и да е друго число) до нулевата степен, ще получите 1. В IP адреса 192.168.1.1 резултатът от умножението ще бъде 1 * 1 = 1.

Стъпка 5

Добавете всичките четири резултата от умножението заедно. За разгледания тук пример сумата ще изглежда така: 3232235777.

Стъпка 6

Когато програмирате в PHP, използвайте готовата функция ip2long, за да преведете IP адрес в дълга форма. Функция, подобна по предназначение, може да бъде съставена и включена в програма или отделен модул на друг език за програмиране.

Стъпка 7

Задачата за превод на IP адрес от дълга форма обратно в кратка се среща много по-рядко. За да направите това, разделете дългия адрес на 16777216 и цялата част от резултата от разделянето става първият октет. Разделете остатъка (не го бъркайте с дробната част) на 65536, за да получите втория октет и т.н. В инженерните калкулатори изчислете модула, както следва: [C] първо число [MOD] второ число [=]. Най-простите калкулатори нямат тази функция.

Стъпка 8

Когато пишете функция за извършване на обратен превод в определен програмен език, използвайте функции за целочислено деление и изчисляване на остатъка от делението. Например в Pascal те се наричат съответно div и mod. Фрагмент от програмата за извършване на такъв превод може да изглежда така:

октет [1]: = longip div 16777216;

nextnumber: = longip mod 16777216;

октет [2]: = следващ номер div 65536;

nextnumber: = nextnumber mod 65536;

октет [3]: = nextnumber div 256;

октет [4]: = nextnumber mod 256;

Препоръчано: