Где Windows хранит IP-адреса
В целях необходимости сегодня была покорена очередная страшная загадка Windows.
Windows хранит свой IP в реестре (кто бы сомневался), по адресу:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{нечитаемый_идентификатор}
Сетевые настройки, вписанные в эту ветку, применяются сразу после отключения-включения сетевого подключения (пользуясь терминологией Microsoft :) или, как вариант, после перезагрузки компьютера.
Вот краткое содержание ключей:
Имя ключа | Тип | Содержимое |
---|---|---|
DefaultGateway | REG_MULTI_SZ | Шлюз по умолчанию. |
DhcpServer | REG_SZ | Сервер DHCP. |
Domain | REG_SZ | Похоже, имя текущего домена. Надо проверить. |
EnableDHCP | REG_DWORD | Включен ли DHCP. Как обычно, 0 - выключен, 1 - включен. |
IPAddress | REG_MULTI_SZ | IP-адрес. Если включен DHCP, то равен 0.0.0.0 |
DhcpIPAddress | REG_SZ | IP-адрес, определённый по DHCP. Типа локального кэша адреса. |
NameServer | REG_SZ | IP-адреса DNS. Вводить в одну строку, через запятую и без пробелов. |
SubnetMask | REG_MULTI_SZ | Маска подсети. |
T1 и T2 | REG_DWORD | Интересные IP-адреса, выясняю что это. Единственное место, где адреса записаны в нормальном для компьютера виде. |
Текущие настройки сети Windows хранит в другой ветке реестра, а именно:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\{нечитаемый_идентификатор}\Parameters\Tcpip
Различия веток принципиальные: на основе данных из первой ветки система настраивает сетевое подключение, после чего записывает информацию о применённых настройках во вторую ветку, для дальнейшего использования в других программах/службах.
нечитаемые_идентификаторы представляют собой дикую смесь букв-цифр и в ветке
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
их может быть несколько, поэтому нужный предлагаю определять опытным путём.