Skip to content

Connection issue with multiple Listeners that are using the same Hybrid Connection #102

@GitGraf

Description

@GitGraf

I want to setup remote access to a some devices running a REST interface with azbridge. To keep my footprint small, I would like to use a single hybrid-connection for my 2 devices, using the "Logical Port Name" to choose which device I want to connect to. I noticed that requests to my REST backend start to sporadically fail when I have more than one Listener running concurrently.

Remote Forward on PC-1:
azbridge -T "hybrid-conn-1:PC_1-http/localhost:9000" -x "<Connection String>"

Remote Forward on PC-2:
azbridge -T "hybrid-conn-1:PC_2-http/localhost:9000" -x "<Connection String>"

And on my local machine:
azbridge -L "localhost:9000/PC_1-http:hybrid-conn-1" -x "<Connection String>"

If I then query localhost:9000 repeatedly, I sometimes get "curl: (52) Empty reply from server". I tried this with other protocol-types (e.g. ssh, rdp) too, and it behaves similarly.

user@user-kubuntu:~/work$ curl localhost:9000/status/running
curl: (52) Empty reply from server
user@user-kubuntu:~/work$ curl localhost:9000/status/running
true
user@user-kubuntu:~/work$ curl localhost:9000/status/running
true
user@user-kubuntu:~/work$ curl localhost:9000/status/running
curl: (52) Empty reply from server
user@user-kubuntu:~/work$ curl localhost:9000/status/running
curl: (52) Empty reply from server
user@user-kubuntu:~/work$ curl localhost:9000/status/running
true
user@user-kubuntu:~/work$ curl localhost:9000/status/running
curl: (52) Empty reply from server

When I stop the Listener on PC_2 and repeat the test, I get the correct response every time. Some documentation from Azure (https://learn.microsoft.com/en-us/azure/azure-relay/relay-faq#quotas) states that up to 25 Listeners may be connected to a Relay concurrently, but I start seeing issues when just 2 are connected.

To be honest, I am not sure if the root cause of this is with Azure Relay itself, or something specific to azbridge, or maybe a mis-understanding of the docs on my end. Would be great if somebody can confirm!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions