powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как лучше хранить IP адреса
13 сообщений из 13, страница 1 из 1
Как лучше хранить IP адреса
    #35134621
watson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как лучше хранить IP адрес в таблице. Есть ли смысл хранить его в 4-х полях? Чем может быть чреват выбор хранения ИП в одном поле varchar2(15) ?
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134642
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше хранить в числовом виде.
Если конкретная СУБД поддерживает такой тип данных, то в 4-байтовом целом.
Остальные способы чреваты увеличением объема хранимых данных и потенциальной опасностью появления данных, которые невозможно трактовать как корректный ip-адрес.
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134684
Чендлер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
watsonПодскажите как лучше хранить IP адрес в таблице. Есть ли смысл хранить его в 4-х полях? Чем может быть чреват выбор хранения ИП в одном поле varchar2(15) ?
4-х нет, 6 надо :) так как IPv6 пошёл по свету, черевато - ничем, кроме как расходами памяти
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134689
Чендлер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ещё зависит от субд, а точнее о того как там реализованы типы данных
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134731
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чендлер
4-х нет, 6 надо :) так как IPv6 пошёл по свету, черевато - ничем, кроме как расходами памятитогда уж 8.
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134737
watson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СУБД Oracle
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134744
Чендлер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
watsonСУБД Oracle
Версия?
Сколько данных?
Что за система? (описание)
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35134772
mcureenab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удобно хранить в том виде, в каком IP адрес обычно фигурирует в обработке, чтобы лишний раз преобразования не применять. А уж если надо экономить место, то RAW(4) подойдёт для 4x байтовых IP адресов, а RAW(6) позволит хранит и IPv6 адреса в том числе.

Что касается разбиения на компоненты, то бить на 4 поля не рационально. 1. это не совместемо с IPv6. 2. Требуется парсинг адреса при разбиении его на части. 3. Наконец маска подсети битовая, так что граница между адресом сети и адресом хоста может проходить не по точкам или : как в IPv6 ...
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35137351
_Kostyan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Раздели хранение и использование.

храни либо в 1-й таблице: (адрес 128 !! \маска\флаг(в6\в4) или лучше в 2-х Т4(адр. маска) Т6(адрес - 128),

а потом делай селект и приводи к виду, используемому в приложении.

+: ты и работаешь в приложении с 1-й таблицей (в6 инкапсулируется), и получаешь структуру, независимо от вида адреса используемую в пр. области, и избегаешь хранения избыточных, или нецелостных данных. При переходе на в6 у тебя уже все предусмотрено - надо поменять только селект.

-: придется описать и базовые таблицы и селект, но в дальнейшем это с лихвой окупится. более ресурсоемко, т.к. странички из физ. таблиц в любом случае хоть иногда будут всплывать в оперативку.

в любом случае если к скор. не критично - еще 1 слой не помешает.
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35138268
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Kostyan_храни либо в 1-й таблице: (адрес 128 !! \маска\флаг(в6\в4) или лучше в 2-х Т4(адр. маска) Т6(адрес - 128),Интересно, а какая может быть маска у отдельно взятого ip-адреса???
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35138507
о cidr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
http://www.google.ru/search?hl=ru&q=%28cidr%29%26%28%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F%29&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35138540
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
о cidrhttp://www.google.ru/search?hl=ru&q=%28cidr%29%26%28%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F%29&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=fЯ знаю что такое cidr.
Вопрос задавался к тому, что у отдельно взятого ip-адреса маски не бывает. Гляньте структуру заголовка ip-пакета - там никаких масок нет.
...
Рейтинг: 0 / 0
Как лучше хранить IP адреса
    #35138635
_Kostyan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Согласен - в БОЛЬШИНСТВЕ случаев ассоциировать маску с конкретным пользователем - неправильно, вернее будет хранить таблиыц

подсети 1:M выданные IP M:1 пользователи (если нет задачи идентифицировать Мн-во пользователей обладавших IP)
или (если такая или им подобная задача ставится), или пользователи локализованы в сети (сеть пр-ия например), то
подсети 1:М выданные АйПи М:М пользователи.

miksoft
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Как лучше хранить IP адреса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]