Following problem: Problem Description
After some runtime minidlna does not receive SSDP M-Search from the network. Steps to Reproduce
start minidlna.service
wait.
Check minidlna.log (with SSDP set to debug)
During the first minutes, ssdp packets are received.
Suddenly, no ssdp packets are received anymore.
Expected Results
ssdp is always received.
Actual results
no ssdp packets received. Therefore, no receivers can play media from minidlna.
Or to be precise: If the receiver already has a playlist with tracks from the server, it can still PLAY, but it can not find the server and show a list of available tracks.
Information
FreedomBox version: stable
Hardware: Olinuxino Lime 2
How did you install FreedomBox?: guess this machine got an image
Additional info: stoping firewalld fixes the issue.
What happend on my network:
Freedombox is attached to a FritzBox 7560 via Ethernet.
Clients use WLAN in almost all cases.
Apparently, the FritzBox will only route the first multicast packets from WLAN to ethernet. It will stop routing after some minutes.
It seems to be using IGMP for routing multicast messages.
So, after enabling IGMP in firewalld:
firewall-cmd --zone=internal --add-protocol=igmp
minidlna discovery started working flawlessly.
I’m not entirely sure why this FritzBox is behaving like that. I have another freedombox setup at another place with FritzBox 7490, ethernet and multiple WLAN-Repeaters. There, IGMP is not enabled in firewalld on the freedombox.
This sounds familiar without the Fritz box too. Sometimes mini dlna does not respond to my client and I have never been able to see a new file added without restarting mini dlna.
My FB is connected by Ethernet to a power line Ethernet transceiver.
Thank you for this information. Your problem seems to be the same one I have. Just to be sure, I should ssh into the Freedombox and then run (perhaps as sudo):
The --zone=internal part means that this change will only be allowed on your home network and won’t change the behavior on the external Internet side.
Try it without the --permanent if you want to try it temporarily first. That will not last rebooting unless you make it --permanent.