MiniDLNA startet, ist im Netz aber unsichtbar

Yoda

[Linux|FreeBSD] - User
Hallo Liebe Leute,

ich habe mir einen BluRay-Player gekauft, der leider kein CIFS unterstützt.
Stattdessen ist er mit einem DLNA-Client (wie die meisten heutzutage) versehen worden.

Deshalb habe ich auf meinem FreeBSD-Server MiniDLNA installiert und konfiguriert.
MiniDLNA startet, ist im Netz aber unsichtbar.
In den Logs ist nichts negatives zu finden...

Da ich mit DLNA noch nie etwas zu tun hatte, habe ich mir auf meinem Laptop mit Mint das UPnP-Programm "uShare" installiert. Das funktioniert prima aber leider nur lokal...?

Jetzt weiß ich nicht wo das eigentliche Problem liegt.

Der Laptop ist per WLAN ans LAN angeschlossen; der Server per 1GB-Ethernet.

Mit netstat kann man aber sehen, dass hier die Ports nicht nur lokal offen sind:

Linux-Laptop:
# netstat -antp | fgrep ushare
# service ushare start
* Starting uShare UPnP A/V & DLNA Media Server: ushare [ OK ]
# netstat -antp | fgrep ushare
tcp 0 0 0.0.0.0:1337 0.0.0.0:* LISTEN 7486/ushare
tcp 0 0 0.0.0.0:49153 0.0.0.0:* LISTEN 7486/ushare

FreeBSD-Server:
# netstat -an | fgrep tcp4 | fgrep 8200
tcp4 0 0 *.8200 *.* LISTEN

Probeweise habe ich auch die FireWall komplett auf gemacht, hat aber nichts geändert.

Weiß einer von Euch woran das liegt?

Gruß
Yoda
 
Hallo,

Also ich habe Minidlna auch auf meinem NAS laufen. Das klappt eigentlich prima. Gleich ein paar Fragen:
  • Kann dein Player wirklich DLNA?
  • Auf dem Linux Laptop mal VLC anschmeissen und dort über "Ctrl" + "l" => linke Seite => Lokales Netzwerk => Universal Plug'n Play testen. (Es dauert ein paar Sekunden (ca. 5-10), bis er mein NAS gefunden hat.)
  • Zeig mal deine Minidlna Konfiguration.
Gruss
 
Hi Foxit,

hier die Netzwerk-CFG vom FreeBSD-Server:

# ifconfig -a
re0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
ether bc:ae:c5:8c:ba:70
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (10baseT/UTP <half-duplex>)
status: no carrier
sk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=80009<RXCSUM,VLAN_MTU,LINKSTATE>
ether 00:17:9a:bc:d5:91
inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
sk1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=80009<RXCSUM,VLAN_MTU,LINKSTATE>
ether 00:17:9a:bf:bf:19
inet 192.168.9.1 netmask 0xffffff00 broadcast 192.168.9.255
inet 192.168.9.100 netmask 0xffffffff broadcast 192.168.9.100
inet 192.168.9.101 netmask 0xffffffff broadcast 192.168.9.101
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
inet 127.0.0.1 netmask 0xff000000
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>


In meiner CFG-Datei (siehe Anhang) steht
network_interface=sk0

Im Server stecken 2 verwendete NICs, "sk1" ist am Router und "sk0" ist am LAN.
Ich will DLNA nur im LAN haben, deshalb habe ich dort "sk0" angegeben.

Und ja, die Tests habe ich alle mit VLC "Universal Plug'n Play" durchgeführt und das hat ja auf dem Linux auch funktioniert.
Dort sehe ich das Windows-Ultrabook von meinem Sohn und mein eigenes Linux-uShare aber nicht den FreeBSD-MiniDLNA...?

So, ich muss jetzt zur Arbeit und kann erst heute Abend wieder hier reinschauen.

Gruß
 

Anhänge

  • minidlna.conf.txt
    3,8 KB · Aufrufe: 583
Also ich hab deine Config mal verglichen mit meiner. Hier die Unterschiede (folgend meine Config):
Code:
inotify=yes
serial=987654321
minissdpdsocket=/var/run/minissdpd.sock
friendly_name=DLNA
Ich denke die Option inotify=yes könnte es sein. Diese ist bei dir auf no. Auch minissdpdsocket ist nicht angegeben. Ich denke das sollte er aber automatisch finden. Ich würde jetzt folgendes machen:
Code:
kill -9 $(pgrep minidlnad)
kill -9 $(pgrep minidlnad)
ps aux | grep minidln
rm /var/db/minidlna/files.db
service minidlna start
Alle Prozesse von minidlna killen und schauen, dass wirklich nichts mehr läuft. Danach das DB file löschen und minidlna wieder starten.

