After troubleshooting, I believe this is because there is no default route set on this Pi (LAN only). I'm using a very simple config, just output COT to default multicast SA address. Pytak may be thinkin there is no route to the multicast address, although one shouldn't be needed.
[adsbcot]
DUMP1090_URL = http://127.0.0.1/tar1090/data/aircraft.json
POLL_INTERVAL = 10
pi@adsbexchange:~ $ DEBUG=1 /home/pi/.local/bin/adsbcot -c /etc/adsbcot.ini
Showing Config: %s /etc/adsbcot.ini
==========
<Section: adsbcot>
==========
DEBUG:asyncio:Using selector: EpollSelector
DEBUG:asyncio:Close <_UnixSelectorEventLoop running=False closed=False debug=True>
Traceback (most recent call last):
File "/home/pi/.local/bin/adsbcot", line 8, in <module>
sys.exit(main())
File "/home/pi/.local/lib/python3.9/site-packages/adsbcot/commands.py", line 31, in main
pytak.cli(__name__.split(".")[0])
File "/home/pi/.local/lib/python3.9/site-packages/pytak/client_functions.py", line 317, in cli
asyncio.run(main(app_name, config), debug=debug)
File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
return loop.run_until_complete(main)
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/pi/.local/lib/python3.9/site-packages/pytak/client_functions.py", line 262, in main
await clitool.setup()
File "/home/pi/.local/lib/python3.9/site-packages/pytak/classes.py", line 237, in setup
reader, writer = await pytak.protocol_factory(self.config)
File "/home/pi/.local/lib/python3.9/site-packages/pytak/client_functions.py", line 202, in protocol_factory
writer = await pytak.create_udp_client(cot_url)
File "/home/pi/.local/lib/python3.9/site-packages/pytak/client_functions.py", line 69, in create_udp_client
stream: DatagramClient = await dgconnect((host, port))
File "/home/pi/.local/lib/python3.9/site-packages/pytak/asyncio_dgram/aio.py", line 269, in connect
transport, protocol = await loop.create_datagram_endpoint(
File "/usr/lib/python3.9/asyncio/base_events.py", line 1363, in create_datagram_endpoint
raise exceptions[0]
File "/usr/lib/python3.9/asyncio/base_events.py", line 1350, in create_datagram_endpoint
await self.sock_connect(sock, remote_address)
File "/usr/lib/python3.9/asyncio/selector_events.py", line 502, in sock_connect
return await fut
File "/usr/lib/python3.9/asyncio/selector_events.py", line 507, in _sock_connect
sock.connect(address)
OSError: [Errno 101] Network is unreachable