Chirpstack gateway bridge is not listening

Hello,
I am just starting with Lora.
I installed gateway bridge following the manual.
I am connected to MQTT and my log seems to be OK as well.
But even gateway bridge is running is not listening.

Can somebody help me? Really don’t know what the issue is.

My log:

time=“2019-11-23T14:26:22+02:00” level=info msg=“starting ChirpStack Gateway Bridge” docs=“Introduction - ChirpStack open-source LoRaWAN<sup>®</sup> Network Server” version=3.4.1
time=“2019-11-23T14:26:22+02:00” level=info msg=“backend/semtechudp: starting gateway udp listener” addr=“0.0.0.0:1700”
time=“2019-11-23T14:26:22+02:00” level=debug msg=“backend/semtechudp: cleanup gateway registry”
time=“2019-11-23T14:26:22+02:00” level=info msg=“integration/mqtt: connected to mqtt broker”<

but if do

telnet localhost 1700

Trying ::1…

Trying 127.0.0.1…

telnet: Unable to connect to remote host: Connection refused

or

nmap localhost -p1700
Starting Nmap 7.01 ( https://nmap.org ) at 2019-11-23 14:43 +02
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000078s latency).
Other addresses for localhost (not scanned): ::1
PORT STATE SERVICE
1700/tcp closed mps-raft

Nmap done: 1 IP address (1 host up) scanned in 0.30 seconds<

my config:

/etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml
[general]
#debug=5, info=4, warning=3, error=2, fatal=1, panic=0
log_level = 5
#Gateway backend configuration.
[backend]

#Backend type.

#Valid options are:
#*semtech_udp
#*basic_station
type=“semtech_udp”

#Semtech UDP packet-forwarder backend.
[backend.semtech_udp]

#ip:port to bind the UDP listener to

#Example: 0.0.0.0:1700 to listen on port 1700 for all network interfaces.
#This is the listener to which the packet-forwarder forwards its data
#so make sure the ‘serv_port_up’ and ‘serv_port_down’ from your
#packet-forwarder matches this port.
udp_bind = “0.0.0.0:1700”

#Skip the CRC status-check of received packets

#This is only has effect when the packet-forwarder is configured to forward
#LoRa frames with CRC errors.
skip_crc_check = false

#Fake RX timestamp.

#Fake the RX time when the gateway does not have GPS, in which case
#the time would otherwise be unset.
fake_rx_time=false

#Integration configuration.
[integration]
#Payload marshaler.

#This defines how the MQTT payloads are encoded. Valid options are:
#* protobuf: Protobuf encoding
#* json: JSON encoding (easier for debugging, but less compact than ‘protobuf’)
marshaler=“protobuf”

#MQTT integration configuration.
[integration.mqtt]
#Event topic template.
event_topic_template=“gateway/{{ .GatewayID }}/event/{{ .EventType }}”

#Command topic template.
command_topic_template=“gateway/{{ .GatewayID }}/command/#”

#Maximum interval that will be waited between reconnection attempts when connection is lost.
#Valid units are ‘ms’, ‘s’, ‘m’, ‘h’. Note that these values can be combined, e.g. ‘24h30m15s’.
max_reconnect_interval=“10m0s”

#MQTT authentication.
[integration.mqtt.auth]
#Type defines the MQTT authentication type to use.

#Set this to the name of one of the sections below.
type=“generic”

#Generic MQTT authentication.
[integration.mqtt.auth.generic]
#MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
server=“tcp://127.0.0.1:1883”

#Connect with the given username (optional)
username=“chirpstack_gw”

#Connect with the given password (optional)
password=“xxxx”

#Quality of service level
#
#0: at most once
#1: at least once
#2: exactly once
#
#Note: an increase of this value will decrease the performance.
#For more information: What is MQTT Quality of Service (QoS) 0,1, & 2? – MQTT Essentials: Part 6
qos=0

#Clean session
#
#Set the “clean session” flag in the connect message when this client
#connects to an MQTT broker. By setting this flag you are indicating
#that no messages saved by the broker for this client should be delivered.
clean_session=true

#Client ID
#
#Set the client id to be used by this client when connecting to the MQTT
#broker. A client id must be no longer than 23 characters. When left blank,
# a random id will be generated. This requires clean_session=true.
client_id=“”

#CA certificate file (optional)

#Use this when setting up a secure connection (when server uses ssl://…)
#but the certificate used by the server is not trusted by any CA certificate
#on the server (e.g. when self generated).
ca_cert=“”

#mqtt TLS certificate file (optional)
tls_cert=“”

#mqtt TLS key file (optional)
tls_key=“”

#Gateway meta-data.

#The meta-data will be added to every stats message sent by the ChirpStack Gateway
#Bridge.
[meta_data]

#Static.

#Static key (string) / value (string) meta-data.
[meta_data.static]
#Example:
#serial_number=“A1B21234”

#Dynamic meta-data.

#Dynamic meta-data is retrieved by executing external commands.
#This makes it possible to for example execute an external command to
#read the gateway temperature.
[meta_data.dynamic]

#Execution interval of the commands.
execution_interval=“1m0s”

#Max. execution duration.
max_execution_duration=“1s”

#Commands to execute.

#The value of the stdout will be used as the key value (string).
#In case the command failed, it is ignored. In case the same key is defined
#both as static and dynamic, the dynamic value has priority (as long as the)
#command does not fail.
[meta_data.dynamic.commands]
#Example:
#temperature=“/opt/gateway-temperature/gateway-temperature.sh”

#Executable commands.

#The configured commands can be triggered by sending a message to the
ChirpStack (v4) Gateway Bridge.
[commands]
#Example:
#[commands.commands.reboot]
#max_execution_duration=“1s”
#command=“/usr/bin/reboot”

The Gateway Bridge listens on 1700 UDP. Both your telnet and nmap commands are attempting to connect via TCP. You can verify it is listening via netstat -ulp, netcat (nc) with appropriate UDP option, or nmap with appropriate UDP option.

2 Likes