¿Cómo puedo redirigir "localhost" a otra IP local?

¿Cómo puedo redirigir "localhost" a otra IP local?

Esta es mi situación:

Dos computadoras bajo el mismo enrutador, 192.168.1.101 y 192.168.1.102

Esto es lo que me gusta hacer: en 192.168.1.101, mientras accede al puerto 22 con localhost, dirige el tráfico al puerto 22 de 192.168.1.102.

En otras palabras, me gustaría reenviar cualquier tráfico desde localhost a otra IP local.

¿Hay alguna solución para lo que necesito?

Respuesta1

Si estás en Windows, puedes usar el comando:

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

Reemplazar:

  • 21con el puerto que deseas reenviar,
  • 192.168.1.101con tu ip,
  • 192.168.1.102con la ip de destino.

Respuesta2

No redefina el significado de localhost. Romperás cosas de formas sorprendentes.

En su lugar, mire las opciones -Ly -Ren ssh(1). Facilitan la redirección de un puerto en la máquina local a la dirección IP y al puerto de una máquina remota. Además, el túnel está protegido por SSH.

Tenga en cuenta que estos túneles no son necesariamente específicos del tráfico ssh/shell. Puede ser para tráfico arbitrario.

Respuesta3

No estoy seguro de si eso es algo inteligente. Muchos servicios destinados a ejecutarse en la máquina local usan 127.0.0.1(lo que no sería un problema con su cambio) o localhost(en cuyo caso su cambio arruinaría las cosas) para conectarse a otros servicios en la misma máquina. Y muchos otros paquetes vienen configurados de esta manera.

Si el propósito es tener el mismo nombre para conectarse de forma transversal, independientemente de en qué máquina se encuentre, prefiero recomendar usar un nombre diferente para esto. En lugar de "localhost", podría utilizar, por ejemplo, "crosshost", y con eso siga los consejos dados por Indrek: Verifique su hostsarchivo (en Linux/Unix y probablemente también en Mac /etc/hosts, en Windows lo es C:\Windows\System32\drivers\etc\hosts(sin extensión, así que tome tenga cuidado aquí, Windows generalmente ya tiene algún otro hosts.*archivo en ese directorio).NOcomente la 127.0.0.1 localhostlínea, ni la modifique; déjela como está. Solo agrega una línea

192.168.1.101 crosshost

en la máquina 192.168.1.102, y de manera similar con la otra dirección en la otra máquina. Ahora puede, por ejemplo, ssh crosshostconectarse a una máquina desde otra, copiar archivos con scp filename.ext crosshost:/path/to/put, o lo que desee.

información relacionada