I've got a printer connected to the USB port of Airport Express.
It's designated IP, 192.168.15.4, does answer to ping. But the printer service on port 9100 won't answer.
I then used Avahi Browser to investigate the issue, and discovered another IP in the 169.254.xxx.xxx range was being shown as the printer. But then, that address wouldn't even ping. Then I found a solution: I could enable an local-link ip in the same range with this command:
sudo avahi-autoipd --force-bind wlp0s0
The wlp0s0 is my wifi interface. Then, the local-link IP of the Airport not only pings but also works if the printer is set to socket://169.254.xxx.xxx:9100
! Yay!
Problem is: I got that command stuck in a terminal. If I ^C it, the magic dispells and the printer no longer works. Even worse, I'd have to always open a terminal and enter password. So it's a kind of lame workaround.
Is there any way of making the effects of that command line permanent?
I'm running Manjaro KDE.