Author Topic: NAT Loopback  (Read 1356 times)

alex2891

  • Zen Apprentice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
NAT Loopback
« on: June 27, 2017, 05:27:21 pm »
Добрый день, скажите кто знает, как сделать NAT Loopback  в Zentyal 4.0?

У директора на телефоне стоит клиент видеонаблюдения,
ранее на роутере tplink я настраивал ему 1 профиль с внешним(WAN) адресом, для просмотра видео из локалки и внешней сети без переключения профилей.
На Zentyal просмотр видео через внешний ip работает ТОЛЬКО вне локальной сети.


luha

  • Zen Samurai
  • ****
  • Posts: 479
  • Karma: +36/-1
    • View Profile
Re: NAT Loopback
« Reply #1 on: June 28, 2017, 10:32:10 am »
Если шэф подключается к внешней сети то получает по DHCP адрес IP во внешней сети и во внутреннюю сеть не попадает... вместо этого он идёт на внешний IP, который на роутере, а роутер согласно своей таблице наведения NAT передаёт трафик на конкретный IP внутренней сети и также обеспечивает обратную связь. При этом всё проходит через роутер и никак иначе т.к. другой дороги нет.

Если шэф подключается к внутренней сети то и IP он получает во внутренней сети и с хостами во внутренней сети он должен соединятся используя адреса внутренней сети т.к. если он попробует подключиться ко внешнему адресу как в первом примере то роутер его естественно завернёт в верном направлении, но вот дальше камера вышлет ответ, который напрямую придёт к шэфу... но устройство шэфа ожидает ответ не с внутреннего IP а с внешнего IP, однако с внешнего IP роутера никак не получится получить ответ во внутреннюю сеть по очевидным причинам (шэф внутри). Соединение начинается через роутер, но дальше не идёт через него, а внешний адрес только у роутера, коннект теряется. В итоге выглятит всё так буд-то не работает.

Если выкинуть роутер на зенчале и поставить что-то вроде домашнего роутера то схема №2 заработает. Дело в том что домашние роутеры подразумевают отсутствие в локальной сети развитой инфраструктуры в виде серверов DNS и прочего, поэтому принудительно пускают трафик через себя модифицируя пакеты. Для домашнего пользователя так лучше и проще - дома не бывает много хостов/серверов с привязкой к внешнему IP и самих IP как правило не более одного, да и то чаще они динамические. Короче это сделано с совершенно другими целями в угоду непросвещённым юзверям, а в продакшэне никто так делать не станет. Чтобы весь трафик внутренней сети принудительно проходил через какое-то одно устройство? Сумашествие, хотя и реализуемо конечно если очень сильно хочется, но бред полный.

Как же должно быть? Самый правильный вариант это использовать доменные имена и сервера DNS (так делают все нормальные админы).

Во внешней сети по конкретному адресу указываем внешний IP, во внутренней сети настраиваем внутренний сервер DNS и к этому же адресу привязываем внутренний IP. Шэф коннектится снаружи, использует внешний сервер DNS - получает внешний адрес, коннектится изнутри - получает с внутреннего DSN внутренний IP и всё работает как смыв в кремлёвском туалете.