A conexão ao servidor remoto através da porta falha devido à porta aleatória dinâmica

A conexão ao servidor remoto através da porta falha devido à porta aleatória dinâmica

Estou tentando me conectar a um supercomputador por meio de ssh e encaminhamento de porta.

O aplicativo é um C++ servidor e cliente.

Aqui estão os dados da porta:

// default values
server_address = "localhost";
port = 12346;

Eu me conecto ao servidor com o seguinte:

ssh -Y <adress> -L12346:localhost:12346 -l <username>

(também tentei)

ssh -Y <adress> -L12346:127.0.0.1:12346 -l <username>

Meu aplicativo inicia no servidor com esta mensagem de log:

INFO:  startServer: Port 12346 on server <SERVERNAME> opened and waits client.

Está tudo bem até aqui.

Mas quando tento conectar-me ao outro computador, o servidor recusa com o seguinte log:

debug1: Connection to port 12346 forwarding to 127.0.0.1 port 12346 requested.
debug1: channel 3: new [direct-tcpip]
channel 3: open failed: connect failed: Connection refused
debug1: channel 3: free: direct-tcpip: listening port 12346 for 127.0.0.1 port 12346, connect from 127.0.0.1 port 45446 to 127.0.0.1 port 12346, nchannels 4

A porta aqui (45446) é algo que não configurei e é dinâmica, por isso está sempre mudando.

O aplicativo (conexão servidor-cliente) funciona perfeitamente quando executo os dois em meu desktop.

Qualquer recomendação é apreciada.

Responder1

A porta 45446é a porta onde seu aplicativo está rodando e é sempre aleatória. Isso não deveria incomodar você.

O que deve incomodar é o motivo pelo qual a conexão foi recusada na linha acima. Isso significa que o ssh está tentando se conectar à porta 123456 e a conexão não foi bem-sucedida. Isso pode ser afetado pela configuração do servidor ( PermitOpen) ou por algo no servidor, o que é difícil de adivinhar com base nessas informações limitadas.

informação relacionada