Acceder automáticamente a una computadora usando IP local si está en mi red local o IP de Internet en caso contrario

Acceder automáticamente a una computadora usando IP local si está en mi red local o IP de Internet en caso contrario

Hago una copia de seguridad de mi computadora portátil (macOS) en una computadora de escritorio (Linux) en casa. Naturalmente, a veces mi computadora portátil está en casa, en la misma red local que mi computadora de escritorio, y otras veces no. Durante bastante tiempo he hecho que la computadora portátil se refiera a la computadora de escritorio con una URL pública, ya que es conveniente y funciona sin importar dónde esté la computadora portátil. La desventaja es que mi sistema de respaldo accede al escritorio a través de Internet incluso cuando sería más rápido acceder a él a través de la LAN. (Habría pensado que mientras estaba en casa, mi enrutador o algo del lado de mi ISP notaría inmediatamente que estoy accediendo a mi propia IP y tomaría un atajo, pero traceroute muestra más de 12 saltos, así que supongo que no).

¿Cómo puedo hacer que mi computadora portátil acceda automáticamente a mi escritorio a través de la LAN cuando sea posible y, en caso contrario, a través de Internet?

Lo mejor que se me ocurre es un script de shell que comprueba si estoy en casa y modifica mi archivo de hosts. Esto es un poco complicado y resultaría engorroso si quisiera hacer esto con más de un dispositivo, especialmente dispositivos móviles. No puedo ser la única persona que alguna vez ha tenido este problema, así que me gustaría saber si existen mejores métodos. Idealmente, existe alguna forma de personalizar el comportamiento de la resolución de URL con programas ejecutables o pequeños scripts que no conozco.

Esto puede parecer un ajuste excesivo, pero mis copias de seguridad a veces tardan bastante, incluso en mi red doméstica, y pueden resultar muy inconvenientes.

Mi enrutador es un Archer C7.

Tengo servicio de Internet residencial, por lo que mi IP probablemente cambie ocasionalmente, pero parece ser muy poco frecuente.

Puedo detectar si las dos computadoras están en la misma red local.

Respuesta1

Una solución sería tener un servidor DNS local en su LAN: podría agregar una entrada local que resolvería la URL/nombre de dominio de su escritorio en una IP local en la LAN. Por aquí:

  • cuando estás en la LAN: obtienes la IP local de tu escritorio
  • cuando estás en la WAN: obtienes la IP pública de tu escritorio

Desafortunadamente, esto probablemente requerirá mucho trabajo, ya quela mayoría de los enrutadores no incluyen DNS localy su enrutador (archer C7) no parece ofrecer dicha función.

información relacionada