I'm trying to setup newtek NDI for video streaming on local network. NDI uses mDNS for service discovery as described here. I already have NDI services running on windows machine and iOS device and I'm trying to run another service on linux machine (Slackware 15.0), where all devices are on the same LAN. The router (RT-AX88U) has the Domain Name configured to 'local'. There are no firewall rules configured on linux machine:
root@thinkpad-x1:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
From windows machine (where mDNS is handled via bonjour) I can see NDI services running on all three devices and I can connect to all of them without issues (for example via OBS with obs-ndi plugin, via NDI studio monitor etc.). From linux machine only NDI services running on windows and iOS device are discoverable:
root@thinkpad-x1:~# avahi-browse _ndi._tcp
+ wlan0 IPv6 OLAF (Olaf) _ndi._tcp local
+ wlan0 IPv4 OLAF (Olaf) _ndi._tcp local
+ wlan0 IPv4 MD1UMUTC (OBS) _ndi._tcp local
So here is the problem - I need to discover (and connect to) the NDI service running on linux machine from the machine itself. Here are avahi configuration files
/etc/avahi/avahi-daemon.conf:
root@thinkpad-x1:~# cat /etc/avahi/avahi-daemon.conf
[server]
host-name=thinkpad-x1
domain-name=local
#browse-domains=0pointer.de, zeroconf.org
use-ipv4=yes
use-ipv6=yes
ratelimit-interval-usec=1000000
ratelimit-burst=1000
[wide-area]
enable-wide-area=yes
[publish]
#disable-publishing=no
#disable-user-service-publishing=no
#add-service-cookie=no
#publish-addresses=yes
publish-hinfo=no
publish-workstation=yes
#publish-domain=yes
/etc/nsswitch.conf:
root@thinkpad-x1:~# cat /etc/nsswitch.conf
passwd: compat
group: compat
#hosts: files dns
hosts: files mdns4_minimal [NOTFOUND=return] dns myhostname
networks: files
services: files
protocols: files
rpc: files
ethers: files
netmasks: files
netgroup: files
bootparams: files
automount: files
aliases: files
/etc/mdns.allow:
root@thinkpad-x1:~# cat /etc/mdns.allow
.local.
.local
So the question is how do I configure avahi-daemon to also discover services running on localhost?