LINUX.ORG.RU

История изменений

Исправление micronekodesu, (текущая версия) :

Не понял. Давайте я попробую объяснить что я предлагаю - у вас есть локальная сеть 192.168.0.0/24, сервером для связи с внешним миром выступает 192.168.0.1, адрес малины 192.168.0.2. На 192.168.0.1 я предлагаю поставить и dns-сервер и прописать его в параметрах всех устройств домашней сети (это не будет проблемой, адреса же вы и так по dhcp раздаете). Предположим что у вас есть домен, скажем example.com, и клиенты подключаются как раз по этому домену.

Клиент из внешней сети обращается к какому-нибудь там гугловому dns, и тот говорит что у example.com ip 1.1.1.1. Клиент идет по этому адресу, попадает на внешний интерфейс вашего сервера (ну или на роутер а оттуда на сервер, не важно) и сервер проксирует запрос на малину. Клиент из домашней сети спрашивает адрес у локального dns (192.168.0.1), и тот возвращает ему уже 192.168.0.2 - клиент идет туда и попадает сразу на малину. То есть вроде как все то, что вам и нужно.

К слову сказать, не обязательно проксировать запросы через nginx из вне если он вам не нужен - можете это сделать через iptables по порту например.

Желательно, чтобы сервис работал именно на том девайсе, с которого будут подключаться

Вот этот момент я не совсем понял, вы же пишете что сервис работает на малине.

Исходная версия micronekodesu, :

Не понял. Давайте я попробую объяснить что я предлагаю - у вас есть локальная сеть 192.168.0.0/24, сервером для связи с внешним миром выступает 192.168.0.1, адрес малины 192.168.0.2. На 192.168.0.1 я предлагаю поставить и dns-сервер и прописать его в параметрах всех устройств домашней сети (это не будет проблемой, адреса же вы и так по dhcp раздаете). Предположим что у вас есть домен, скажем example.com, и клиенты подключаются как раз по этому домену.

Клиент из внешней сети обращается к какому-нибудь там гугловому dns, и тот говорит что у example.com ip 1.1.1.1. Клиент идет по этому адресу, попадает на внешний интерфейс вашего сервера (ну или на роутер а оттуда на сервер, не важно) и сервер проксирует запрос на малину. Клиент из домашней сети спрашивает адрес у локального dns (192.168.0.1), и тот возвращает ему уже 192.168.0.2 - клиент идет туда и попадает сразу на малину. То есть вроде как все то, что вам и нужно.

Желательно, чтобы сервис работал именно на том девайсе, с которого будут подключаться

Вот этот момент я не совсем понял, вы же пишете что сервис работает на малине.