Заметки о Windows и других программных продуктах Microsoft...

Как узнать FQDN компьютера

Как узнать FQDN компьютера

Иногда в скрипте PowerShell требуется определить FQDN компьютера, на котором этот скрипт запущен. Сделать это можно разными способами, например можно воспользоваться переменными окружения.

Так переменная $env:COMPUTERNAME хранит имя компьютера, а $env:USERDOMAIN — имя домена, в котором этот компьютер находится. Объединив обе переменные мы получим полное доменное имя компьютера:

$name = ″$env:COMPUTERNAME.$env:USERDOMAIN″

FQDN с помощью пееременных окружения

 

Также для получения FQDN можно использовать WMI, а точнее класс Win32_ComputerSystem, в котором хранится информация о системе. Для начала получим все свойства этого класса и поместим их в переменную:

$systeminfo = Get-WmiObject -Class Win32_ComputerSystem

А затем возьмем нужные нам свойства, объединим их и получим имя компьютера:

$name = ″{0}.{1}″ -f $systeminfo.DNSHostName, $systeminfo.Domain

FQDN с помощью WMI

 

И третий способ — это воспользоваться статическими методами GetHostByName или GetHostEntry класса System.Net.Dns. Так получить FQDN текущего хоста можно всего одной командой:

$name = [System.Net.Dns]::GetHostByName(″localhost″)

FQDN с помощью статических методов

 
 
Комментарии
Максим

Привет,
в последнем примере ошибка. Написано: $name = [System.Net.Dns]::GetHostByName(″localhost″)
Должно быть $name = [System.Net.Dns]::GetHostByName(«localhost»).hostname

Ответить