где оно и зачем нужно
Здравствуйте, дорогие друзья!
Мы с вами неоднократно говорили о доменах, когда учились создавать веб-сайты.
В данном материале я хотел бы поговорить о том, что такое доменное имя компьютера.
По сути разницы особой нет, но все же…
Что это такое и его назначение?
Каждый комп, подключаясь к сети, получает собственный уникальный номер — IP-адрес. Сайты тоже имеют собственный IP. К примеру, у ресурса Яндекса он выглядит так 213.180.204.11.
Если вам интересно, на блоге есть статья о том, как изменить айпи адрес компьютера. Иногда это может пригодиться.
Как видите, подобное обилие цифр делает адрес довольно трудным для запоминания. Но если вы его напишите в адресной строчке, то 100% откроется Yandex. Так вот в данном примере yandex.ru — это домен, который соответствует IP 213.180.204.11. Его проще запомнить, чем цифры, не правда ли?!
Компьютерные домены используются для организации ПК в сети. Использование домена вместо числового аналога позволяет безошибочно найти нужный ПК среди множества машин, которые находятся в сети. Это очень удобно, например, при необходимости удаленного доступа к машине. Системные администраторы сошли бы с ума, если бы им нужно было запоминать сотни цифр ip-адресов всех тех ПК, которые они администрируют.
Итак, с тем, что такое domen и зачем он нужен, мы разобрались. Но как узнать доменное имя нужного ПК в сети? Очень просто: в командной строке нужно прописать NSLOOKUP x.x.x.x, где последние четыре крестика — это IP-адрес интересующей вас машины.
А еще есть такой вариант. Перейдите в свойства системы через панель управления или кликнув правой кнопкой мыши по значку «Мой компьютер» и нажав в контекстном меню «свойства». Во вкладке «имя ПК» находится и домен и его рабочая группа.
Обслуживание и администрирование
Все домены администрируются и обслуживаются в централизованном порядке при помощи Domain Name Service. DNS – это специальная доменная служба. Этот сервис обеспечивает связь названий в буквенном виде с их IP в виде цифр. В принципе ничего нового, мы говорили с вами об этом в статье, посвященной теме ДНС, но рассматривали вопрос на примере сайтов. Как вы понимаете с компьютерами история повторяется.
Как правило, полное доменное имя ПК записывается следующим образом:
computer5.otdel-2.office.msk.ru. Но можно и короче
В приведенном примере данный адрес присвоен компьютеру под номером 5, который стоит в отделе №2 фирмы с названием «office». Более того по аббревиатуре msk можно догадаться, что компания находится в Москве в доменной зоне России (.ru).
Системный администратор вправе изменить доменное имя тому или иному ПК, он их может называть так, как ему удобно для запоминания и организации сети.
Вот и всё! Думаю, вы поняли, что такое домен компьютера, а также как его определить, если знаешь IP.
Если у вас есть желание углубить свои знания в сфере компьютерных технологий, могу вам посоветовать курс «Гений компьютерщик». Он подходит для людей любого возраста и любого уровня знаний. Каждый “чайник” может стать продвинутым юзером и опытным пользователем ПК.
Следите за обновлениями блога и узнаете все тайны Интернета. Не забудьте поделиться ссылкой на статью в социальных сетях, возможно, она заинтересует ваших друзей и знакомых. До новых встреч, буду ждать вас на страницах моего блога!
C уважением! Абдуллин Руслан
Понравился блог? Подпишись, чтобы получать новые статьи на почту и быть в курсе всех событий!
Имя и домен компьютера. Доменное имя компьютера — Что это такое? Зачем нужно? Как его узнать
Сегодня мы рассмотрим довольно важную тему, с которой сталкивался или обязательно столкнется в ближайшем будущем любой системный администратор. Корпоративная локальная сеть среднего или крупного предприятия в 99% случаев имеет доменную структуру. Это продиктовано, в первую очередь, политикой безопасности предприятия. Таким образом, все компьютеры сети используют настройки главного компьютера – домена (безопасность может обеспечиваться ).
Сейчас предлагаю рассмотреть пример того, как ввести в домен компьютер под управлением Windows 7. Хотя, в принципе, добавление в домен компьютеров с другими версиями Windows не сильно отличается – главное понять суть.
Первым делом, вставляем сетевой кабель в компьютер=). Теперь необходимо настроить сетевое подключение. Щелкаем правой кнопкой по компьютеру в трее и открываем Центр управления сетями и общим доступом .
В появившемся окне нажимаем Изменение параметров адаптера – откроются все доступные сетевые подключения. Нам необходимо выбрать
В открывшемся окне нужно ввести данные, такие как IP-адрес, маска подсети, шлюз и DNS-сервер. Должно получится что-то в таком духе.
Нажимаем ОК, тем самым сохраняя изменения. На этом подготовительная часть работ завершена. Теперь перейдем непосредственно к добавлению компьютера в домен.
Нажимаем Пуск , правой кнопкой щелкаем по пункту Компьютер , выбираем Свойства . В левой части окна находим пункт Дополнительные параметры системы и жмем по нему левой кнопкой мыши. В появившемся окне открываем вкладку .
Нажимаем ОК. Последует запрос на ввод имени пользователя и пароля, который имеет право на присоединение компьютеров к домену, например, администратор домена. После этого потребуется перезагрузка.
По окончанию перезагрузки Ваш компьютер будет в домене.
Если компьютер выпал из домена
Да, бывает и такое. Компьютер может ни с того ни с сего отказаться видеть домен. Соответственно, авторизация не будет срабатывать.
Затем опять вводим компьютер в домен как показано выше и снова перезагружаемся.
Здравствуйте, уважаемые любители компьютеров и читатели блога MyFirstComp.ru. Сегодня мы рассмотрим довольно важную тему, с которой сталкивался или обязательно столкнется в ближайшем будущем любой системный администратор. Корпоративная локальная сеть среднего или крупного предприятия в 99% случаев имеет доменную структуру. Это продиктовано, в первую очередь, политикой безопасности предприятия. Таким образом, все компьютеры сети используют настройки главного компьютера — домена (безопасность может обеспечиваться брандмауэром или защитником, которые легко можно отключить).
Сейчас предлагаю рассмотреть пример того, как ввести в домен компьютер под управлением windows 7. Хотя, в принципе, добавление в домен компьютеров с другими версиями windows не сильно отличается — главное понять суть.
Первым делом, вставляем сетевой кабель в компьютер=). Теперь необходимо настроить сетевое подключение. Щелкаем правой кнопкой по компьютеру в трее и открываем Центр управления сетями и общим доступом.
В появившемся окне нажимаем Изменение параметров адаптера — откроются все доступные сетевые подключения. Нам необходимо выбрать Подключение по локальное сети, щелкнуть по нему правой кнопкой мыши и выбрать Свойства.
В открывшемся окне нужно ввести данные, такие как IP-адрес, маска подсети, шлюз и DNS-сервер. Должно получится что-то в таком духе.
Нажимаем ОК, тем самым сохраняя изменения. На этом подготовительная часть работ завершена. Теперь перейдем непосредственно к добавлению компьютера в домен.
Нажимаем Пуск, правой кнопкой щелкаем по пункту Компьютер, выбираем Свойства. В левой части окна находим пункт Дополнительные параметры системы и жмем по нему левой кнопкой мыши. В появившемся окне открываем вкладку Имя компьютера.
Нажимаем ОК. Последует запрос на ввод имени пользователя и пароля, который имеет право на присоединение компьютеров к домену, например, администратор домена. После этого потребуется перезагрузка.
Что является доменным именем компьютера
Любая сеть, локальная или глобальная, имеет сложную структуру и построение. При этом каждый компьютер, который подключается к сетке имеет свое уникальное доменное имя компьютера (в глобальной сети это понятие можно отнести не к наименованию компьютера, а к имени сайта), которое можно сравнить, например, с фактическим адресом проживания любого человека и его непосредственным именем, фамилией и отчеством.
Таким образом, чтобы отыскать в сети определенное устройство, идентифицировать его, просмотреть о нем информацию, использовать его ресурсы, необходимо знать лишь его имя и случае наличия прав доступа использовать его ресурсы или информацию, размещенную на нем.
Доменное имя: что это?
Доменные имена были придуманы уже давно. Фактически они стали заменой физических адресов (IP-адрес), которые в той или иной сети являются уникальными. Этот шаг упростил посещение того или иного сайта, локального ресурса за счет того, что теперь пользователю совершенно не обязательно запоминать 4 блока цифр, которые могут быть в свою очередь трехзначными, а знать лишь доменное имя.
Так называемым дешифратором доменных имен в физический адрес являются DNS-сервера (Domain Name Server). Иными словами, при посещении определенного сайта, пользователь вводит текстовый вариант адреса, который в свою очередь преобразовывается в IP-адрес без участия человека и перенаправляет его на нужный сайт или ресурс. Конечно же это упростило запоминание, ведь гораздо проще запомнить какое-то слово, чем набор цифр, которых может быть до 12-ти.
В сети Интернет имеются четкие разграничения по зонам. Например, государственным структурам, как правило, присваивается имя организации в домене .org. Если речь идет об определенных интернет-магазинах, коммерческих организациях, то их как правило размещают в зоне, которое соответствует масштабам их сферы деятельности: ya.ru используется в России, а ya.ua в Украине; aliexpress.com прописывается в любой точке земного шара, но перед этим именем в адресной строке указывается регион, а соответственно и язык интерфейса сайта, откуда пользователь пытается посетить данный Интернет-магазин, например, ru.aliexpress.com, но в качестве домена везде выступает .com.
Что же касаемо домена и непосредственного имени компьютера в локальной сети, то его название зависит от системного администратора, который выполнял построение и последующее обслуживание сети и вносил то или иное устройство в состав сетки.
Как узнать доменное имя компьютера?
Имея подобные данные, пользователь может использовать ресурсы удаленного компьютера (сервера) в своих целях, например, для скачивания на локальную машину определенных файлов или данных, которые ему необходимы. Если же рассматривать этот вопрос на глобальном уровне, то информация о доменном имени позволяет посетить тот или иной сайт, где физически размещен Интернет-ресурс и т.д.
Для того, чтобы определить доменное имя конкретного компьютера в локальной сети, можно воспользоваться одним из способов:
- Просмотр на локальной машине.
Подобную информацию можно отобразить, выполнив следующие действия:
- кликнуть ПКМ по «Мой компьютер»;
- в контекстном меню выбрать строку «Свойства»;
- доменное имя компьютера будет отображаться в поле «Полное имя».
В состав полного имени входит наименование компьютера, после которого прописывается имя домена.
Примечание: полное имя и компьютера будут совпадать в том случае, если эта машина не подключена ни к одному домену и входит лишь в состав рабочей группы.
- Средства системного администратора.
Системный администратор, который занимался непосредственным построением локальной сети, а также тех, кто обладает достаточным количеством прав доступа (привилегиями) имеют возможность просматривать Active Directory, в которой отображаются все компьютеры, входящие в данную сеть. Соответственно и получение того или иного доменного имени компьютера не является проблемой.
Что же касаемо глобальной сети, то здесь важно не доменное имя сайта, которое можно в принципе отыскать поисковой системе, если ввести соответствующий тематический запрос, а непосредственно IP-адрес. Это необходимо, например, на предприятиях, работающих с Интернет-банкингом, позволяющий совершать платежи удаленно, не посещая каждый раз отделение банка с платежными поручениями. Для того, чтобы получить IP-адрес компьютера или сервера, зная доменное имя, можно воспользоваться одним из следующих способов:
- запустить командную строку и ввести комбинацию символов ping «доменное имя», после чего на экране последовательно отобразятся четыре строчки, в которых будет указан физический адрес компьютера;
- перейти по ссылке http://url-sub.ru/tools/web/iphost/, ввести в соответствующем поле имя компьютера, а затем кликнуть по кнопке узнать и необходимая информация будет выведена на экран;
- для получения географического размещения того или иного сервера, необходимо перейти, например, по ссылке http://www.ip-ping.ru/ipinfo/, ввести IP-адрес, который можно получить, используя один из вышеперечисленных способов, и вся необходимая информация будет отображена у Вас на экране.
Вконтакте
Google+
Одноклассники
Мой мир
Что такое доменное имя сайта
Данная информация относится к технической реализации работы сети интернет и обычным пользователям знать ее в принципе не обязательно, однако она позволяет лучше понимать устройство интернета и принципы его работы, облегчит общение с другими людьми и техподдержкой провайдера и возможно поможет вам решить некоторые проблемы в работе интернета самостоятельно.
Если совсем коротко и просто, то доменное имя сайта — это то, что мы набираем в адресной строке браузера, когда его отрываем для просмотра. Однако рекомендую прочитать остальную статью, чтобы узнать из чего оно состоит, откуда оно берется и как взаимосвязано с другими понятиями.
Чтобы все это уяснить, придется разобраться с некоторыми техническими моментами, однако мы будем стараться объяснить общие принципы без углубления в технические дебри. Чтобы вам было легче ориентироваться в материале, настоятельно рекомендуем сначала ознакомиться с общими принципами работы сети Internet.
Практически каждое устройство, подключенное к компьютерной сети, имеет в ней логический адрес, по которому к нему можно обратиться, уникальный в пределах этой сети. Для сетей работающих по протоколу TCP/IP версии IPv4 в качестве адреса используются четыре цифры разделенные точкой и каждая из цифр находится в диапазоне от 0 до 255. Выглядит это примерно так 94.228.114.243 и называется IP-адресом (сокращение от Internet Protocol Address). Кстати, ваш IP-адрес в настоящий момент 176.9.44.166
В настоящее время четвертая версия протокола является самой распространенной в мире, однако параллельно существует версия IPv6. Она создана, чтобы увеличить максимальное количество доступных адресов и упростить маршрутизацию в интернете. Адреса в ней выглядят уже как восемь четырехзначных чисел, представленных в шестнадцатеричной системе счисления и разделенных двоеточием, выглядит это примерно так: 2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d Впрочем в контексте наше статьи эти различия не принципиальны.
IP адреса назначаются по определенным иерархическим правилам, благодаря чему поддерживается порядок и по адресу, можно определить к какой подсети он относится и даже примерное местоположение. Нарушение этих правил ведет к конфликтам оборудования.
С адресацией разобрались, теперь перейдем к сайтам. Все сайты хранятся на специальных компьютерах подключенных к интернету и называемых серверами, хотя конечно возможны варианты. Как мы выяснили выше, все серверы имеют уникальный айпи адрес. Чтобы нам посмотреть какой-нибудь сайт, нам потребуется специальная программа называемая браузером, в адресной строке которого нужно ввести IP-адрес соответствующего сервера, на котором располагается нужный нам сайт.
Только вот не задача, оперировать ip адресами человеку очень неудобно, такие числа трудно запомнить, неудобно передавать устно, легко ошибиться при вводе. Причем это касается версии IPv4, а попробуйте запомнить хотя бы один адрес IPv6. Кроме того на одном ip адресе обычно находится множество сайтов и получается непонятно какой из них вам нужен. Выход из этой ситуации нашелся довольно простой, заменить числовые адреса на осмысленные символьные комбинации. Их легко запоминать, проще диктовать.
Кстати, вам это ничего не напоминает? Ведь точно так же мы сейчас поступаем с телефонными номерами. Мы просто назначаем телефонному номеру нормальное имя и дальше уже оперируем только им, а сам цифровой номер можем даже совсем не знать. По такому же пути пошли с адресами сайтов, правда с другого конца. Если в случае телефонного номера он первичен и неизменен, а имя контакту каждый может задать на свой вкус, то в интернете ситуации выглядит несколько иначе.
Здесь первично именно символьное имя сайта, называемое доменным именем. На английском это звучит как Domain Name System или сокращенно DNS. Когда создается новый сайт, ему придумывается имя, которое нужно зарегистрировать. Регистрацией доменных имен занимаются специальные компании регистраторы и естественно за деньги, причем оплачивать нужно каждый год, иначе права на имя теряются. Имя сайта должно быть уникально в пределах домена, но об этом мы поговорим немного позже. После регистрации, файлы сайта можно разместить у хостинговой компании на сервере, а у этого сервера есть IP-адрес. Таким образом, образуется связка IP-адрес сервера и доменное имя сайта. В данном случае этот сайт имеет IP адрес 92.53.96.93
Причем имя сайта невозможно изменить, можно только зарегистрировать новое. Старое имя через некоторое время освободится, если за него не платить и сможет быть зарегистрировано снова другим желающим. Зато можно поменять хостинг или переехать на другой сервер этого же хостера и соответственно изменится IP-адрес. Таким образом, для сайтов главное именно доменное имя.
Иерархия доменов
Для упрощения логической структуры и повышения количества доступных комбинаций домены так же имеют иерархическую структуру и могут обозначать не только конкретный сайт, но и целые области или как их называют зоны. Раз они имеют иерархическую структуру то, следовательно, есть уровни вложенности доменов, то есть младшие входят в старшие.
Корневым для всех остальных доменов является домен обозначаемый точкой «.» еще встречается название домен нулевого уровня. Дальше идут домены первого уровня такие как «.ru», «.com», «.org» и так далее. Их еще называют зонами и делят на тематические «.com», «.net», «.info» и национальные, то есть закрепленные за странами «.ru», «.ua», «.en», а так же интернационализованные «.рф», «.рус», «.укр», «مصر.» основанные на не латинских алфавитах. Следом идут домены второго уровня, являющиеся уже непосредственно отдельными сайтами, например «beginpc» или «google».
Допустимая длинна имени домена имеет следующие ограничения. Минимальная длинна составляет 2 символа, но в некоторых зонах это 3 или даже 4 символа. Максимальная длинна ограничена 63 символами, но в некоторых зонах можно использовать 127 символов. Хотя в подавляющем большинстве случаев стараются использовать максимально короткие имена с целью простоты запоминания и набора вручную, некоторые идут другим путем и появляются такие образцы как zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz.ru или llanfairpwllgwyngyllgogerychwyrndrobwyll-llantysiliogogogoch.info
Доменное имя записывается в виде строки, где домены указываются слева направо от младших к старшим и разделяются между собой точкой. Чтобы было наглядней, давайте посмотрим на конкретном примере. Вы наверно уже догадались, что «beginpc.ru» как раз и есть доменное имя этого сайта. В данном случае у нас два набора символов разделенных точкой, следовательно «ru» является доменом старшего уровня, а «beginpc» младшим по отношению к нему или по другому доменом второго уровня. Корневой домен обычно не указывается в записи, но он есть и в полном виде это выглядит так «beginpc.ru.». Раньше перед доменом второго уровня добавляли еще домен третьего уровня «www», то есть адрес выглядел как www.yandex.ru но сейчас обычно его опускают.
Возьмем еще в качестве примера поисковую систему Яндекс. Главная страница имеет имя yandex.ru, а часть сервисов располагаются на отдельных доменах: новости — news.yandex.ru, музыка — music.yandex.ru, маркет — market.yandex.ru
Из этих двух примеров можно сделать следующие выводы. Домен «ru» является доменом верхнего уровня, в котором располагаются домены второго уровня «beginpc» и «yandex». В домен второго уровня «yandex» входят домены третьего уровня «news», «music», «market». Уровней вложенности может быть и больше. Тут есть один момент, требующий пояснения.
Домен «ru» является общедоступной доменной областью верхнего уровня, поскольку в нее входят множество не связанных между собой сайтов помимо приведенных в примере. Любой человек или организация может зарегистрировать в ней сайт соблюдая определенные правила. Зато домены «beginpc» и «yandex» являются частными и создавать вложенные домены имеют право только их владельцы, которым Яндекс и воспользовался. В таких случаях, когда на младшем домене располагается какая та часть основного сайта, обычно говорят, что это поддомен или субдомен.
Что такое доменное имя сайта мы разобрались. Осталось осветить несколько моментов. Мы уже упоминали требование уникальности имени в пределах домена, поэтому в зоне «ru» может быть зарегистрирован только один сайт с именем yandex. Зато такой же домен может быть зарегистрирован в других зонах, например yandex.com или yandex.org Поэтому крупные компании обычно регистрируют свой домен во всех основных доменах верхнего уровня, чтобы это не сделали конкуренты или злоумышленники.
Вроде все просто, однако осталось решить маленькую техническую проблему. Поскольку адресация в интернете основана на сетевых протоколах TCP/IP, а пользователи оперируют доменными именами, то их нужно как-то связать между собой. Чтобы вводя имя сайта в адресную строку браузера, мы попадали на соответствующий сервер. Вы же понимаете, что что браузер просто не знает на каком из бесчисленного множества серверов находится нужный нам сайт в настоящее время. Для этого придумали такую штуку как DNS-сервер, но как это работает тема для отдельного разговора.
5 способов узнать имя компьютера
Здравствуйте уважаемые читатели в прошлой статье я рассказал как узнать ip адрес компьютера, а сегодня рассмотрим как узнать имя компьютера. Оно может помочь вам во многих ситуациях. Например чтобы подключиться с другого компьютера.
Как узнать имя компьютера?
Так же как и ip адрес, иногда бывает нужна информация о имени компьютера, рассмотрим способы, чтобы его узнать.
1. Первый способ:
Нажимаем пуск — выполнить (или клавиши Win-R).
Вводим msinfo32 и нажимаем enter.
В открывшемся окне, видим имя компьютера. Так же тут отображаются и другие параметры, которые возможно вам пригодятся.
2. Второй способ:
Узнать имя компьютера можно и более легким способом. Нажимаем правой кнопкой мыши по моему компьютеру и выбираем свойство.
Чуть ниже будет имя компьютера. Тут отображается и полное имя, а так же отобразится ваша рабочая группа или домен, если компьютер в нем.
3. Третий способ:
Нажимаем правой кнопкой мыши по любому ярлыку выбираем свойство, далее вкладка подробнее. Внизу можно узнать имя компьютера. Я например взял ярлык от любимого браузера оперы.
4. Четвертый способ:
Открываем командную строку (в пуске или в команде выполнить пишем cmd, потом enter).
В ней вводим hostname. Так же получим результат.
5. Пятый способ:
Можно узнать имя компьютера с помощью программы SIW.
По мимо этого эта программа небольшого размера и имеет много функций! Для своего размера, программа умеет делать очень многое. Она покажет абсолютно всю информацию о вашей системе.
Как узнать имя компьютера по ip адресу
Недавно нашел маленькую и полезную программу для того чтобы узнать имя компьютера по ip адресу.
Я ввел ip гугла и узнал его имя компьютера. Так же можно узнать IP по имени, но по сайту она почему-то ip не выдает. Может у вас получится.
Вот таким образом, можно узнать ip компьютера, а так же имя компьютера по ip адресу.
Как узнать домен компьютера? | Ответ здесь
Для того, чтобы узнать домен компьютера, для этого нужно просто зайти в свойства «Компьютер», «Имя компьютера» и там посмотреть.
Давайте с вами попробуем разобраться, что же такое домен, и для чего он нужен.
Обычно, под словом «домен», мы, как правило, понимаем то, что это где-то в Интернете.
Вообще-то это так и есть. Домен, это зона пространства Интернета.
Например, у нас есть сайт. У этого сайта есть доменное имя.
Адреса веб-сайтов всегда заканчиваются двумя буквами.
Например: http://questione.ru, или же http://www.questione.ru
Вот эти последние две буквы это и есть домен.
Домен, это то имя, которое указывает на принадлежность сайта к тому или иному государству. Домен «ua» принадлежит Украине, «ru» — России, «us» или «com» считаются американскими сайтами, «by» — Белорусскими.
То есть, по последним буквам адреса мы можем узнать, к какой стране принадлежит тот или иной сервер. Правда, не всегда бывают соответствия, и чтобы что-то уточнить, это можно сделать с помощью запроса в «Гугле».
Но есть ещё другое, что подразумевается под доменным именем. В системе «Windows-7» под выражением «доменное имя» подразумевается название группы, в которой компьютер находится.
Здесь всё зависит от того, являетесь ли вы участником локальной сети, или же просто пользователь.
Для того, чтобы посмотреть доменное имя вашего компьютера сделайте следующее:
1. Становитесь на значок «Компьютер».
2. Нажимаете правую кнопку мышки, и ищете в контекстном меню «свойства».
3. Заходите туда. Свойства компьютера также можно вызвать с помощью комбинации клавиш ALT+Enter. При этом надо стать на значок «Компьютер.
4. в разделе «Имя компьютера» можете посмотреть доменное имя.
Вообще-то, по умолчанию доменное имя компьютера в «Windows-7» «Рабочая группа».
Успехов!
Упрощаем жизнь администратору, ассоциируем имя пользователя и имя компьютера в автоматическом режиме в каталоге AD
Добрый день, хабр!Наверное, у всех системных администраторов была проблема определения имени компьютера пользователя. То есть мы знаем имя сотрудника, но какой у него компьютер, без понятия. И, зачастую, попытка заставить пользователя определить имя компьютера вызывает мучение. Они вместо этого называют имя пользователя, mail, номер телефона, все что угодно, только не имя компьютера. А попытка объяснить пользователю где находится информация о системе вызывает баттхерт сотрудника и лютую ненависть. Можно, конечно, было бы написать какую-нибудь утилитку, позволяющая отображать имя компьютера на рабочем столе или где-нибудь еще на видном месте, но для этого надо каждый раз объяснять где находится эта информация. Немного упрощает задачу, но не решает ее полностью. Тем более что я склоняюсь к тому, что пользователю и во все положено не знать имя компьютера, на котором он сидит. В результате было решено сделать определение имени компьютера современным, удобным, правильным и, главное, автоматическим.
Примерно так может выглядеть подключение к компьютеру. При чем оснастку даже не обязательно открывать с помощью административной учетной записи. Для тех, кому интересно как все это работает и как это сделать в вашей инфраструктуре, добро пожаловать под кат.
Для выполнения описанного, вы должны понимать что такое AD, понимать хотя бы примерно структуру объектов в AD, понимать работу скриптов, а также любить котиков.
Общий принцип
Скрипт, запущенный из под пользователя определяет имя компьютера, на котором он работает, и от своего имени текущего пользователя записывает значение атрибута в самом себе в каталоге AD. Далее администратор уже волен сам решать что делать с этим значением атрибута. Я в этой статье приведу пример PowerShell скриптов и пример добавления пункта контекстного меню в оснастку Active Directory Users and Computers (далее ADUC).
Создаем атрибут
Многие не шли далеко и не мудрили, используя общедоступные для записи, например параметр «Веб страница» пользователя по-умолчанию доступен для записи самим собой. Однако мне эта идея не понравилась, хотелось создать специализированный атрибут для пользователя, который не имел бы двойного назначения и не требовал компромисса. А то кто знает, как в будущем сложится ситуация и потребует использование этого атрибута, а он уже занят…
Итак, для того, чтобы создать новый атрибут в схеме нужно сначала добавить оснастку. На компьютере с установленным пакетом удаленного администрирования, либо на контроллере домена, нужно запустить с правами локального администратора regsvr32 schmmgmt.dll. Сложно сказать почему эта оснастка по-умолчанию не зарегистрирована, видимо чтобы по незнанию не напортачили. Но тем не менее мы ее можем добавить, зарегистрировав DLL. После этого открываем оснастку Схема Active Directory и идем в раздел Attributes. Создаем новый атрибут. Тут, конечно, я должен предупредить, что атрибуты это не место для экспериментов и создаются они один раз и навсегда, удалить атрибут или переименовать невозможно. Это предупреждение есть во всех местах, где имеет место добавление атрибута, но все же 🙂 Для добавления нового атрибута также потребуются права Администратора схемы. Если ваш административный пользователь имеет права Администратор предприятия, то это больше, чем достаточно.
Для добавления нового атрибута потребуется ввести OID. Это уникальный идентификатор объекта. Почитать про него можно в гугле, углубляться не буду, но скажу что он должен быть уникальный. Пересечение OID недопустимо и если его вбить любым, то есть вероятность, что будут нерешаемые проблемы в будущем. OID обычно начинается с 1.2.840.113556 и далее циферки. Я особенно не заморачивался и т.к. третье число (840) это код страны, а четвертое это код компании (Microsoft), я ввел код несуществующей страны 800 и сгенерировал 2 случайных числа через точку. Список стран можно посмотреть здесь. На самом деле, по хорошему, в этом случае необходимо обратиться в ITU-T и запросить уникальный OID, но мне ответ так и не пришел и я не стал залезать в бутылку и создал на основе случайных чисел. Потом я нашел скрипт, который генерирует относительно уникальный идентификатор, но было уже поздно :))
В общем, с OID решили. Дальше нам нужно указать syntax атрибута. В моей конфигурации это Unicode String. Также, конечно, нужно имя атрибута. В этом примере я буду использовать имя LabelComputer, в рабочей конфигурации лучше придумать что-нибудь получше.
После того как мы создали атрибут, нам нужно его добавить в класс. Выбираем класс user и в закладе Attributes добавляем наш новый атрибут. Теперь пользователь с нужными правами будет иметь право записывать этот атрибут в пользователе. По-умолчанию эти правом владеет Account operator или выше. Но нас интересует ситуация, когда пользователь сам бы мог редактировать этот атрибут. Для подобных целей существует пользователь с именем SELF, который олицетворяем самого себя. Нам нужно дать права для всех пользователей пользователю SELF записывать атрибут LabelComputer. Т.к. наследование еще ни кто не отменял, переходим на столько высоко, на сколько это нужно и изменяем права. Я предлагаю изменить права на весь домен, для нас это будет dc=contoso,dc=com, входим в настройки безопасности объекта домен в оснастке ADUC. Входим в закладку разрешения и нажимаем кнопку Advanced. Добавляем права для пользователя SELF и разрешаем ему читать и записывать атрибут LabelComputer. Атрибут в списке, кстати, появляется не сразу после его создания. Должно пройти некоторое время от создания атрибута до того момента, как мы сможем видеть его в списке назначения прав и в свойствах атрибутов пользователя.
Маркировка
В итоге мы создали атрибут, права назначили. Переходим к рабочему этапу, нужно добавить имя компьютера в значение атрибута.
Для этого используется VBscript. Как показывает практика, Microsoft не пытается делать PowerShell заменой VBS. А жаль. Для таких задач VBS оказывается быстрее и универсальнее.
Скрипт, записывающий данные в текущего пользователя:
On Error Resume Next
Set objSysInfo = CreateObject("ADSystemInfo")
Set objNetwork = CreateObject("WScript.Network")
Set objUser = GetObject("LDAP://" & objSysInfo.UserName)
objUser.Put "LabelComputer", objNetwork.ComputerName
objUser.SetInfo
Скрипт прост и примитивен. Скрипт и модель впрочем, можно расширить, сохранять не только компьютер, а, например, и время для актуальности, но в данном примере я не буду касаться этого.
Скрипт с помощью групповой политики назначаем на запуск во время Logon. Но не только. Возможна ситуация, когда человек залогинен на двух компьютерах, хочется чтобы информация все равно была актуальна, даже в этом случае. Для этого добавляем выполнение скрипта в планировщик со срабатыванием по событию разблокировки компьютера.
В этом случае, даже если логин был выполнен на нескольких компьютерах, актуальным будет записан тот компьютер который был разблокирован последним. Есть только одно разочарование. Этот метод работает исключительно на Vista+ компьютерах. То есть в XP нельзя в планировщике поставить такой триггер. И к великому сожалению, VBS тоже не позволяет определить, заблокирован ли компьютер или нет. Иначе можно было бы запускать скрипт раз в 15 минут с проверкой заблокирован ли компьютер или нет. В VBS можно только по субъективным признакам определять, например, по записям в евент логе Security, но тогда, как минимум, потребуется дать обычному пользователю права на просмотр этого журнала. Это неудобно, плохо применимо да и вообще XP становится все меньше, эту группу компьютеров можно игнорировать, для них будет достаточно Logon скрипта.
Т.к. нам хочется помечать не каждый вход, а только тот, который локальный, нам нужно исключить запуск Logon скрипта на терминальных и других серверах, не относящихся к локальным компьютерам. Я этого достигал включением замыкании групповой политики в режиме слияние и применением объекта групповой политики к области персональных компьютеров, серверов, в которой, нет. Метод, соглашусь, достаточно плохой и растрачивающий ресурсы, лучше использовать замыкание групповой политики только тогда, когда это точно надо, а не для всех компьютеров. Но, возможно, это будет следующим этапом улучшения. Тем не менее, таким образом мы четко ограничиваем на каких именно компьютерах будет выполняться нужная нам групповая политики с Logon скриптом и настройками планировщика.
Пример PowerShell скрипта для сбора данных
Главная задача выполнена. Мы начинаем видеть, что в пользователях начинает появляться информация о текущем компьютере.
Теперь нам надо что-то с этими данными сделать. Например, сделать удобную табличку с тем, какие пользователи на каких компьютерах сидят. Или увидеть у каких пользователей нет значения в атрибуте, несмотря на недавний вход в систему, чтобы проследить, выполняются ли групповые политки в системе, например, либо в пользователе почему-то не хватает прав для записи значения атрибута в своего пользователя. Такое бывает, если у пользователя отключено наследование прав, к примеру.
Я написал 3 PowerShell скрипта, помогающих работе.
Поиск пользователей без значений
Import-Module ActiveDirectory
Get-ADObject -filter {(sAMAccountType -eq "805306368") -and (LabelComputer -notlike "*")} -Properties DisplayName,GivenName,SN,LabelComputer,cn,sAMAccountName,lastLogonTimestamp, OperatingSystem -SearchBase "OU=Пользователи сети,DC=contoso,dc=com" | Select-Object @{Expression={$_.DisplayName};Label="Отображаемое имя"},@{Expression={$_.sAMAccountName};Label="Логин"}, @{label="Последний вход";expression={[datetime]::FromFileTime($_.lastLogonTimestamp)}} | Sort-Object "Последний вход"| Format-Table -Autosize
Read-Host "Отсортировано по дате последнего входа по возрастанию. Для выхода нажмите любую клавишу..."
Этот скрипт делает красивую таблицу, в которой будут показываться только пользователи, отображаемое имя, логин и дату последнего входа в систему. Тут мы сможешь посмотреть подозрительных пользователей и потом попытаться понять, почему же несмотря на недавний заход в систему, имя компьютера до сих пор отсутствует.
Все компьютеры с метками
Import-Module ActiveDirectory
Get-ADObject -filter {(sAMAccountType -eq "805306368") -and (LabelComputer -like "*")} -Properties DisplayName,GivenName,SN,LabelComputer,cn,sAMAccountName,lastLogon -SearchBase "OU=Пользователи сети,DC=contoso,dc=com" | Select-Object @{Expression={$_.DisplayName};Label="Отображаемое имя"},@{Expression={$_.sAMAccountName};Label="Логин"}, @{Expression={$_."LabelComputer"};Label="Последний компьютер"},@{label="Последний вход";expression={[datetime]::FromFileTime($_.lastLogon)}} | Sort-Object "Последний вход" | Format-Table -Autosize
Read-Host "Отсортировано по последней дате входа по возрастанию. Нажмите любую кнопку для выхода..."
Этот скрипт похож на предыдущий, но показывает список помеченных пользователей. Позволяет прикинуть относительное количество помеченных пользователей.
Поиск имя компьютера по пользователю
Import-Module ActiveDirectory
$exit = 0
do
{
Write-Host "Поиск по атрибутам пользователя: Имя, Фамилия, Отображаемое имя, Логин, Имя компьютера. Выход при пустом поле поиска."
$us = Read-Host -Prompt "Введите строку для поиска"
$find = ""
$find += '*' + $us + '*'
write-host = $find
Get-ADObject -filter {(sAMAccountType -eq "805306368") -and ((GivenName -like $find ) -or (sn -like $find ) -or (cn -like $find ) -or (DisplayName -like $find ) -or (LabelComputer -like $find ) -or (sAMAccountName -like $find ))} -Properties DisplayName,GivenName,SN,LabelComputer,cn,sAMAccountName | Select-Object @{Expression={$_.DisplayName};Label="Отображаемое имя"},@{Expression={$_.sAMAccountName};Label="Логин"},@{Expression={$_."LabelComputer"};Label="Последний компьютер"} | Format-Table -Autosize
} While ($us -ne "")
Ну и, непосредственно, поиск. Like поиск происходит по всем основным параметрам пользователя. Возвращает таблицу найденного.
По всем скриптам, вывод можно делать не в Format-Table, а в Export-CSV и создавать сразу CSV файл и анализировать его уже в каком-нибудь табличном редакторе.
{{картинка с Леонардо Ди Каприо из фильма Начало}}
Добавление пункта в оснастку
Скрипты это красиво, но хочется большей автоматизации. И захотелось, чтобы при нажатии в контекстном меню происходило автоматическое подключение к компьютеру программой для удаленного управления DameWare. Безусловно, можно запускать любую удобную программу, можно таким образом удаленно перезагружать, например, машину, если надо. Тем не менее рассмотрим пример с DameWare.
Настройки контекстного меню оснастки ADUC находятся не локально, как может сначала показаться, а, опять же, в каталоге AD. Для того, чтобы добавить новый пункт, необходимо воспользоваться редактором конфигурации AD, утилитой ADSI Edit. Необходимо подключиться к конфигурации AD.
Требуемый атрибут для изменения находится в объекте
CN=user-Display,CN=419,CN=DisplaySpecifiers,CN=Configuration,DC=contoso,DC=com. При том CN=419 это, как не сложно догадаться, язык. Если нужно поменять параметр для англоязычной оснастки ADUC, то CN=419 нужно поменять на CN=409.
Добавляем в adminContextMenu пункт. Первое это, на сколько я понимаю, сортировочный номер, второе это непосредственно имя и третье это, собственно, адрес объекта для выполнения. Параметры разделяются запятыми. После перезапуска ADUC для объектов user в контекстном меню появится новосозданный пункт. Скрипт будет запускаться от прав пользователя, от имени которого оснастка и была запущена. Всего при запуске программы из контекстного меню ADUC скрипту или программе передается 2 значения в параметрах, это DN объекти и типа объекта. Нам интересен только первый параметр, по которому мы находим имя пользователя в скрипте.
On Error Resume Next
Set WshShell = CreateObject("WScript.Shell")
set fs=createobject("Scripting.FileSystemObject")
Dim CompName
Dim RunCMD
Dim FilePath
Set objAD = GetObject(Wscript.arguments.Item(0))
CompName = objAD.Get ("LabelComputer")
If CompName = "" Then WScript.Echo "Имя компьютера отсутствует для пользователя"
If CompName = "" Then WScript.quit
If MsgBox ("Подключиться к компьютеру " & CompName & "?",vbOKCancel+vbQuestion,"Серьезно?") = vbCancel Then WScript.quit
If fs.FileExists ("C:\Program Files\DameWare\DameWare Mini Remote Control 7.5\DWRCC.exe") Then FilePath = """C:\Program Files\DameWare\DameWare Mini Remote Control 7.5\DWRCC.exe"""
RunCMD = FilePath &" -c: -h: -x: -m:" & CompName & " -u:LocalAdmin -p:1072206713 -d:contoso"
RetCode = WshShell.Run (RunCMD,5)
Этот скрипт запускает программу Damware с учетными данными contoso\LocalAdmin. Этот пользователь заранее был добавлен в список локальных администраторов на компьютерах пользователей. По сути, параметры -u:, -p: и -d: можно исключить и тогда DameWare будет запускаться от имени текущего пользователя. Если у вас есть права локального администратора на компьютерах пользователя, то так будет проще.
В дальнейшем хотелось бы развить эту тем перевести телефонию отдела технической поддержки на программные SIP телефоны и адаптировать всю схему работы под программу таким образом, чтобы при входящем звонке производились все нужные выборки и у сотрудника на экране сразу появлялась вся информация о звонящем. И наступит счастье!
Несмотря на то, что никакие уникальные знания здесь не описаны, надеюсь, что как минимум, примеры скриптов помогут начинающим админам в понимании этой области 🙂 Все это можно продолжать улучшать, добавить новые атрибуты, добавлять метку не только пользователю, но и компьютеру добавлять Timestamp, сохранять последние компьютеры и т.п. В каждой компании могут найтись свои потребности.