private string QueryHostname(AmsNetId amsNetId)
        {
            using (var client = new TcAdsClient(AdsClientSettings.Default))
            {
                client.Connect(amsNetId, AmsPort.SystemService);

                var stream = new AdsStream(256);
                var error  = client.TryRead(702 /*SYSTEMSERVICE_IPHOSTNAME*/, 0, stream, out int readBytes);
                if (error != AdsErrorCode.NoError)
                {
                    _logger.LogWarning("Error {error} query hostname for {amsNetId}.", error, amsNetId);
                    return(null);
                }

                var hostname = Encoding.GetEncoding(1252).GetString(stream.GetBuffer(), 0, readBytes - 1);
                return(hostname);
            }
        }