Como posso redirecionar “localhost” para outro IP local?

Como posso redirecionar “localhost” para outro IP local?

Esta é a minha situação:

Dois computadores no mesmo roteador, 192.168.1.101 e 192.168.1.102

É isso que eu gosto de fazer: em 192.168.1.101, ao acessar a porta 22 com localhost, ele direciona o tráfego para 192.168.1.102 porta 22.

Em outras palavras, gostaria de encaminhar qualquer tráfego do host local para outro IP local.

Existe alguma solução para o que preciso?

Responder1

Se você estiver no Windows, poderá usar o comando:

netsh interface portproxy add v4tov4 listenaddress=192.168.1.101 listenport=21 connectaddress=192.168.1.102 connectport=21

Substituir:

  • 21com a porta que você deseja encaminhar,
  • 192.168.1.101com seu ip,
  • 192.168.1.102com o ip de destino.

Responder2

Não redefina o significado de localhost. Você quebrará as coisas de maneiras surpreendentes.

Em vez disso, observe as opções -Le -Rem ssh(1). Eles facilitam o redirecionamento de uma porta na máquina local para o endereço IP e a porta de uma máquina remota. Além disso, o túnel é protegido por SSH.

Observe que esses túneis não são necessariamente específicos do tráfego ssh/shell. Pode ser para tráfego arbitrário.

Responder3

Não tenho certeza se isso é uma coisa inteligente a se fazer. Muitos serviços destinados a serem executados na máquina local usam 127.0.0.1(o que não seria problema com sua alteração) ou localhost(nesse caso, sua alteração atrapalharia as coisas) para se conectar a outros serviços na mesma máquina. E muitos outros pacotes vêm configurados dessa forma.

Se o objetivo é ter o mesmo nome para conectar transversalmente, independente da máquina que você esteja, recomendo usar um nome diferente para isso. Em vez de "localhost" você poderia, por exemplo, usar "crosshost" - e com isso seguir as dicas dadas por Indrek: Verifique seu hostsarquivo (no Linux/Unix e provavelmente também no Mac /etc/hosts, no Windows é C:\Windows\System32\drivers\etc\hosts(sem extensão - então pegue cuidado aqui, o Windows geralmente já possui algum outro hosts.*arquivo nesse diretório).NÃOcomente a 127.0.0.1 localhostlinha, nem modifique-a - deixe-a como está. Basta adicionar uma linha

192.168.1.101 crosshost

na máquina 192.168.1.102 e da mesma forma com o outro endereço na outra máquina. Agora você pode, por exemplo, ssh crosshostconectar-se a uma máquina da outra, ou copiar arquivos com scp filename.ext crosshost:/path/to/put, ou o que você quiser.

informação relacionada