alexey_sadovin Posted April 5, 2017 Posted April 5, 2017 Возникла такая задача. Настроить роутер микротик. У него 2 аплинка. Первый аплинк с ипом из приватной подсети. И второй аплинк с нормальной белой подсетью. Аплинк 1 используется как шлюз по умолчанию. Аплинк 2 используется для доступа снаружи к серверам внутри сети, которые находятся за натом. Это дело рулится через маркировку пакетов, опциями в /ip firewall mangle Всё работает, но возникла такая проблема. Сервер находится в подсети 10.0.10.0/24, его ип адрес 10.0.10.200. И когда кто-то снаружи заходит по ссш или использует другие сервисы (всё это работает через проброс портов), то ип адрес клиентов на сервере указывается как 10.0.10.1. И из-за этого возникло много проблем. Можно ли как-то сделать, чтобы через проброс портов отображались реальные ипы клиентов, а не ип шлюза? Вставить ник Quote
DRiVen Posted April 5, 2017 Posted April 5, 2017 Можно ли как-то сделать, чтобы через проброс портов отображались реальные ипы клиентов, а не ип шлюза? NAT настроить нормально. /ip firewall nat export покажите и интерфейсы с именами опишите, какой куда смотрит. Вставить ник Quote
alexey_sadovin Posted April 5, 2017 Author 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
EugeneTV Posted April 6, 2017 Posted April 6, 2017 add action=masquerade chain=srcnat укажите out-interface=ether3 в правиле, а то у вас натится все, во все стороны Вставить ник Quote
DRiVen Posted April 6, 2017 Posted April 6, 2017 alexey_sadovin, первое правило исправьте на [add action=masquerade chain=srcnat out-interface=ether1]. EugeneTV, ваше правило уже есть у ТС. Вставить ник Quote
.None Posted April 6, 2017 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
EugeneTV Posted April 6, 2017 Posted April 6, 2017 alexey_sadovin, первое правило исправьте на [add action=masquerade chain=srcnat out-interface=ether1]. EugeneTV, ваше правило уже есть у ТС. во-первых, оно значительно ниже, чем add action=masquerade chain=srcnat , поэтому не выполняется. во-вторых, затем натить в ether1, если это у него локальный интрефейс? У .None приведен правильный вариант. Вставить ник Quote
DRiVen Posted April 6, 2017 Posted April 6, 2017 EugeneTV, вы стартовый пост вообще прочли? У ТС два аплинка. затем натить в ether1, если это у него локальный интрефейс? ether1 - это интерфейс, на котором находится шлюз по умолчанию. Это интерфейс для общего выхода в инет. alexey_sadovin, правила маскирования действительно должны раполагаться выше трансляций портов, поправьте. Вставить ник Quote
EugeneTV Posted April 6, 2017 Posted April 6, 2017 EugeneTV, вы стартовый пост вообще прочли? У ТС два аплинка. Виноват,прозевал второй аплинк, ну и ether1 - это интерфейс, на котором находится шлюз по умолчанию. сбило с толку.Но в любом случае первое правило было неправильное. Натить нужно 1 и 3 интерфейс. Вставить ник Quote
alexey_sadovin Posted April 14, 2017 Author 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
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.