2015-10-31 12 views
1

Я использую JmDNS для регистрации услуги в нескольких машинах, находящихся в одной и той же подсети в моей сети. Тем не менее, каждый раз, когда вторая машина поднимается и пытается зарегистрировать услугу, ее имя автоматически изменяется на нечто вроде «service_name (number)». Я думаю, что так происходит, что имя службы может оставаться уникальным в сети, и при его разрешении нет конфликта. Однако я думал, что нет способа зарегистрировать услугу в сети с тем же именем и группировать IP-адреса компьютеров, которые отвечают за эту же службу. Например: у меня есть три машины в моей сети, и все они будут предоставлять сервис X. Поэтому, когда они регистрируют службу, вместо того, чтобы служба X меняла свое имя на «X (2)» и «X (3) «все они остаются« X », но они кажутся группой компьютеров или IP-адресов, которые предоставляют одну и ту же услугу« X ».JmDNS - Зарегистрировать ту же услугу на нескольких машинах

Я знаю, что я могу использовать прослушиватель служб и делать что-то вроде проверки регулярного выражения, если имя службы каким-то образом связано с «X», например «X (2)», то я добавляю свой IP-адрес к своему карта. Но я хотел сделать это, используя только библиотеку (если возможно, конечно), а не вручную.

Спасибо.

ответ

0

Правильный способ - установить X как имя компьютера, все под управлением Y. Apple's Bonjour naming convention очень полезно.

Вот снимок (с помощью браузера Bonjour) того, что дерево устройств в одной сети. Обратите внимание, как у каждого устройства есть свое имя, а Ip. Кроме того, вы можете установить конкретный идентификатор (или другие свойства), чтобы легче идентифицировать каждое устройство.

enter image description here