Назад | Перейти на главную страницу

Маршрутизация в Linux: как разрешить устройству в частной сети подключать общедоступный IP-адрес в неизвестной сети?

Рассмотрим следующую топологию сети:

                            ----------
    ---- (my network) ---- | Device 1 | (.101)
   |  192.168.191.0/24 |    ----------
   |                   |      ----------
   |                    ---- | Device 2 | (.102)
   |                   |      ----------
   |                   |         ----------
   |                    ------- | Device 3 | (.103)
   |                             ----------  .
  eth1 (.1)                                    . . . . . . . . .
   |                                                             .
  --------                                 ---                  ------------
 | Router | eth0 --- (unknown network) -- | ? | -- Internet -- | D3 Servers |
  --------                                 ---                  ------------

У меня есть Linux-маршрутизатор между моей частной сетью и неизвестной сетью. Неизвестная сеть может быть другой частной сетью, я вообще не контролирую ее.

Большинство устройств в моей внутренней сети подключаются к внешнему миру через прокси-сервер HTTP, находящийся в маршрутизаторе, поэтому нет необходимости в NAT между частной сетью и неизвестной сетью.

Однако у меня есть одно устройство (Устройство 3), которое должно иметь возможность подключаться к набору публичный IP обращайтесь напрямую.

Поскольку неизвестная сеть также может быть частной сетью, NAT может не подходить (из-за двойного NAT). Устройство 3 должно подключить набор известных общедоступных IP-адресов и портов, которые нельзя изменить. Устройство 3 можно изолировать от другой сети логически (с конфигурацией DHCP от маршрутизатора), но не физически. Очевидно, устройство 3 не может использовать прокси-сервер HTTP (CONNECT), предоставленный маршрутизатором.

Могу ли я каким-то образом настроить свой маршрутизатор, чтобы устройство 3 могло подключаться к любому общедоступному IP-адресу, и если да, то как?