Мой сервер имеет следующие IP-адреса:
127.0.0.1
192.168.100.103
208.nnn.nnn.180
199.nnn.nnn.29
Это полное доменное имя mymachine.example.com. Однако вызов Dns.GetHostEntry(Dns.GetHostName()).HostName
возвращает только mymachine, а не полное доменное имя. Я бы хотел, чтобы он вернул полное доменное имя и подумал, что если я смогу изменить первичный DNS-суффикс (с нуля на example.com), я буду дома бесплатно.
Но это действующий производственный сервер. Я не хочу вносить это изменение, если оно приведет к перезагрузке.
Для изменения суффикса DNS не потребуется перезагрузка, но вы имеете в виду изменение суффикса поиска или «Суффикса для этого соединения»?
Я думаю, что то, что вы хотите достичь, не будет исправлено этим ... вы, вероятно, получаете только имя хоста, а не полное доменное имя в вашем вызове.
Попробуйте вместо этого:
System.Net.Dns.GetHostEntry("").HostName
Вы можете попробовать одно из решений, представленных на переполнение стека для получения полного доменного имени:
https://stackoverflow.com/questions/804700/how-to-find-fqdn-of-local-machine-in-c-net
Для изменения основного DNS-суффикса компьютера требуется перезагрузка. Изменение DNS-суффикса для конкретного подключения не требует перезагрузки.