Я не уверен, возможно ли это, но есть ли способ обновить IP-адрес DNS-сервера на всех клиентах, не делая это вручную для каждой машины?
Все клиенты имеют статические IP-адреса, а DNS-сервер находится в коробке Fedora с использованием привязки. Все клиенты - это unix-боксы.
ОБНОВЛЕНИЕ: как бы вы сделали это для окна Windows?
Что ж, если эти клиенты не являются серверами, может быть, сейчас самое время подумать о развертывании DHCP, если вы еще не думали об этом? Затем вы просто измените его на DHCP-сервере и перезагрузите клиентов или заставите клиентов запустить sudo dhclient
.
Я бы написал сценарий для изменения /etc/resolv.conf, используя мой любимый язык сценариев, и выполнял бы его на каждой удаленной машине с SSH.
Предположим, что старый DNS-сервер - 192.168.1.1, а новый - 192.168.100.100:
perl -pi -e's/192.168.1.1/192.168.100.100/' /etc/resolv.conf
Просто выполните это на удаленных машинах, используя SSH, и вы будете золотыми. (Надеюсь, у вас настроена аутентификация на основе сертификатов, чтобы вы не вводили пароли для подключения к каждому хосту.)
Изменить: в окне Windows
Команда "netsh" - ваш друг. Предполагая, что сетевое соединение по-прежнему имеет имя «Подключение по локальной сети», вы можете:
netsh interface ip set dns name="Local Area Connection" static 192.168.100.100 primary
Это установит основной DNS-сервер, указанный в соединении «Подключение по локальной сети».
Если соединение было переименовано, вам, вероятно, лучше сбросить конфигурацию с помощью netsh interface ip dump
, анализируя этот вывод и используя netsh, чтобы внести необходимые изменения.
В Windows, если у вас есть домен, вы можете отправить новый DNS-сервер с помощью групповой политики. Что странно, он не отображает новое значение в ipconfig, но все равно будет использовать его для фактического разрешения имен (вы можете проверить это с помощью nslookup).