Не слишком хорошо знаю CMD, в частности, постоянно путаюсь в том, как записывать переменные. Оставил первый сработавший вариант. Сейчас попробовал - да, можно и по одному восклицательному знаку оставить. Но это всё равно ничего не меняет.
Вывод я отключил для удобства, ошибок никаких не выдаётся (они вообще в отдельном потоке выводятся, на них @echo off не влияет), просто прерывается выполнение цикла.
Совершенно не понимаю, зачем менять подсеть, если вы подключаете 1 устройство по VPN. Объединение сетей - дело другое.
1. Подключаетесь к VPN-серверу, получаете адрес 10.1.1.XXX
2. На роутере сети 1 разрешаете трафик между 10.1.1.XXX и сетью роутера. Важно - роутер должен быть шлюзом по умолчанию для хостов своей сети, или их дефолтный шлюз должен перенаправлять запросы к сети 10.1.1.0/24 на роутер.
3. На хосте 10.1.1.XXX пишете простенькие скрипты для установления и разрыва VPN-соединения, которые после поднятия VPN прописывают маршрут(ы) до нужных хостов в сети 1, а перед разрывом VPN-соединения их уничтожают. При добавлении необходимо поставить metric меньше On-Link маршрута и указать интерфейс, но это решаемо.
В общем, геморрой ещё тот, конечно, но если есть необходимость - сделать можно, было бы желание. Самое напрягающее здесь, пожалуй - если нужен доступ не до одного-двух хостов, а на два порядка больше, то и маршрутов будет соответствующее количество, а прописать их диапазоном с маской не получится: у вас шлюз сети 2 тогда недоступен будет, соответственно, в интернет доступ обрубится и VPN тоже отвалится.
А так - Руслан Федосеев прав. Маленький роутер с собой (типа какого-нибудь Olax MT30) - самое простое решение. Ещё и SIM-карту можно поставить, и когда с WiFi всё плохо - через мобильную связь работать можно (не советую прям вот этот роутер, просто рекомендую обратить внимание на этот класс устройств).
Для начала, если у вас динамический внешний адрес, то откуда вы его взяли для правила dstnat?
А вообще, лог вам в помощь.
/ip firewall filter
add action=accept chain=forward connection-nat-state=dstnat log=yes log-prefix="input: "
/ip firewall nat
add action=netmap chain=dstnat -interface=pppoe-out1 \
dst-port=9003 log=yes log-prefix="9003: " protocol=\
tcp to-addresses=192.168.0.98 to-ports=9003
Поставьте правила на правильные места. И разрешите 192.168.0.98 выходить в интернет.
А потом идите с ВНЕШКИ на <ваш внешний IP>:9003 и смотрите лог. Есть запись с префиксом "input:", значит filter отработал. Как именно - в логе будет написано. Есть запись с префиксом "9003:", значит NAT отработал. Как именно - в логе будет написано. Если всё корректно работает - значит проблема в самом сервисе на сокете 192.168.0.98:9003, копайте его.
И да, переназначьте порт WebFig с 80 на какой-то другой, если хотите транслировать порт 80 в 9003.
Пробовал, не получается. Или я как-то не так это делаю. Когда отпускать #? При наборе цифр какая-то индикация должна быть? Вообще же встречал информацию, что этот способ на серии SPA не работает, ибо эта серия - не Cisco, а Linksys.
Это решение недоступно. В меню просто нет "Настроек" (Settings). Из всего, что можно поменять - только пользовательский пароль. Ещё часть инфы доступна на просмотр. Управление системными настройками недоступно вовсе (его просто нет в меню).
Тогда создаёшь лист, например freepbx-subnets, с членами 1.1.1.1/24 2.2.2.2/24 3.3.3.3/24 4.4.4.4/24 5.5.5.5/24, и правило firewall: /ip firewall add action=accept chain=forward dst-address-list=freepbx-subnets src-address-list=freepbx-subnets
Естественно, на все подсети должны быть действующие маршруты.
Но правильнее было бы в лист записать только сами серверы FreePBX, и ограничить правило firewall'а по типу трафика.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Вывод я отключил для удобства, ошибок никаких не выдаётся (они вообще в отдельном потоке выводятся, на них @echo off не влияет), просто прерывается выполнение цикла.