Digamos que eu tenha uma máquina A agindo como um roteador com duas NICs e os seguintes endereços IP:
eth0: 192.168.1.1 (LAN)
eth1: 10.0.0.1 (WAN)
E eu tenho outra máquina B no endereço IP 10.0.0.2 que quero poder acessar temporariamente em um dispositivo na máquina A's sub-rede com endereço IP 192.168.1.10 .
Isso precisaria manipular várias conexões na mesma porta (como uma sessão HTTP), em vez de apenas uma desativada. Eu sei como fazer isso com o SSH, mas eu queria saber se havia uma alternativa mais simples, porque neste cenário eu já estou logado na máquina A.
Este é o modelo SSH que uso para um cenário semelhante, quando ainda não estou conectado:
ssh -R 0:lanhost:lanport username@wanhost
O mais próximo que consegui foi este com o netcat:
nc -s 10.0.0.1 -l -p 50000 -e /tmp/srv.sh
/tmp/srv.sh:
#!/bin/sh
nc 192.168.1.10 80
Mas isso só lida com uma única conexão e criar o script de shell é desajeitado.
NOTA: Eu prefiro não mexer nas tabelas IP da máquina A se possível.
Tags port-forwarding netcat