snstac / pytak

PyTAK is a Python package for rapid TAK integration.
https://pytak.readthedocs.io/en/stable/
Apache License 2.0
156 stars 42 forks source link

Add a way of disabling multicast receive #28

Closed ampledata closed 1 year ago

ampledata commented 1 year ago

Yes, I realize I just added multicast receive, but running more than one multicast client on the same host is blocked.

The use case is: I want to run multiple multicast senders on one machine.

PeterQFR commented 1 year ago

Ah is it? I just tried two multicast clients on the one machine and it didn't work. I also tried to run two TLS clients on the one machine, and as soon as I launched the second, the first stopped transmitting and receiving. The use case was for debugging and testing.

ampledata commented 1 year ago

@PeterQFR add "+ro" to your URL string, for example, COT_URL=udp+ro://...

PeterQFR commented 1 year ago

thanks. I am getting OSError: address already in use when starting another pytak client ... not on the same machine. Both Clients are using udp+ro://239.2.3.1:6969 but also triggers if just using udp.

The first client will connect fine. That system is on a standard LAN network. The second machine is using a shared network connection to the first.

I'm not really sure of the canonical topologies when using udp multicast. I think they always require a router, but can I configure a machine acting as a wireless AP to perform udp multicast to connected clients?

ampledata commented 1 year ago

Hey @PeterQFR, that's my bad, it should be +wo, as in 'Write-only'.

As for Multicast on WiFi: It /should/ work on most routers/APs out of the box. To tranverse the network, ensure 'multicast routing' or 'multicast snoop' or 'igmp' are turned on (in the case of my COTS TP-Link AP: yes, IGMP was turned on by default.