Архив за месяц: Март 2011

UUID (Universally Unique Identifier) — универсальный уникальный идентификатор

Просто заметка, работая с Debian в один прекрасный момент при обновлении система предложила вместо использования имен разделов (вида /dev/sda1 ) обращаться через uuid. Мне фиолетово с одной стороны как система будет обращаться к диску: от этого я ничего не теряю. 🙂 Но стало интересно что побудило разработчиков сделать этот шаг. Поиски в интернете дали моментальный результат.
Оказалось давным давно пытливые умы задумались как маркировать все и вся чтобы они не повторялось. И правда, как-то раз я подключил второй диск в Debian (а еще раньше с Windows подобная ситуация была) и чуть не убил данные с другого раздела — при подключении диска перемешались названия разделов. В глубоком детстве хоть один раз кто-то именно по этой причине форматировал не тот диск 🙁 .
Оказалось есть алгоритм создания 128-битного (16 байт) идентификатора (ключевые слова RFC 4122, ISO/IEC 9834-8:2005).
Для наглядности приведу пример одного из таких идентификаторов uuid (шестнадцатеричная система счисления): 0b798a0a-bce3-41db-a39d-bc282b85b59c
Общее количество уникальных ключей UUID составляет 2 в 128-мой степени. Это означает, что генерируя 1 триллион ключей каждую наносекунду, перебрать все возможные значения удастся лишь за 10 миллиардов лет.
Алгоритм формирования UUID генерирует его на основании текущего времени, идентификатора машины и других вещей сводящих на нет вероятность генерации двух одинаковых uuid.

Как узнать имя хоста его по ip?

Для определения NETBIOS-имени устройства по его ip-адресу можно воспользоваться командой tracert ip-адрес (для Windows) или traceroute ip-адрес (для Unix-систем, например, Linux).
Для определения доменного имени из обратной зоны DNS-сервера: nslookup ip-адрес