Добрый день!
Не получается пробросить 80 порт из локальной сети, нагуглил несколько вариантов решения, но ни один не работает из локальной сети, из интернета проблем нет.
192.168.1.11 - веб сервер, 1.1.1.1 - внешний ип микротика
1-й способ нашел где то на хабре.
add action=dst-nat chain=dstnat comment=web dst-address=1.1.1.1 \
dst-port=80 in-interface=Wan1 protocol=tcp to-addresses=192.168.1.11 \
to-ports=80
add action=dst-nat chain=dstnat dst-address=1.1.1.1 \
dst-port=80 in-interface=Local protocol=tcp src-address=192.168.1.0/24 \
to-addresses=192.168.1.11 to-ports=80
add action=src-nat chain=srcnat dst-address=192.168.1.11 \
dst-port=80 out-interface=Local protocol=tcp src-address=192.168.1.0/24 \
to-addresses=192.168.1.1
Олег, спасибо за совет...
Но проблема решилась сама, не верю в мистику.
Не хочу так говорить, но САМО вдруг заработало, когда в очередной раз попробовал по второму варианту.
Не понимаю, почему.
А вы старые то правила удаляете?=) без src-nat (masquerade) работать не должно. т.к. сервер будет принимать пакеты с адресом вашего компьютера, и отвечать ему же, а компьютер пакетов от 192.168.1.11 не ждет, он запросы на 192.168.1.1 посылал. Поэтому роутер подменят адрес отправителя на свой, чтобы сервер отвечал ему, а он уже обратно компьютеру отошлет
alegzz: мы хотим, чтобы пакет который пришел на лан интерфейс поменял адрес назначения и ушел опять с лан интерфейса, и ответ шел через роутер (если компьютеры в 1 подсети пакеты на роутер попадать не будут и компьютер получит пакеткоторого не ждал).
первое правило меняет адрес назначения для внешнего интерфейса, второе для внутреннего, про третье я уже написал