Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.07;
Скачать: CL | DM;

Вниз

кодировка ip адреса   Найти похожие ветки 

 
Sour   (2005-07-19 06:27) [0]

Пришлось работать с уже созданной БД для накопления статистики по трафику. Во всех таблицах ip адрес записывается в поле int(10).

В связи с этим 2 вопроса:
1. Как получить стандартное представление адреса (напр, 192.168.1.1) имеея его в значении int(10) и наоборот?

2. Как можно проверить принадлежность ip адреса некоторому диапазону, если он задан как int(10)?


 
Strech   (2005-07-19 07:32) [1]

ну угадать, как разработчик БД зашифровал IP в int(10) сложно. Можно предположить, что он представил IP в виде строки, удалил все точки и перевел полученный результат в int. Соответственно ответ на первый вопрос - это обратный алгоритм. Ну а второй ответ вытекает из первого


 
wal ©   (2005-07-19 09:55) [2]


> напр, 192.168.1.1

1+1*256+168*265*265+192*256*256*256 = 3232235777
Причем тут int(10)?

С уважением.


 
wal ©   (2005-07-19 09:59) [3]

Ошибочка вышла ...168*256*256...


 
tesseract   (2005-07-19 10:35) [4]

>>1+1*256+168*265*265+192*256*256*256 = 3232235777

1+(1 shl 8)+(168 shl 16)+(192 shl 24)? - раз в н-дцать быстрее


 
Lamer@fools.ua ©   (2005-07-19 10:36) [5]

>>Sour   (19.07.05 06:27)

Телепаты в бессрочном отпуске.

>>tesseract   (19.07.05 10:35) [4]

Уверены?


 
wal ©   (2005-07-19 10:40) [6]


> раз в н-дцать быстрее
Я только принцип показал, а как уж автор считать будет - дело его.
Кстати, еoе быстрее просто положить байты в память в нужной последовательности, а потом прочитать их как DWORD.


 
tesseract   (2005-07-19 10:44) [7]

Для Справки IP-адрес это 32-битное число

To>> Lamer@fools.ua
да промахнулся  работать будет не всегда
лучше oktet:array[1..4] of int32; и писать октеты сюда.


 
wal ©   (2005-07-19 10:47) [8]

oktet:array[1..4] of int32
???


 
Anatoly Podgoretsky ©   (2005-07-19 11:09) [9]

Спасайся кто может.


 
DiamondShark ©   (2005-07-19 12:12) [10]

А кто не может?


 
Anatoly Podgoretsky ©   (2005-07-19 12:17) [11]

Тому вечная память.



Страницы: 1 вся ветка

Текущий архив: 2005.08.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
3-1120047513
Али
2005-06-29 16:18
2005.08.07
Клонирование записи


14-1120473280
АНТИСПАММЕР
2005-07-04 14:34
2005.08.07
Будущее Windows


14-1121320552
Магнум
2005-07-14 09:55
2005.08.07
Иван Иванов и Джон Смит


14-1121716018
KOVKA_A
2005-07-18 23:46
2005.08.07
Я знаю как отдохнуть!


8-1112307304
КанВас
2005-04-01 02:15
2005.08.07
Пишу на TBitMap текст через Canvas Но края округлых букв