View Issue Details

IDProjectCategoryView StatusLast Update
0022498MMW 5Casting (Google Cast / UPnP)public2026-10-27 17:43
Reportermartin Assigned To 
PriorityurgentSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version2024.2.3 
Target Version2027.0Fixed in Version2027.0 
Summary0022498: SyncList DIDL contains server's public IP instead of the address the client connected to (sync fails over VPN/Tailscale)
DescriptionMMA connects to the MMW sync server through a VPN (Tailscale) address,
e.g. http://100.117.195.101:12768/DeviceDescription.xml. All requests
(upload POST, Browse actions) go to this address and succeed (HTTP 200).

However, the DIDL response to Browse "SyncList:DeviceID:<deviceId>"
contains the server's PUBLIC IP in all links (res, upnp:albumArtURI,
lyricsURI), e.g.:
  res: http://136.53.178.206:12768/DeviceID=<deviceId>_ItemID=10627.mp3
  albumArtURI: http://136.53.178.206:12768/100010627.jpg
  lyricsURI: http://136.53.178.206:12768/50540.txt

The public IP is not reachable from the phone (no port forward / NAT
hairpin), so every download and lyrics request ends with a 20 s connect
timeout. Sync runs ~16 minutes and no file is downloaded ("failed to
download").

On the same connection, browsing the Playlists container returns
correct links with the address the client used:
  http://100.117.195.101:12768/%5CPlaylists%5C<guid>%5CItemID=50793.mp3
  http://100.117.195.101:12768/50793.jpg

These play back without problems. So the same server builds item URLs
differently for the SyncList response than for regular browsing.
Expected: the SyncList DIDL should use the host from the incoming
request (Host header / local address of the connection), the same way
regular browsing does.
Please check where MMW takes the address for SyncList URLs (detected
public IP, remote access / external address setting?)
TagsNo tags attached.
Fixed in build3530

Activities

Ludek

2026-10-27 17:43

developer   ~0083302

Fixed in 3530