Gruss
 
Hallo Thorwin,
wenn ich http://192.168.2.1:8200/ aufrufe, dann sehe ich die von Dir beschriebene Übersicht, das klappt alles auch in den Logs steht die gleiche Anzahl an gefundenen Filmen.
Weil das alles funktioniert und im Log keine Fehler sind, glaube ich auch, dass es eher am Netz liegt...

Hallo Foxit,
mit inotify=yes wird eingeschaltet, dass MiniDLNA selbstständig neue Filme im Verzeichnis erkennt und in den Index mit aufnimmt. Das hatte ich auch schon an.

Egal, ich hab es aber trotzdem mal genauso gemacht wie Du es beschrieben hast:
# ps alx | fgrep minidlnad
# killall -9 minidlnad
# ps alx | fgrep minidlnad
# vi /usr/local/etc/minidlna.conf
# rm /var/db/minidlna/files.db
# service minidlna start ; tail -f /var/log/minidlna.log

ich habe dann auch auf der Web-Oberfläche sehen können, wie er die Filme nach und nach eingelesen hat, es sah alles gut aus.
Der Socket wurde aber nicht angelegt.
Aber leider hat VLC ihn wieder nicht gefunden...
Keine Änderung.
 
Hat einer noch eine Idee?

Wenn es tatsächlich am Netz liegt, dann bin ich ratlos, da alles sonst prima funktioniert:
- SMB/CIFS
- IMAP/IMAPS
- HTTP/HTTPS
- FTP
- SCP/SFTP/SSH

Auch UPnP, nur nicht vom FreeBSD-Rechner...?

Wenn es doch an der Software liegt, dann könnte ich heute Abend mal die uShare-Binär-Dateien vom Linux-Rechner packen und auf versuchen sie auf dem FreeBSD-Server zu starten. Sollte es am MiniDLNA liegen, dann müsste das ja gehen...?
 
Hallo Yoda,
ich hatte ein ähnliches Problem.
Bei mir war minidlna am SMART-TV unsichtbar, ich hatte dann (weiß nicht mehr wo) einen Beitrag zu diesem Problem ergoogled.


enable_tivo=yes
# notify interval in seconds. default is 895 seconds.
notify_interval=10

Seit dieser Einstellung, findet mein SMART-TV auch den minidlna-Server.
 
Hallo Yoda,
ich hatte ein ähnliches Problem.
Bei mir war minidlna am SMART-TV unsichtbar, ich hatte dann (weiß nicht mehr wo) einen Beitrag zu diesem Problem ergoogled.


enable_tivo=yes
# notify interval in seconds. default is 895 seconds.
notify_interval=10

Seit dieser Einstellung, findet mein SMART-TV auch den minidlna-Server.

