private void Handle(DomainMessage message) { var srv = message.Answers.FirstOrDefault(a => a.Type == RRType.SRV && a.Class == Class.IN && a.Name.EndsWith($"{_serviceType}.{_domain}.")); if (srv == null) { return; } _logger.Debug($"Got\n{message}"); var record = (SRVRecord)srv.Record; var service = new NetworkService { Name = srv.Name.Split('.')[0], Type = _serviceType, Domain = _domain, Port = record.Port, HostName = record.Target }; _logger.Info($"AddOrUpdate {service.Name}, ttl: {srv.Ttl}"); _services.AddOrUpdate(service.Name, service, (int)srv.Ttl); }