Привет всем! Я обратился за помощью после двух дней поиска в интернете, чтения блогов, руководства Mikrotik и нескольких постов на форуме. Моя конфигурация: RB2011UAS, Router OS версии 6.3.
Сети:
* Интерфейс ETH0 ISP A - 10.0.0.114/30 - Сеть, соединяющая оптический конвертер и наш маршрутизатор.
* Подсеть ISP A - 10.0.1.8/29 - Еще одна публичная подсеть, предоставленная этим провайдером для наших публичных сервисов.
* Интерфейс ETH1 ISP B - 10.0.2.114/30 - Сеть, соединяющая оптический конвертер и наш маршрутизатор.
* Подсеть ISP B - 10.0.3.224/29 - Еще одна публичная подсеть, предоставленная этим провайдером для наших публичных сервисов.
* Интерфейс ETH3 Внутренняя сеть - 192.168.0.0/24
Заметки: В отличие от многих других решений, я не хочу балансировать соединения, и провайдеры не будут обмениваться или принимать трафик друг от друга. Моя основная цель — разрешить серверу по адресу 192.168.0.100 быть доступным из вышеуказанных подсетей.
Что я сделал: Мне удалось настроить dst-nat для доступа по обеим подсетям.
```
chain=dstnat action=dst-nat to-addresses=192.168.0.100 to-ports=80 protocol=tcp src-address=0.0.0.0/0 dst-address=10.0.1.10 src-address-type="" dst-port=8080
chain=dstnat action=dst-nat to-addresses=192.168.0.100 to-ports=80 protocol=tcp src-address=0.0.0.0/0 dst-address=10.0.3.226 src-address-type="" dst-port=8080
```
Это решает задачу NAT, теперь нужно убедиться, что мы выходим тем же провайдером, через которого вошли.
```
chain=input action=mark-connection new-connection-mark=ISPA-IN passthrough=yes in-interface=eth0
chain=input action=mark-connection new-connection-mark=ISPB-IN passthrough=yes in-interface=eth1
chain=output action=mark-routing new-routing-mark=ISPA-IN passthrough=no connection-mark=ISPA-OUT
chain=output action=mark-routing new-routing-mark=ISPB-IN passthrough=no connection-mark=ISPB-OUT
```
И теперь маршруты:
```
0.0.0.0/0 GW 10.0.1.113 Metric 1 Route Mark ISPA-OUT
0.0.0.0/0 GW 10.0.2.113 Metric 1 Route Mark ISPB-OUT
```
Наш шлюз по умолчанию для внутренних клиентов мы используем ISP2 для этого теста: Доступ из внешнего устройства, 3G телефона (в полностью отдельной сети), позволяет посетить 10.0.2.226, но не 10.0.1.10.
Проблемы: Я думаю, я что-то упускаю ПОСЛЕ того, как мы выполняем NAT и отслеживание соединения, я застрял на этапе синхронизации.
Спасибо за ваше время.
Antonio
Сети:
* Интерфейс ETH0 ISP A - 10.0.0.114/30 - Сеть, соединяющая оптический конвертер и наш маршрутизатор.
* Подсеть ISP A - 10.0.1.8/29 - Еще одна публичная подсеть, предоставленная этим провайдером для наших публичных сервисов.
* Интерфейс ETH1 ISP B - 10.0.2.114/30 - Сеть, соединяющая оптический конвертер и наш маршрутизатор.
* Подсеть ISP B - 10.0.3.224/29 - Еще одна публичная подсеть, предоставленная этим провайдером для наших публичных сервисов.
* Интерфейс ETH3 Внутренняя сеть - 192.168.0.0/24
Заметки: В отличие от многих других решений, я не хочу балансировать соединения, и провайдеры не будут обмениваться или принимать трафик друг от друга. Моя основная цель — разрешить серверу по адресу 192.168.0.100 быть доступным из вышеуказанных подсетей.
Что я сделал: Мне удалось настроить dst-nat для доступа по обеим подсетям.
```
chain=dstnat action=dst-nat to-addresses=192.168.0.100 to-ports=80 protocol=tcp src-address=0.0.0.0/0 dst-address=10.0.1.10 src-address-type="" dst-port=8080
chain=dstnat action=dst-nat to-addresses=192.168.0.100 to-ports=80 protocol=tcp src-address=0.0.0.0/0 dst-address=10.0.3.226 src-address-type="" dst-port=8080
```
Это решает задачу NAT, теперь нужно убедиться, что мы выходим тем же провайдером, через которого вошли.
```
chain=input action=mark-connection new-connection-mark=ISPA-IN passthrough=yes in-interface=eth0
chain=input action=mark-connection new-connection-mark=ISPB-IN passthrough=yes in-interface=eth1
chain=output action=mark-routing new-routing-mark=ISPA-IN passthrough=no connection-mark=ISPA-OUT
chain=output action=mark-routing new-routing-mark=ISPB-IN passthrough=no connection-mark=ISPB-OUT
```
И теперь маршруты:
```
0.0.0.0/0 GW 10.0.1.113 Metric 1 Route Mark ISPA-OUT
0.0.0.0/0 GW 10.0.2.113 Metric 1 Route Mark ISPB-OUT
```
Наш шлюз по умолчанию для внутренних клиентов мы используем ISP2 для этого теста: Доступ из внешнего устройства, 3G телефона (в полностью отдельной сети), позволяет посетить 10.0.2.226, но не 10.0.1.10.
Проблемы: Я думаю, я что-то упускаю ПОСЛЕ того, как мы выполняем NAT и отслеживание соединения, я застрял на этапе синхронизации.
Спасибо за ваше время.
Antonio