Multicast discovery not working when wireguard device present
See original GitHub issueCheers, ran into a rather weird issue just now. Starting mkchromecast
as normal (both versions in AUR, doesn’t matter):
Mkchromecast v0.3.9
Creating Pulseaudio Sink...
Open Pavucontrol and Select the Mkchromecast Sink.
Starting Local Streaming Server
[Done]
Selected backend: parec
Selected audio codec: mp3
Default bitrate used: 192k
Default sample rate used: 44100Hz.
PID of main process: 284407
PID of streaming process: 284414
* Serving Flask app 'mkchromecast.audio' (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://192.168.178.11:5000/ (Press CTRL+C to quit)
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/soco/discovery.py", line 212, in any_soco
d for d in cls._instances[cls._class_group].values() if d.is_visible
KeyError: 'SoCo'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/mkchromecast", line 311, in <module>
mk()
File "/usr/bin/mkchromecast", line 59, in __init__
self.audio_linux()
File "/usr/bin/mkchromecast", line 78, in audio_linux
self.cc.initialize_cast()
File "/usr/share/mkchromecast/mkchromecast/cast.py", line 118, in initialize_cast
zone = soco.discovery.any_soco()
File "/usr/lib/python3.9/site-packages/soco/discovery.py", line 215, in any_soco
devices = discover(allow_network_scan=allow_network_scan, **network_scan_kwargs)
File "/usr/lib/python3.9/site-packages/soco/discovery.py", line 124, in discover
_sock.sendto(really_utf8(PLAYER_SEARCH), (MCAST_GRP, MCAST_PORT))
OSError: [Errno 126] Required key not available
So I’m guessing it’s an issue with my network interface, as it’s sitting on a bond interface and probably has some deeper issues trying to do multicast there. Since other apps (e.g. noson
) appear to have no problem finding the SONOS device, I’m guessing it’s something to either be fixed in soco… or Python. (welp.)
FWIW, the networki device for 192.168.178.0/24
is just a simple bond device with
[NetDev]
Name=xxxx
Kind=bond
[Bond]
Mode=active-backup
MIIMonitorSec=1
Debugging hints greatly appreciated, a quick googly-go didn’t reveal anything too obvious to try with regard to multicast with python on bond devices.
Issue Analytics
- State:
- Created 2 years ago
- Comments:7 (3 by maintainers)
Top Results From Across the Web
How to allow SMB devices discovery? (AllowedIPs issue?)
I've setup a Wireguard VPN on my Rasp Pi, where is also selfhosted Jellyfin. Its diffusing its content through DLNA and SMB.
Read more >Samba is not listening on specified wireguard / vpn interface
A) My Home-PC that is running a wireguard client and wants to connect to my sambashare at my office-server C). B) My Home-Server...
Read more >Android does not respond to multicast listener queries in ...
This sounds like an Android bug. Either an IGMP/MLD query should wake up the device, so that it could receive it. Or it...
Read more >Wireguard peer interface irregularly stop working - MikroTik
I am running a WG server since 7.1beta6, now with 7.1.5. Through all versions I experience the same problem: Some WG peers irregularly ......
Read more >Wireguard vpn slow speed | The FreeBSD Forums
Hi experts! I have a problem with slow speed with wireguard vpn. FreeBSD 12.0 installed on VPS. Information about server.
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
SoCo v0.24.1 is now released, which should address this issue. Please re-open if this is not the case.
Sounds great. 👍
Was just now looking into how to check the device capabilities to have this be less trial and error, but didn’t find anything that looked portable enough.