Aggiorna README.md

This commit is contained in:
Fabio 2026-06-01 18:57:43 +08:00
parent d3657cfd2b
commit 683b70ae30

View file

@ -1,4 +1,7 @@
🔥 COME ABBIAMO SBLOCCATO MACOS PER PERMETTERE IL MULTICAST SSDP
# DLNA receiver per MacOS
### SBLOCCARE MACOS PER PERMETTERE IL MULTICAST SSDP
macOS blocca il multicast UDP in uscita per processi non autorizzati,
anche se il firewall è disattivato.
@ -7,9 +10,10 @@ Per questo il tuo Python diceva “SSDP sent”, ma non usciva nulla sulla rete.
✔️ 1. Abbiamo autorizzato Python nel firewall di macOS
Se usi Python di sistema:
Codice
```
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --add /usr/bin/python3
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --unblockapp /usr/bin/python3
```
Questo è il passaggio fondamentale:
senza questa autorizzazione, macOS non invia multicast.
@ -17,40 +21,47 @@ senza questa autorizzazione, macOS non invia multicast.
✔️ 2. Abbiamo abilitato le app firmate a inviare multicast
macOS ha due flag nascosti che, se disattivati, bloccano il multicast:
Codice
```
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setallowsigned on
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setallowsignedapp on
```
Questi due comandi dicono al firewall:
“Lascia passare il traffico multicast delle app firmate (come Python).”
✔️ 3. Abbiamo verificato con tcpdump
Dopo la patch:
Codice
si può verificare con
```
sudo tcpdump -i en0 udp port 1900
```
E finalmente hai visto:
Codice
```
IP 192.168.1.2 > 239.255.255.250:1900 UDP
```
→ Conferma che macOS ora lascia uscire i pacchetti SSDP.
DIPENDENZE minime
### DIPENDENZE minime
```
pip install flask netifaces
```
DIPENDENZE per altri test DLNA
### DIPENDENZE per altri test DLNA
lxml → per fare parsing XML più robusto (prima di passare a parsing manuale)
requests → per testare SOAP verso TV reali
flask → già incluso, ma reinstallato
```
pip install flask lxml requests
```
COME AVVIARE
## COME AVVIARE
```
python3 dlna_receiver.py
```
ma va avviato anche VLC in modalità player DLNA
```
/Applications/VLC.app/Contents/MacOS/VLC --extraintf rc --rc-host localhost:9999
```