Tested on a pc with hardware interfaces: eth0 and tap0.
Jmmdns was using a network topology listener to individually activate listeners for each internal dns instance (of which there are four, eth0-ipv4, eth0-ipv6, tap0-ipv4, tap0-ipv6). The resulting list of service infos (once I worked around the uniqueness problem mentioned in another bug report) was showing some spurious results. Going back to watching what happens in impl/ServiceInfo.java's updateRecord() method highlighted some strange things happening (hopefully the following is not too confusing):
****************************************************************************
Activating listener: _ros-master._tcp.local.
************ Discovered Services ************
[+] NetworkInterface: fe80:0:0:0:224:1dff:fe23:91c9%2
Adding service listener '_ros-master._tcp.local.'
[+] NetworkInterface: 192.168.10.204
Adding service listener '_ros-master._tcp.local.'
[+] NetworkInterface: 192.168.1.3
Adding service listener '_ros-master._tcp.local.'
[+] NetworkInterface: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
Adding service listener '_ros-master._tcp.local.'
[+] Service : ConcertMaster._ros-master._tcp.local.
[+] Service : ConcertMaster._ros-master._tcp.local.
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type srv
server: snorriheim.local.
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type srv
server: snorriheim.local.
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type ipv6
name: snorriheim.local. [snorriheim.local.]
Address: fe80:0:0:0:224:1dff:fe23:91c9
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type ipv6
name: snorriheim.local. [snorriheim.local.]
Address: fe80:0:0:0:224:1dff:fe23:91c9
[+] Service : ConcertMaster._ros-master._tcp.local.
UpdateRecord:
jmdns: 192.168.10.204
type srv
server: snorriheim.local.
UpdateRecord:
jmdns: 192.168.1.3
type srv
server: snorriheim.local.
[+] Service : ConcertMaster._ros-master._tcp.local.
UpdateRecord:
jmdns: 192.168.10.204
type ipv6
name: snorriheim.local. [snorriheim.local.]
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
UpdateRecord:
jmdns: 192.168.1.3
type ipv6
name: snorriheim.local. [snorriheim.local.]
Address: fe80:0:0:0:224:1dff:fe23:91c9
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type ipv6
name: snorriheim.local. [snorriheim.local.]
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type ipv6
name: snorriheim.local. [snorriheim.local.]
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
UpdateRecord:
jmdns: 192.168.10.204
type ipv4
name: DesignKui-iPad.local. [snorriheim.local.]
Address: 192.168.10.91
UpdateRecord:
jmdns: 192.168.10.204
type ipv6
name: DesignKui-iPad.local. [snorriheim.local.]
Address: fe80:0:0:0:2a6a:baff:fe21:b803
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type ipv4
name: DesignKui-iPad.local. [snorriheim.local.]
Address: 192.168.10.91
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type ipv4
name: DesignKui-iPad.local. [snorriheim.local.]
Address: 192.168.10.91
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type ipv6
name: DesignKui-iPad.local. [snorriheim.local.]
Address: fe80:0:0:0:2a6a:baff:fe21:b803
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type ipv6
name: DesignKui-iPad.local. [snorriheim.local.]
Address: fe80:0:0:0:2a6a:baff:fe21:b803
************ Discovered Services ************
UpdateRecord:
jmdns: 192.168.1.3
type ipv4
name: snorriheim.local. [snorriheim.local.]
Address: 192.168.1.3
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type ipv6
name: fe80:0:0:0:224:1dff:fe23:91c9%2.local. [snorriheim.local.]
Address: fe80:0:0:0:224:1dff:fe23:91c9
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type ipv6
name: fe80:0:0:0:224:1dff:fe23:91c9%2.local. [snorriheim.local.]
Address: fe80:0:0:0:224:1dff:fe23:91c9
UpdateRecord:
jmdns: 192.168.10.204
type ipv4
name: snorriheim-local.local. [snorriheim.local.]
Address: 192.168.10.204
UpdateRecord:
jmdns: fe80:0:0:0:224:1dff:fe23:91c9%2
type ipv6
name: fe80:0:0:0:7c13:7ff:fe61:5d5a%5.local. [snorriheim.local.]
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
UpdateRecord:
jmdns: fe80:0:0:0:7c13:7ff:fe61:5d5a%5
type ipv6
name: fe80:0:0:0:7c13:7ff:fe61:5d5a%5.local. [snorriheim.local.]
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: 192.168.1.3
Address: fe80:0:0:0:224:1dff:fe23:91c9
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: fe80:0:0:0:224:1dff:fe23:91c9
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: fe80:0:0:0:224:1dff:fe23:91c9
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
************ Discovered Services ************
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: 192.168.1.3
Address: fe80:0:0:0:224:1dff:fe23:91c9
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: fe80:0:0:0:224:1dff:fe23:91c9
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
Service Info:
Name : ConcertMaster
Type : _ros-master._tcp.local.
Port : 8883
Address: fe80:0:0:0:224:1dff:fe23:91c9
Address: fe80:0:0:0:7c13:7ff:fe61:5d5a
****************************************************************************
Some odd things happening above.
1) A service info based on eth0-ipv6 was providing ipv6 addresses for each interface.
2a) Update record always sets the _server variable to snoriheim.local. for all service info's regardless of the jmdns instance.
2b) This means that most updates to ipv4 (TYPE_A) and ipv6 (TYPE_AAAA) are ignored in the
if (rec.getName().equalsIgnoreCase(this.getServer())) {
mostly fails.
3) The DesignKui-iPad.local. is coming from where? It's a server name (not localhost) that isn't providing any of the listened to services.
I was expecting that an updateRecord would only add addresses that also correspond to it's jmdns instance's getHostAddress() so tried to work towards that, but got lost in the DNS class maze. At any rate, the update record seems like its confusing itself pretty badly, which is showing up in the list of discovered services.
If you need some more test results or a program, let me know and I'll put something together.
jHLcf4 <a href="http://yqkblmadbigt.com/">yqkblmadbigt</a>, [url=http://yvpwqzplqjeq.com/]yvpwqzplqjeq[/url], [link=http://pdmmowrehzzq.com/]pdmmowrehzzq[/link], http://icuztbmbaapi.com/
d4lFM4 <a href="http://fobhkiqnjdwr.com/">fobhkiqnjdwr</a>, [url=http://jigxqubcvxlq.com/]jigxqubcvxlq[/url], [link=http://avvamvbslssh.com/]avvamvbslssh[/link], http://eolantwvrwlu.com/
NZ3D5a <a href="http://artxdigbjqgc.com/">artxdigbjqgc</a>, [url=http://pteahbizhdud.com/]pteahbizhdud[/url], [link=http://yeoqukkgorre.com/]yeoqukkgorre[/link], http://svknwayltszg.com/