christgau / wsdd

A Web Service Discovery host daemon.
MIT License
841 stars 99 forks source link

uuid issues #53

Closed jamaroney closed 4 years ago

jamaroney commented 4 years ago

Although wsdd works on my FREEBSD 12.1 server, when I power up some of my Win 10 PCs on the network, I get various log entries on the server (edited for brevity):

when PC1 starts: WARNING: invalid resolve request: address (uuid:e3248000-80ce-11db-8000-001ba928aac9) does not match own one (urn:uuid:6aec5bb6-e93b-547a-a10a-bb95193cb0a5)

when PC2 starts: WARNING: invalid resolve request: address (urn:uuid:00000000-0000-1000-8000-d8492f666d3a) does not match own one (urn:uuid:6aec5bb6-e93b-547a-a10a-bb95193cb0a5)

The first uuid differs depending on the PC I power up, but the second uuid (6aec5bb6....) is always the same.

I do not know what this means, or how I can get rid of these messages.

jamaroney commented 4 years ago

Problem solved (at least for my system):

In wsdd.py I eliminated lines 725-729:

    if not addr.text == args.uuid.urn:
        logger.warning(
            'invalid resolve request: address ({}) does not '
            'match own one ({})'.format(addr.text, args.uuid.urn))
        return None

No more incessant warnings, and all works fine on my home network.

christgau commented 4 years ago

[...] I get various log entries on the server (edited for brevity):

when PC2 starts: WARNING: invalid resolve request: address (urn:uuid:00000000-0000-1000-8000-d8492f666d3a) does not match own one (urn:uuid:6aec5bb6-e93b-547a-a10a-bb95193cb0a5)

The first uuid differs depending on the PC I power up, but the second uuid (6aec5bb6....) is always the same. I do not know what this means, or how I can get rid of these messages.

TL;DR: Everything is ok, ignore those to-be-calmed messages.

Long version: The second UUID is the one used by wsdd to identify the host it is running on. The id is derived from the hostname and as long that one does not change (or the uuid is specified by the command line), the second uuid wont as well. The first UUID is the one that Windows is trying to "resolve". In the WSD protocol message flow, the Resolve message is a multicast message to all (WSD) hosts and is therefore also received by wsdd on your FreeBSD box. The protocol further requires wsdd to send a ResolveMatch message, in case the UUID in the Resolve message matches the own one. Otherwise nothing is to be done. So, this is all valid behavior that causes the (nasty) messages in the log.

However, I see that those messages, which are originally intended for debugging purposes, unnecessarily fill up the log. I'll reduce the logging priority any time soon.

Thanks for pointing that out.

jamaroney commented 4 years ago

Thanks. There end up being a lot of those messages, which appear each time one of my networked PCs is powered up (usually 3 similar messages for each powerup). And the upper-case "WARNING" makes them seem quite ominous!