Danke für den Tip!
Aber leider hat sich auch damit bei mir nichts geändert... :-(
 
Hallo strike,

ich hab dafür auch mal eine eigene Jail gebaut und konfiguriert, dort ein paar Filme rein kopiert und dann den MiniDLNA restartet.
Alles lief gut, Filme wurden eingelesen, keine Fehler im Log und WebOberfläche ging sofort auf...
Aber leider hat VLC auch ihn nicht gefunden... :-(

Vielleicht sollte ich den neuen LG BP420 (für den ich das mache) zurück schicken und mir den alten LG BD670 holen, der kann noch CIFS...?
Auch der Nachfolger vom LG BD670, der LG BP550 kann kein CIFS mehr...! :-(
Dann muss ich mich mit dem zurück schicken aber beeilen, am Dienstag laufen die 14 Tage Rückgabefrist ab.
Aber der alte hat nicht so eine gute Bildqualität...

Ich verstehe es nicht, DLNA geht mit Linux und Windows aber nicht mit FreeBSD... :-(

Auch ein separater Hardware-DLNA-Server würde Probleme aufwerfen, da ich dort nur ein paar HDDs rein bekomme, in meinem Server liegen aber ca. 10 TB an Filmen rum...

Gruß
 
Ich bin mir jetzt relativ sicher, dass das Problem bei der Firewall liegt.
Auf dieser Seite http://blog.up-link.ro/freebsd-how-...way-device-igd-with-miniupnp-and-freebsd-9-0/
habe ich gesehen, dass man die FW auch entsprechend konfigurieren muss...?

Dort ist eine Beispiel-CFG zu sehen, bei der man die externe NIC als NAT-IF konfigurieren muss, so ist das bei mir auch... nur befürchte ich, dass die DLNA-Ausgabe dann nur über diese exterene NIC funktioniert...?
Genau das will ich aber nicht. Und wenn das so ist, dann würde es auch das seltsame Verhalten erklären, welches ich bei mir beobachten kann...

Weiß einer wie ich die FW entsprechend anpassen muss, dass sie wie bisher als NAT-er läuft aber die DLNA-Clients ihre Daten an der internen NIC bekommen?

Hier meine FW-Einstellungen:

diese Konfig ist nur für eine Jail mit Minecraft-Server und die IP 192.168.9.100 wird nur von dieser Jail verwendet (sollte hier das DLNS eigentlich nicht tangieren):
# vi /etc/pf.conf
if=sk1
j1_tcp="{8801}"
j1_udp="{8801}"
jails="{10.0.0.0/24}"
ext_ip=192.168.9.100
maincraft=10.0.0.1
rdr pass on $if proto tcp from any to $if port $j1_tcp -> $maincraft
rdr pass on $if proto udp from any to $if port $j1_udp -> $maincraft
nat on $if proto {tcp udp icmp} from $jails to any -> $ext_ip


# fgrep firewall /etc/rc.conf
firewall_enable="YES" # Set to YES to enable firewall functionality
firewall_type="open" # Firewall type (see /etc/rc.firewall)
firewall_quiet="NO" # Set to YES to suppress rule display
firewall_logging="NO" # Set to YES to enable events logging
firewall_logif="NO" # Set to YES to create logging-pseudo interface
firewall_flags="" # Flags passed to ipfw when type is a file
firewall_nat_enable="YES" # Enable kernel NAT (if firewall_enable == YES)
firewall_nat_interface="sk1" # Public interface or IPaddress to use
firewall_nat_flags="" # Additional configuration parameters
natd_enable="YES" # Enable natd (if firewall_enable == YES).

Die /etc/rc.firewall wurde nicht verändert und ist noch im Originalzustand.

Es stecken zwei NICs im Server:
sk1 -> extern -> Internet -> 192.168.9.1 + 192.168.9.100
sk0 -> intern -> LAN -> 192.168.2.1 (CIFS+DLNA)


Danke und Gruß
Yoda
 
Im ersten Posting hast du geschrieben, dass du das Problem auch hast, wenn du die Firewall deaktiviert hast. Schalte sie mal aus oder mach ein "set skip on sk0" zum testen.
 
Hallo,

kann es sein, dass das ähnlich wie DHCP im Jail nur schwer zu implementieren ist (ich habe den unbound bis heute nicht im Jail laufen).
Magst du "testweise" mal das Ganze auf dem Host selbst installieren?

Gruß
Markus
 
Hi
du schreibst das du den BR Player via WLAN angeschlossen hast? Ist der im gleichen Subnetz wie der MiniDLNA? Das geht aus den geposteten Informationen nicht hervor (oder ich habs überlesen). Soweit ich weiß funktioniert DLNA (das ja auf UPNP basiert) nicht über Subnetzgrenzen hinweg. Wenn da also was "im Weg" ist, klappt es nicht. Ich habe das schon mehrfach versucht und nicht hinbekommen. (Mein Mediacenter ist in einem anderen Subnetz als mein WLAN Radio, da ich WiFi und internes Netz getrennt habe). Falls das jemand hinbekommen hat: Ich bin für Infos dankbar!

Related aber hier nicht ganz zutreffend: Desweiteren funktioniert es nicht in einer jail mit IP Alias, da diese die Subnetzmaske 255.255.255.255 hat -> Programme darin können keine Broadcasts senden. Um das zu realisieren wären vnet/vimage jails eine Möglichkeit, bei mir funktioniert das, allerdings erfordert es einiges an Aufwand da man einen custom Kernel bauen und die vnet jails konfigurieren muß.

Grüße,
errorsmith
 
Hallo Foxit,

Im ersten Posting hast du geschrieben, dass du das Problem auch hast, wenn du die Firewall deaktiviert hast. Schalte sie mal aus oder mach ein "set skip on sk0" zum testen.

Ja, ich hatte sie wohl nicht richtig abgeschaltet, sondern nur alle Regeln entfernt und diese drei (als "Kurzschluss") hinzugefühgt:
ipfw add 00110 allow ip from any to any via sk0
ipfw add 00111 allow ip from any to any via sk1
ipfw add 00511 allow ip from any to any

Nachdem ich "set skip on sk0" eingegeben hatte, ging es immer noch nicht besser; keine Änderung.
 
Hallo Markus,

Hallo,

kann es sein, dass das ähnlich wie DHCP im Jail nur schwer zu implementieren ist (ich habe den unbound bis heute nicht im Jail laufen).
Magst du "testweise" mal das Ganze auf dem Host selbst installieren?

Gruß
Markus

Ja, das stimmt.
Ich habe den MiniDLNA in einer Jail zum laufen bekommen, war aber auch nicht im Netz sichtbar.

Den uShare von Linux habe ich in der Jail nicht zum laufen bekommen, weil ich dort keine Linux-Umgebung installieren konnte. Der Port linux_base-f10 braucht wohl eine Native umgebung.

Meine nächte Idee wäre ein DLNA-Sytem in einer VirtualBox zu installiern...
 
Hallo Errorsmith,

Hi
du schreibst das du den BR Player via WLAN angeschlossen hast? Ist der im gleichen Subnetz wie der MiniDLNA? Das geht aus den geposteten Informationen nicht hervor (oder ich habs überlesen). Soweit ich weiß funktioniert DLNA (das ja auf UPNP basiert) nicht über Subnetzgrenzen hinweg. Wenn da also was "im Weg" ist, klappt es nicht. Ich habe das schon mehrfach versucht und nicht hinbekommen. (Mein Mediacenter ist in einem anderen Subnetz als mein WLAN Radio, da ich WiFi und internes Netz getrennt habe). Falls das jemand hinbekommen hat: Ich bin für Infos dankbar!

Related aber hier nicht ganz zutreffend: Desweiteren funktioniert es nicht in einer jail mit IP Alias, da diese die Subnetzmaske 255.255.255.255 hat -> Programme darin können keine Broadcasts senden. Um das zu realisieren wären vnet/vimage jails eine Möglichkeit, bei mir funktioniert das, allerdings erfordert es einiges an Aufwand da man einen custom Kernel bauen und die vnet jails konfigurieren muß.

Grüße,
errorsmith

Nein ich hatte den BR-Player per Kabel (LAN) angeschlossen. Aber weil es ein Weihnachtsgeschenk werden soll, habe ich ihn wieder eingepackt und mit dem VLC getestet.

Alles im gleichen SubNetz (192.168.2.x/24).
Der VLC läuft aber auf meinem Laptop und der ist per WLAN angeschlossen.
Mein Netzaufbau sieht wie folgt aus (es ist hier etwas umständlich darzustellen):

"Internet" -> Unitymedia-Roter (192.168.9.x/24) -> sk1 (Server: 192.168.9.1/24) -> sk0 (Server 192.168.2.1/24) ...

... sk0 (Server 192.168.2.1/24) -> WLAN-Roter -> 192.168.2.x/24 (Laptop - WLAN) -> VLC
... sk0 (Server 192.168.2.1/24) -> LAN-Switch -> 192.168.2.x/24 (Rechner von meiner Frau + die von meinen Kindern)
... sk0 (Server 192.168.2.1/24) -> LAN-Switch -> 192.168.2.x/24 (BR-Player - geplant)

Es scheint tatsächlich mit einer Netzwerkkomponente Probleme zu geben...
Der VLC auf dem Rechner von meiner Frau konnte den uShare, der auf meinem Laptop lief, auch nicht sehen aber seltsamerweise auch nicht den MiniDLNA, der auf dem Server lief...?

Gruß
Yoda
 
Mit VLC hab ich das auch noch nie hinbekommen :ugly:
Der findet weder meine beiden MythTV (Mediacenter) noch den DLNA daemon (weiß grad nicht wie der heißt).
Die WLAN Radios finden (solange sie im gleichen Subnetz sind) beides ohne Probleme. Das lag aber wohl an diversen Bugs die mitllerweile wohl behoben sind. (nicht gtestet)

Wenn ich ehrlich bin habe ich unter Linux/FreeBSD keinen brauchbaren(!) Mediaplayer gefunden der out-of-the-box funktioniert. Was mir geholfen hat die Protokolle und (meine) Probleme zu verstehen war ein utility namens upnp-inspector - eventuell hilft dir das auch weiter. Ansonsten soweit möglich mal tcpdump/wireshark draufloslassen


Grüße,
errorsmith
 
Hallo Errorsmith,

Mit VLC hab ich das auch noch nie hinbekommen :ugly:
Der findet weder meine beiden MythTV (Mediacenter) noch den DLNA daemon (weiß grad nicht wie der heißt).
Die WLAN Radios finden (solange sie im gleichen Subnetz sind) beides ohne Probleme. Das lag aber wohl an diversen Bugs die mitllerweile wohl behoben sind. (nicht gtestet)

Wenn ich ehrlich bin habe ich unter Linux/FreeBSD keinen brauchbaren(!) Mediaplayer gefunden der out-of-the-box funktioniert. Was mir geholfen hat die Protokolle und (meine) Probleme zu verstehen war ein utility namens upnp-inspector - eventuell hilft dir das auch weiter. Ansonsten soweit möglich mal tcpdump/wireshark draufloslassen


Grüße,
errorsmith

Ich habe jetzt mal die komplette /etc/rc.conf ausgetauscht, nur die sk0+DHCP drin gelassen und alle anderen Netzwerksachen+Firewall+NAT entfernt.
Dann ein REBOOT.
Hat aber leider alles nichts geändert.

Leider ist mir (ausser dem Weihnachtsgeschenk) nichts anderes bekannt, womit ich das sonst testen könnte, wenn der VLC nichts taugt...
Tante Googel empfiehlt auch den VLC als einfache Sofort-Lösung...

Jetzt bleibt mir wohl nur noch, einen einfachen Hardware-DLNA-Server zu kaufen...? :-(
 
Ja, ich hatte sie wohl nicht richtig abgeschaltet, sondern nur alle Regeln entfernt und diese drei (als "Kurzschluss") hinzugefühgt:
ipfw add 00110 allow ip from any to any via sk0
ipfw add 00111 allow ip from any to any via sk1
ipfw add 00511 allow ip from any to any.
Hä wie jetzt? ipfw hat jetzt aber nichts mit PF zu tun, welches du oben beschrieben hast. Sorry ich hab keinen Durchblick mehr...
 
Hallo Foxit,

Hä wie jetzt? ipfw hat jetzt aber nichts mit PF zu tun, welches du oben beschrieben hast. Sorry ich hab keinen Durchblick mehr...

PF habe ich noch nie bewußt benutzt, damit kann ich nicht umgehen.

Die PF-Konfig, die oben zu sehen ist, habe nicht ich gebaut.
Die muss von ezJail automatisch generiert worden sein...

Die dort eingetragene IP (192.168.9.100) ist nur für die Minecraft-Jail.

Gruß
Yoda
 
Vor einer Stunde ist meine Frau zu Bett gegangen, da habe ich den BR-Player nochmal raus geholt und nocheinmal alles durchprobiert:
- alles abgeschaltte, nur IP auf sk0 (192.168.2.x/24-Netz) + uShare (Linux) gestoppt
- normal hochgefahren, im 192.168.2.x/24-Netz + uShare (Linux) gestoppt
- normal hochgefahren, im 192.168.9.x/24-Netz + uShare (Linux) gestoppt
- MiniDLNA (FreeBSD) gestartet + uShare (Linux) gestartet
- MiniDLNA (FreeBSD) gestoppt + uShare (Linux) gestartet

Aber nichts... der BR-Player hat den Server nicht gefunden.
 
Ich hab mal nachgesehen. Der Name von dem Produkt ist serviio. Ist halt ein "full-featured" DLNA / UPNP Server der von Musik bis zu Echtzeit-Transkodieren alles kann.
Der wird jedenfalls von allen meinen Geräten gefunden (2 WLAN Radios, MythTV Mediacenter, diverse Programme, u.a. auch der Windows Mediaplayer. Ansonsten wäre es auch interessant zu wissen von welchem Gerät wir hier reden...?

Grüße errorsmith
 
Zurück
Oben