Sziasztok!
Szenvedek két napja ezzel, és mivel nem sikerült megoldanom megannyi próbálkozás után sem, megkérdezem itt, hátha más is csinált hasonlót. Adott egy Synology NAS és egy Windows 10 Pro-t futtató PC, és pár "okos TV". Az egész onnan indult hogy az IOT eszközeim (nálam ide tartozik a TV is) el szeretném választani a belső hálózattól, ezért külön VLAN-ba tettem őket. A tűzfal szoftver PfSense CE, 2.6 verzió.
Bevezetőnek: ez egy nagyon jó kis írás, ha valaki még nem olvasta volna (és igen, magyar):
https://www.jtechlog.hu/2022/01/05/dlna-otthoni-mediahalozat.html
Az SSDP felderítés rész a lényeg. A Python kód nagy segítség volt nekem is, a Synology NAS szépen válaszol is.
Eddig eljutottam:
- Engedélyeztem a tűzfalon hogy az érintett forrásokból a 239.255.255.250 címre érkező kéréseket fogadja az 1900-as UDP porton
- UDP Broadcast relay-el elküldöm a másik érintett VLAN-ba is a discovery üzeneteket: https://github.com/marjohn56/udpbroadcastrelay
- A tűzfalon engedélyeztem a szükséges portokat a VLAN-ok egyes eszközei között: https://community.synology.com/enu/forum/17/post/15530
Ez eddig szuperül működik is, a Synology NAS-ról az engedélyezett eszközökről elérhető a tartalom a másik VLAN-ból, működik a felderítés is, királyság. Na de ami nem sikerül: a Windows saját DLNA szerverét hasonlóan felderíthetővé / elérhetővé tenni. Az érdekes az, hogy az a Python szkript amivel tesztelek, nem is jelez választ a Windows-os gépről. Két Windows-os gép egy alhálózatban pedig szépen látja egymást. Jól sejtem hogy a Windows nem ezt a fajta hálózatfelderítést használja? Gyanítom nem, egy sima VLC-nek is sokkal több idő kell hogy észlelje a Windows-os gépeket mint a NAS-t. Kérdésem: milyen portokat / protokollt használ a Windows beépített DLNA szervere? Miket kell engedélyezzek a tűzfalon? Azt már sikerült kideríteni hogy a VLC magát a tartalmakat a 2869-es porton szedi, de a felderítés hogyan működik? Linkelek két oldalt amiket átnéztem, véleményem szerint releváns információkat tartalmaznak, de így sem sikerült megoldanom.
https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-ssdp/d…
https://answers.microsoft.com/en-us/windows/forum/all/windows-firewall-…
Köszönöm a segítséget!
- 988 megtekintés
Hozzászólások
sub
én 3 éve próbálok működő leírást találni site-2-site VPN 2 oldala között átvinni DLNA-t opnsense-n keresztül, semmire nem jutottam
- A hozzászóláshoz be kell jelentkezni
Szerintem ez megoldható, én így állnék neki:
- Layer 2 (OpenVPN esetén TAP) VPN legyen
- Engedélyezd a tűzfalban az adott interfészeken a 239.255.255.250 címre UDP 1900 porton érkező kéréseket
- Előbbinél fontos, hogy legyen bekapcsolva az "IP Options" flag
- A VPN mindkét oldalára kell egy-egy broadcast relay - lásd a nyitó hozzászólásban a linket, plusz ezt:
https://www.michaelcalabrese.me/how-to-setup-udpbroadcastrelay-on-pfsen…
- Engedélyezd a tűzfalon a megfelelő irányból és irányba jövő csomagokat
(A Synology NAS esetén ezek az 50001 és az 50002 TCP portok.)
Használd azt a kis Python-ban írt tool-t amit korábban linkeltem.
- A hozzászóláshoz be kell jelentkezni
Layer 2 (OpenVPN esetén TAP) VPN legyen
Ipsec site-2-site van, policy-based (nem pedig route-based) az annak számít?
- A hozzászóláshoz be kell jelentkezni
Szerintem az IPSec VPN az Layer 3 (de majd kijavítanak ha nem jól tudom). Én OpenVPN-el dolgozom, ott ahhoz hogy broadcast üzeneteket át tudjak tolni kell a Layer 2, emiatt gondoltam hogy a multicast miatt is kell, de most elbizonytalanodtam. :)
- A hozzászóláshoz be kell jelentkezni
A linux kernelben van beépítve WireGuard nem oly' rég, azzal valahogy ez nem megoldható? (a kliens oldal WAN oldalán egy hap ac2 van, a szerver oldalán meg egy hap ax3)
- A hozzászóláshoz be kell jelentkezni
sub
Ugyanez, csak mióta elköltöztem a szüleimtől ~fél éve ugyanebben a cipőben vagyok.
- A hozzászóláshoz be kell jelentkezni
Én openvpn bridge irányba indulnél el ha van rá mód :)
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"
- A hozzászóláshoz be kell jelentkezni
Ezt nekem címezted? Esetemben nincs / nem kell VPN, egy helyen vannak az alhálózatok, csak eltérő VLAN-ban. Ha ricsip a címzett akkor még annyit tennék hozzá hogy a bridge azért problémás, mert akkor egy IP tartományba teszed őket, ha van DHCP szerver akkor az csak a VPN egyik oldalán lehet, így ha nincs VPN kapcsolat, nincs IP cím kiosztás sem. Az OpenVPN-nek nem kell hogy bridge-elve legyen a helyi hálózatra ahhoz hogy a végpontok között Layer 2 kapcsolat legyen. Ha pedig már van 1-1 interfész ami Layer 2-n össze van kötve, akkor mehet az általam javasolt broadcast relay, ami áttolja a megfelelő hálózatfelderítés csomagokat a megfelelő interfészekre. Így önállóan is életképesek a hálózatok, nem tolod át feleslegesen az összes broadcast és pláne nem internetkapcsolat forgalmat a tunnel-en, és szerintem működne.
- A hozzászóláshoz be kell jelentkezni
ricsipnek ment, bocsi.
Nyilván a bridge úgy működik, ahogy kell neki, van ahol ez járható és jó, valahol nem, b opcóként az általad leírt relayezés is opció (ezt nem próbáltam még.)
A topik kérdést próbáltad úgy, hogy a windowsban kikapcsolod a defender tűzfalat, hogy úgy megy-e?
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"
- A hozzászóláshoz be kell jelentkezni
Kikapcsoltam a tűzfalat, de sajnos így sem működik. Megnéztem hogy a TV milyen portokra csatlakozik a PC IP címére, ezek azok: 57532/UDP, 2869/TCP, 60939/UDP. A 2869 megvolt, azt a tűzfalban is engedélyeztem korábban.
- A hozzászóláshoz be kell jelentkezni
IGMP Snooping kivan kapcsolva a switchen, tűzfalon? Ha nem egy próbát megérhet ez alapján: https://yabb.jriver.com/interact/index.php?topic=127679.0
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"
- A hozzászóláshoz be kell jelentkezni
Igen, egyelőre ki van kapcsolva, ha az eszközök látnák egymást, akkor állítanám csak be.
- A hozzászóláshoz be kell jelentkezni
:D hát nem egyszerű
Esetleg egy wiresharkot nézni a windowson..
Hell is empty and all the devils are here.
-- Wm. Shakespeare, "The Tempest"
- A hozzászóláshoz be kell jelentkezni
windows ssdp support: https://hub.docker.com/r/stonith/udpbroadcastrelay
Gábriel Ákos
- A hozzászóláshoz be kell jelentkezni
Köszi, de ez már bele van merge-elve az eredetibe is: https://github.com/marjohn56/udpbroadcastrelay/commits/master
Sajnos nem értem a működését a Windows SSDP-nek. Ebben kellene igazán a segítség. Nálam a sima alap "SSDP (Roku Discovery, DLNA Media, Sonos, UPnP + More)" beállítással fut a relay, ezek a csomagok át is mennek, de azt nem tudom hogy milyen portokat kell engedélyezzek a tűzfalon a Windows-os gép felé, hogy tudjanak kommunikálni. A Windows tűzfalat majd hozzá igazítom, természetesen.
- A hozzászóláshoz be kell jelentkezni
Nekem a routeren az IGMP proxy beállítása és a switch-en az IGMP snooping segített, bár nem teljesen ugyanez a felállás.
- A hozzászóláshoz be kell jelentkezni
Ez konkrétan a Windows 10 médiaszervere (DLNA) kapcsán működött? Jó lenne tudni hogy a Windows melyik multicast címre dobálja a csomagjait, mert akkor átlőném relay-el azt is. Eddig nem sikerült megtalálnom az infót hogy a Windows beépített DLNA (-val ezek szerinte nem teljesen kompatibilis) szervere hogyan kommunikál (milyen portokon, milyen multicast címen). Ez az infó kellene.
- A hozzászóláshoz be kell jelentkezni
Sok sikert, évek óta nem találtam róla semmi doksit, pedig mindenféle mikroszoftos népeket körbekérdeztem már.
- A hozzászóláshoz be kell jelentkezni
Részeredmények vannak. A Windows tűzfalat kikapcsoltam a teszt erejéig. Elfeledkeztem róla hogy van egy Kaspersky Internet Security is a gépen, abban is kikapcsoltam. A routeren (PfSense) engedélyeztem hogy a Windows-os gép felé minden kommunikáció engedélyezve legyen. Telnet-el látom is hogy nyitva a 2869-es TCP port. Az UDP Broadcast relay-nek köszönhetően a VLC meg is jeleníti a Windows-os gépet a másik VLAN-ban. Sajnos csatlakozni már nem lehet hozzá. A PfSense szerint csak a 2869-re csatlakozna. A lejátszás sajnos sikertelen.
- A hozzászóláshoz be kell jelentkezni
Én az egyik Windows 10-es gépemről le tudok játszani, másikról nem. Az egyik Home, a másik Pro. BubbleUPnP-vel próbálom Androidról. Magát a Music médiatárat látom, de Access denied.
- A hozzászóláshoz be kell jelentkezni
Talán nézd meg Wiresharkkal. Ha lesz időm, én is megnézem, mert érdekel.
- A hozzászóláshoz be kell jelentkezni
A routerre/tűzfalra PIM-et kell telepítened.
L3 multicast routolására nem elég az IGMP proxy + egyebek.
- A hozzászóláshoz be kell jelentkezni
Köszi, de pont a PIMD kiváltására került fel az UDP Broadcast relay... PIM-el sem működött, és most nem az a kérdés hogyan toljak át multicast csomagokat a VLAN-ok között (hiszen ez már meg van oldva), hanem hogy hogyan működik, milyen protokollokon és portokon a Windows (10) beépített "DLNA" szervere. Ezt szeretném működésre bírni. A "szabvány" DLNA működik, csak ez az MS-féle megoldás fekete doboz még.
- A hozzászóláshoz be kell jelentkezni
Belefutottam egy másik hibába. Ugyan a VLAN-ok közötti DLNA UDP broadcast működik a nyitó hozzászólásban leírtak szerint, de mivel a relay ráül (bind) a figyelt portokra, sajnos megöli az UPnP-t. :(
- A hozzászóláshoz be kell jelentkezni
Nem kevés próbálkozás után összeraktam PIMD-vel, egyelőre működik. Volt 3-4 kernel panic, írnak is róla hogy a pimd tud ilyet művelni. Egyelőre úgy tűnik annyi kellett ennek elkerüléséhez hogy minden hozzárendelt aktív interfészhez kellett 1-1 tűzfal szabály (IGMP protokoll + IP Options). Várok így vele, meglátjuk pár nap alatt mi történik, stabil-e. Így egyelőre jó a DLNA és az UPnP is.
- A hozzászóláshoz be kell jelentkezni
Á, hagyjuk.
- A hozzászóláshoz be kell jelentkezni