Skip to content

Issue with auto reconnect if TCP port is specified #45

Description

@manprint

Hi @jkuri

I started bore with the following command (the server is selfhosted bore.mydomain.it):

./bore -ls localhost -lp 5000 -bp 1030 -id myservice -r -pw abc123

The tunnel is started correctly
If I turn off my local service on port 5000, bore disconnects and tries to reconnect:

dial tcp 127.0.0.1:5000: connect: connection refused reconnecting in 5s...

The tunnel is started correctly
If I turn off my local service on port 5000, bore disconnects and tries to reconnect but the connection does not restart.
I think the problem is that the connection does not close correctly on the server side in case of disconnection and at the next reconnection attempt it finds the port allocated.
I leave the server side and client side logs.

Client site log:

2025/02/08 23:55:01 connection failed due:  ssh: tcpip-forward request denied by peer reconnecting in 5s...
2025/02/08 23:55:11 connection failed due:  ssh: tcpip-forward request denied by peer reconnecting in 5s...
2025/02/08 23:55:21 connection failed due:  ssh: tcpip-forward request denied by peer reconnecting in 5s...
2025/02/08 23:55:31 connection failed due:  ssh: tcpip-forward request denied by peer reconnecting in 5s...
2025/02/08 23:55:41 connection failed due:  ssh: tcpip-forward request denied by peer reconnecting in 5s...

Server side log:

2025-02-09T00:04:32.339Z	INFO	new SSH connection from x.x.x.x:54776 (SSH-2.0-Go)
2025-02-09T00:04:32.387Z	DEBUG	[a53ccb2d] request: tcpip-forward true {0.0.0.0 1030}
2025-02-09T00:04:32.387Z	ERROR	[a53ccb2d] listen failed for: 0.0.0.0:1030 listen tcp 0.0.0.0:1030: bind: address already in use
2025-02-09T00:04:32.387Z	ERROR	[a53ccb2d] error, disconnecting: unable to listen

PS: Feature Request
It would be great if you could have a flag that allows you to choose between the TCP connection and the HTTP/HTTPS connection. Usually you do not need both active together.

For example:

-only-http -> activate only the HTTP/HTTPS connection
-only-tcp  -> activate only the TCP connection

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions