Я делаю резервную копию своего ноутбука (macOS) на рабочем столе (Linux) дома. Естественно, мой ноутбук иногда находится дома, в той же локальной сети, что и мой рабочий стол, а иногда нет. В течение долгого времени я обращался к ноутбуку на рабочем столе с публичным URL, так как он удобен и работает независимо от того, где он находится. Недостатком является то, что моя система резервного копирования получает доступ к рабочему столу через Интернет, даже если доступ к нему через локальную сеть будет быстрее. (Я мог бы подумать, что, находясь дома, мой маршрутизатор или что-то на стороне моего интернет-провайдера сразу заметит, что я получаю доступ к своему собственному IP-адресу и использую ярлык, но traceroute показывает более 12 прыжков, так что я думаю, что нет.)
Как я могу автоматически получить доступ моего ноутбука к своему рабочему столу через локальную сеть, если это возможно, и через Интернет, в противном случае?
Лучшее, что я могу придумать, - это сценарий оболочки, который проверяет, нахожусь ли я дома, и изменяет файл hosts. Это немного неуклюже и станет обременительным, если я захочу сделать это с несколькими устройствами, особенно с мобильными устройствами. Я не могу быть единственным человеком, который когда-либо имел эту проблему, поэтому я хотел бы знать, есть ли лучшие методы. В идеале, существует какой-то способ настроить поведение разрешения URL с помощью исполняемых программ или небольших скриптов, о которых я не знаю.
Это может показаться чрезмерной настройкой, но резервное копирование иногда занимает много времени, даже в моей домашней сети, и может стать очень неудобным.
Мой роутер это Archer C7.
У меня есть интернет-сервис в жилом секторе, поэтому мой IP-адрес, вероятно, время от времени меняется, но, похоже, он очень редкий.
Я могу определить, находятся ли два компьютера в одной локальной сети.