Как зайти по внешнему IP-адресу из локальной сети для MikroTik
- Роутер с внешним IP (WAN IP) 1.1.1.1.
- Компьютер с локальным адресом 192.168.88.229, и запущенным на нем сервером, приложением и т. д. для доступа из внешней сети.В нашем случае для соединения используется порт 8080.
- Компьютер в локальной сети с адресом 192.168.88.110.
У нас уже есть настроенное правило проброса порта 8080:
Но оно не будет срабатывать при обращении из локалки, так как настройки ориентированы на пакеты из внешней сети, через WAN-порт. Поэтому нам нужно прописать дополнительно еще 2 правила.
Настройка доступа из локальной сети по внешнему IP-адресу
1. Создаем правило для перенаправления обращений по внешнему IP из локальной сети.
Вкладка General.
Chain — dstnat.
Src. Address — пишем здесь локальный адрес компьютера, с которого будем заходить по внешнему IP, или диапазон адресов, если такой доступ нужно предоставить нескольким компьютерам сети.
Dst. Address — указываем внешний адрес компьютера/ сервера и т. п., по которому будет осуществляться доступ из локалки.
Protocol, Dst. Port — здесь прописываем параметры порта и протокола, которые соответствуют нашему соединению (те же, что и в пробросе портов).
Вкладка Action.
To Addresses — указываем локальный адрес нашего сервера, компьютера, на который мы заходим по внешнему IP-адресу.
To Ports — порт тот же самый, что на предыдущей вкладке, поэтому здесь можно ничего не указывать.
Теперь на компьютер 192.168.88.229 можно зайти из локальной сети по внешнему IP-адресу 1.1.1.1.
Но при попытке какого-то взаимодействия с ним ничего не получится. Почему? Посмотрим, что происходит.
♣ Наш компьютер (192.168.88.110) посылает пакет на внешний адрес сервера, который является и адресом роутера, соответственно — 1.1.1.1.
♣ Роутер добросовестно перенаправляет его по нашему правилу dst-nat на компьютер с адресом 192.168.88.229.
♣ Тот его принимает и отправляет ответ. Но так как он видит в качестве адреса источника локальный IP-адрес (ведь пакет поступил от компьютера в локальной сети), он отправляет ответ не на маршрутизатор, а напрямую получателю.
♣ Получатель же (192.168.88.10) отправляя данные по внешнему IP, и ответ также ожидает от внешнего IP. Получив пакет от локального 192.168.88.229, он его просто сбрасывает, как ненужный.
Поэтому нам нужно еще одно правило, которое будет подменять локальный адрес источника при отправке пакета на внешний IP.
2. Подменяем локальный адрес компьютера на внешний IP-адрес.
На вкладке Action выставляем маскарадинг (masquerade), т. е. подмену адреса источника на локальный адрес маршрутизатора.
На вкладке General прописываем правила, при которых он будет применяться:
Chain — srcnat, т. е. при запросах из локальной сети.
Src. Address — пишем здесь локальный адрес компьютера, или диапазон адресов, с которых будут отправляться пакеты.
Dst. Address — здесь конкретизируем «адрес получателя», т. е. правило будет применяться только для пакетов, адресованных нашему серверу.
Protocol, Dst. Port — здесь прописываем те же параметры порта и протокола. Правило scrnat для доступа по внешнему IP Правило scrnat для доступа по внешнему IP,
Второй способ Hairpin NAT MikroTik:
Теперь добавляете описанное выше правило srcnat, и все. Можно добавить дополнительную фильтрацию, прописав в out-interface тот интерфейс, с которого будут осуществляться отправки пакетов, если есть такая необходимость. Недостатком Hairpin NAT является только то, что нагрузка на роутер возрастает, ведь те обращения, что раньше проходили через локальную сеть непосредственно между компьютерами, теперь будут идти через маршрутизатор. Второй способ проще, но, в зависимости от конфигурации вашей сети, может использоваться и первый.
Источник: http://lantorg.com/article/kak-zajti-po-vneshnemu-ip-adresu-iz-lokalnoj-seti-dlya-mikrotik © LanTorg.com