alexey_sadovin Posted April 5, 2017 Возникла такая задача. Настроить роутер микротик. У него 2 аплинка. Первый аплинк с ипом из приватной подсети. И второй аплинк с нормальной белой подсетью. Аплинк 1 используется как шлюз по умолчанию. Аплинк 2 используется для доступа снаружи к серверам внутри сети, которые находятся за натом. Это дело рулится через маркировку пакетов, опциями в /ip firewall mangle Всё работает, но возникла такая проблема. Сервер находится в подсети 10.0.10.0/24, его ип адрес 10.0.10.200. И когда кто-то снаружи заходит по ссш или использует другие сервисы (всё это работает через проброс портов), то ип адрес клиентов на сервере указывается как 10.0.10.1. И из-за этого возникло много проблем. Можно ли как-то сделать, чтобы через проброс портов отображались реальные ипы клиентов, а не ип шлюза? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DRiVen Posted April 5, 2017 Можно ли как-то сделать, чтобы через проброс портов отображались реальные ипы клиентов, а не ип шлюза? NAT настроить нормально. /ip firewall nat export покажите и интерфейсы с именами опишите, какой куда смотрит. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexey_sadovin Posted April 5, 2017 NAT настроить нормально. /ip firewall nat export покажите и интерфейсы с именами опишите, какой куда смотрит. /ip firewall nat add action=masquerade chain=srcnat add action=dst-nat chain=dstnat dst-port=1022 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.200 to-ports=22 add action=netmap chain=dstnat dst-port=5060 in-interface=ether3 protocol=udp \ to-addresses=10.0.10.200 to-ports=5060 add action=netmap chain=dstnat dst-port=5060 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.200 to-ports=5060 add action=netmap chain=dstnat dst-port=8000 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.2 to-ports=8000 add action=masquerade chain=srcnat out-interface=ether3 ether3 - это интерфейс с белым ипом, для доступа снаружи. ether1 - это интерфейс, на котором находится шлюз по умолчанию. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
EugeneTV Posted April 6, 2017 add action=masquerade chain=srcnat укажите out-interface=ether3 в правиле, а то у вас натится все, во все стороны Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DRiVen Posted April 6, 2017 alexey_sadovin, первое правило исправьте на [add action=masquerade chain=srcnat out-interface=ether1]. EugeneTV, ваше правило уже есть у ТС. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
.None Posted April 6, 2017 по мне, так должно быть как-то так /ip firewall nat add action=dst-nat chain=dstnat dst-port=1022 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.200 to-ports=22 add action=dst-nat chain=dstnat dst-port=5060 in-interface=ether3 protocol=udp \ to-addresses=10.0.10.200 to-ports=5060 add action=dst-nat chain=dstnat dst-port=5060 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.200 to-ports=5060 add action=dst-nat chain=dstnat dst-port=8000 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.2 to-ports=8000 add action=masquerade chain=srcnat out-interface=ether3 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
EugeneTV Posted April 6, 2017 alexey_sadovin, первое правило исправьте на [add action=masquerade chain=srcnat out-interface=ether1]. EugeneTV, ваше правило уже есть у ТС. во-первых, оно значительно ниже, чем add action=masquerade chain=srcnat , поэтому не выполняется. во-вторых, затем натить в ether1, если это у него локальный интрефейс? У .None приведен правильный вариант. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
DRiVen Posted April 6, 2017 EugeneTV, вы стартовый пост вообще прочли? У ТС два аплинка. затем натить в ether1, если это у него локальный интрефейс? ether1 - это интерфейс, на котором находится шлюз по умолчанию. Это интерфейс для общего выхода в инет. alexey_sadovin, правила маскирования действительно должны раполагаться выше трансляций портов, поправьте. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
EugeneTV Posted April 6, 2017 EugeneTV, вы стартовый пост вообще прочли? У ТС два аплинка. Виноват,прозевал второй аплинк, ну и ether1 - это интерфейс, на котором находится шлюз по умолчанию. сбило с толку.Но в любом случае первое правило было неправильное. Натить нужно 1 и 3 интерфейс. Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
alexey_sadovin Posted April 14, 2017 /ip firewall nat add action=masquerade chain=srcnat out-interface=ether1 add action=masquerade chain=srcnat out-interface=ether3 add action=dst-nat chain=dstnat dst-port=1022 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.200 to-ports=22 add action=netmap chain=dstnat dst-port=5060 in-interface=ether3 protocol=udp \ to-addresses=10.0.10.200 to-ports=5060 add action=netmap chain=dstnat dst-port=5060 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.200 to-ports=5060 add action=netmap chain=dstnat dst-port=8000 in-interface=ether3 protocol=tcp \ to-addresses=10.0.10.2 to-ports=8000 Прописал так, поставил первым нужное правило. Всё заработало как нужно Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...