Open soosp opened 4 months ago
Could you confirm if there is an actual issue? Are you unable to receive UDP data from IPv4 interfaces when binding to 0.0.0.0:1700
? I don't think there is, see also this Go issue: https://github.com/golang/go/issues/48723.
Yes, the ChirpStack Gateway Bridge started on a terminal:
# chirpstack-gateway-bridge -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
INFO[0000] starting ChirpStack Gateway Bridge docs="https://www.chirpstack.io/gateway-bridge/" version=4.0.11
INFO[0000] backend/semtechudp: starting gateway udp listener addr="0.0.0.0:1700"
WARN[0000] [store] memorystore wiped module=mqtt
INFO[0000] integration/mqtt: connected to mqtt broker
Meanwhile I check the bindings on an another terminal:
# netstat -lun
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
udp6 0 0 :::1700 :::*
A solution (workaround?) should be to add udp4_bind
and udp6_bind
options instead of udp_bind
.
But what is the actual problem? I can see that when I start the ChirpStack Gateway Bridge it will show as udp6 0 0 :::1700 :::*
in netstat
, but it accepts UDP data over IPv4 just fine.
From the Go documentation:
For UDP and IP networks, if the host in the address parameter is empty or a literal unspecified IP address, ListenPacket listens on all available IP addresses of the local system except multicast IP addresses.
What happened?
If you have IPv6 configured and set
in your
/etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
file (this isthe default setting), ChirpStack Gateway Bridge binds to ipv6 socket only:If you set a valid IPv4 socket, it binds only to it as expected.
Tested with the latest precompiled Debian binaries.
What did you expect?
It binds only IPv4 socket or both IPv4 and IPv6.
Steps to reproduce this issue
Steps:
udp_bind
parameter on the default0.0.0.0:1700
value.Could you share your log output?
Your Environment