Здравствуйте!
Возможно, эта тема уже обсуждалась и есть решение, но что то толковое я не нашел.
Есть действующий туннель IPIP, установлен ipsec secret, адресация в офисах 10.0/24 и 11.0/24.
Как выпустить группу компьютеров через туннель в интернет?
Выход в интернет через туннель.
-
- Сообщения: 185
- Зарегистрирован: 24 ноя 2016, 21:14
добрый, а я не понимаю что мешает:
прописать на обоих дейвайсах роутинг ( наверное он есть если туннель действующий) на роутере, который не должен выходить в интернет default на стыковый адрес другого, на том где выход, дописываем nat
прописать на обоих дейвайсах роутинг ( наверное он есть если туннель действующий) на роутере, который не должен выходить в интернет default на стыковый адрес другого, на том где выход, дописываем nat
-
- Сообщения: 22
- Зарегистрирован: 05 дек 2018, 17:47
Маршруты, конечно, прописаны:
ОФИС 1 - A S 192.168.11.0/24 192.168.10.1 ipip-tunnel1
ОФИС 2 - A S 192.168.10.0/24 192.168.11.1 ipip-tunnel1
В нате прописывал так: chain=srcnat action=src-nat to-addresses=хх.xx.xx.xx src-address=192.168.10.22 out-interface=ipip-tunnel1 log=no log-prefix="" , но это не работает.
ОФИС 1 - A S 192.168.11.0/24 192.168.10.1 ipip-tunnel1
ОФИС 2 - A S 192.168.10.0/24 192.168.11.1 ipip-tunnel1
В нате прописывал так: chain=srcnat action=src-nat to-addresses=хх.xx.xx.xx src-address=192.168.10.22 out-interface=ipip-tunnel1 log=no log-prefix="" , но это не работает.
- Vlad-2
- Модератор
- Сообщения: 2531
- Зарегистрирован: 08 апр 2016, 19:19
- Откуда: Петропавловск-Камчатский (п-ов Камчатка)
- Контактная информация:
Надо делать правильнее:
1) в манглах делаем правило, что если идут пакеты с адресов, которые есть
в адрес-листе IP-Global, то делаем марк-роутинг
2) создаём маршрут с меткой созданной правилом марк-роутингом
3) и уже на пограничном роутере, приняв адресацию эту, НАТим перед выходом.
(обобщённо)
1) в манглах делаем правило, что если идут пакеты с адресов, которые есть
в адрес-листе IP-Global, то делаем марк-роутинг
2) создаём маршрут с меткой созданной правилом марк-роутингом
3) и уже на пограничном роутере, приняв адресацию эту, НАТим перед выходом.
(обобщённо)
-
- Сообщения: 22
- Зарегистрирован: 05 дек 2018, 17:47
Простите, я только начал использовать mikrotik
Напишите, пожалуйста, более подробно...
Заранее благодарю.
Напишите, пожалуйста, более подробно...
Заранее благодарю.
- Vlad-2
- Модератор
- Сообщения: 2531
- Зарегистрирован: 08 апр 2016, 19:19
- Откуда: Петропавловск-Камчатский (п-ов Камчатка)
- Контактная информация:
Вопросы у Вас и желания не начинающего....
1) уточните, Интернет есть только в одном офисе?
2) нарисуйте хотя бы от руки, две сети, два офиса, два роутера, связь между ними,
назовите роутеры например R1 и R2, чтобы можно было как-то явно
и конкретно и предметно общаться.
3) суть задачи перед Вами стоит = если та сеть, которой нужен Интернет,
хочет именно Интернет, её надо завернуть в туннель, на тот роутер, который уже
с Интернетом, и уже пришедших "гостей" отправить в Интернет.
(это я так понимаю.....)
4) как у Вас офисы сделаны? в каждом офисе свой роутер? для компов офисных,
что является шлюзом? какая вообще логика сетей?
5) к сожалению, выше были даны очень подробные инструкции, взять айпи компа(ов),
их "пометить", и уже помеченные завернуть в отдельную таблицу маршрутизации.
Это позволит именно тех, кто хочет Интернета = направлять нам туда, где он есть.
6) ну и отвечая на Ваш вопрос в первом сообщении, что типа решения есть,
но я не нашёл явного, тут тоже увы, лукавите, на 100% не будет так, что команды
взяли и они подойдут...нет, есть условие, есть решение,
в пункте выше, я описал словами даже как строится логика.
Команды дать не проблема, но они скорее не заработают, так как в командах надо использовать
название интерфейсов, адресацию и т.д.
-
- Сообщения: 22
- Зарегистрирован: 05 дек 2018, 17:47
спасибо за пояснение.
попытался сделать так:
В Mangle:
chain=prerouting action=mark-routing new-routing-mark=ipip-tunnel1 passthrough=yes src-address=192.168.10.22 log=no log-prefix=""
В Route:
0 A S 0.0.0.0/0 ipip-tunnel1 1
Задача: один/группу компьютеров из офиса R1 выпускать в интернет с ip офиса R2, сохраняя доступ к локальным ресурсам.
Два офиса, оба имеют свой интернет.
R1
RB3011UiAS (OS 6.44)
Public IP: 1.1.1.1
Local net: 192.168.10.0/24
IP с примера: 192.168.10.22
R2
hap ac lite (OS 6.44)
Public IP: 2.2.2.2
Local net: 192.168.11.0/24
IPIP (пока без шифрования)
Настройки стандартные, устройства из офиса R1 видят все устройства из офиса R2 и наоборот.
Название интерфейса туннеля : ipip-tunnel1
R1
172.16.30.1/30 в Addresses назначено интерфейсу ipip-tunnel1
Маршрут:
A S 192.168.11.0/24 192.168.10.1 ipip-tunnel1 1
NAT:
chain=srcnat action=accept src-address=192.168.10.0/24 dst-address=192.168.11.0/24 log=no log-prefix=""
R2
172.16.30.2/30 в Addresses назначено интерфейсу ipip-tunnel1
Маршрут:
A S 192.168.10.0/24 192.168.11.1 ipip-tunnel1 1
NAT:
chain=srcnat action=accept src-address=192.168.11.0/24 dst-address=192.168.10.0/24 log=no log-prefix=""
Схему вложил.
PS: Ctrl+C/Ctrl+V не лучший вариант, пытаюсь разобраться.
попытался сделать так:
В Mangle:
chain=prerouting action=mark-routing new-routing-mark=ipip-tunnel1 passthrough=yes src-address=192.168.10.22 log=no log-prefix=""
В Route:
0 A S 0.0.0.0/0 ipip-tunnel1 1
Задача: один/группу компьютеров из офиса R1 выпускать в интернет с ip офиса R2, сохраняя доступ к локальным ресурсам.
Два офиса, оба имеют свой интернет.
R1
RB3011UiAS (OS 6.44)
Public IP: 1.1.1.1
Local net: 192.168.10.0/24
IP с примера: 192.168.10.22
R2
hap ac lite (OS 6.44)
Public IP: 2.2.2.2
Local net: 192.168.11.0/24
IPIP (пока без шифрования)
Настройки стандартные, устройства из офиса R1 видят все устройства из офиса R2 и наоборот.
Название интерфейса туннеля : ipip-tunnel1
R1
172.16.30.1/30 в Addresses назначено интерфейсу ipip-tunnel1
Маршрут:
A S 192.168.11.0/24 192.168.10.1 ipip-tunnel1 1
NAT:
chain=srcnat action=accept src-address=192.168.10.0/24 dst-address=192.168.11.0/24 log=no log-prefix=""
R2
172.16.30.2/30 в Addresses назначено интерфейсу ipip-tunnel1
Маршрут:
A S 192.168.10.0/24 192.168.11.1 ipip-tunnel1 1
NAT:
chain=srcnat action=accept src-address=192.168.11.0/24 dst-address=192.168.10.0/24 log=no log-prefix=""
Схему вложил.
PS: Ctrl+C/Ctrl+V не лучший вариант, пытаюсь разобраться.
- Vlad-2
- Модератор
- Сообщения: 2531
- Зарегистрирован: 08 апр 2016, 19:19
- Откуда: Петропавловск-Камчатский (п-ов Камчатка)
- Контактная информация:
(ну вот, уже солидно описано, красиво подано, )
Маркировка:
явных признаков откуда идёт пакет, мало ли что будет.
И для удобства, чтобы в правило не лезть, надо делать адрес-лист в который (как я и писал будет тот/те) которых мы и
должны увидев = промаркировать.
Поэтому показываю своё правило, а Вы слегка его адаптируйте.
Поясню:
если приходит пакет, без метки ранее (стоит no-mark), если он ссылается на НЕ локальные сети (адрес-лист LocalNet,
то есть в адрес-лист LocalNet Вы должны внести все Ваши локальные сети, то есть 192.168.10.0/24 и 192.168.11.0/24), если он состоит в списке
(в адрес-листе to_ISP2, в этот список Вы потом и будете добавлять кого Вы хотите завернуть/дать Интернет), то при этих
лишь условиях промаркировать пакет, и дать ему метку.
Я Вам правило скопировал с рабочего роутера, поэтому метки у меня связаны со вторым провайдером, у Вас метки могут
быть как угодно.
Маршрут:
поэтому Вы должны такой маршрут сделать, он верен, но Вы должны при создании маршрута,
или уже в этом маршруте отредактировать его и добавить метку.
Мы то и специально и маркируем нужных нам клиентов, чтобы именно их и именно туда, куда
нам надо и гнать трафик.
Поэтому вверху, данный маршрут должен быть с маркировкой с Вашим названием.
Лишь как пример:
NAT:
И последняя частая ошибка, это пере-за-НАТ.
У Вас локальные сети, взаимодействие, поэтому тут обобщённый НАТ не нужен.
А значит, как придёт пакет от компа которого Вы завернули,
то на том роутере, на который он пришёл, Вы именно там и должны сделать НАТ.
Но НАТ правило должно быть точным, а именно:
что если пришёл пакет от того компа/компов, и если они идут в глобал (то есть не
в локальную сеть), то только именно при таких данных производить НАТ и выпускать
в интернет.
Пока вот такие советы.
Маркировка:
Уже неплохо, но, нам надо по критерию делать маркировку и только. Поэтому правило в данном случаи не должно содержать
явных признаков откуда идёт пакет, мало ли что будет.
И для удобства, чтобы в правило не лезть, надо делать адрес-лист в который (как я и писал будет тот/те) которых мы и
должны увидев = промаркировать.
Поэтому показываю своё правило, а Вы слегка его адаптируйте.
Код: Выделить всё
/ip firewall mangle
add action=mark-routing chain=prerouting connection-mark=no-mark dst-address-list=!LocalNet new-routing-mark=ISP2_rout passthrough=no src-address-list=to_ISP2
если приходит пакет, без метки ранее (стоит no-mark), если он ссылается на НЕ локальные сети (адрес-лист LocalNet,
то есть в адрес-лист LocalNet Вы должны внести все Ваши локальные сети, то есть 192.168.10.0/24 и 192.168.11.0/24), если он состоит в списке
(в адрес-листе to_ISP2, в этот список Вы потом и будете добавлять кого Вы хотите завернуть/дать Интернет), то при этих
лишь условиях промаркировать пакет, и дать ему метку.
Я Вам правило скопировал с рабочего роутера, поэтому метки у меня связаны со вторым провайдером, у Вас метки могут
быть как угодно.
Маршрут:
Ну тут не совсем правильно, смотрите, Вы метку сделали (Ваш роутер сделал),
поэтому Вы должны такой маршрут сделать, он верен, но Вы должны при создании маршрута,
или уже в этом маршруте отредактировать его и добавить метку.
Мы то и специально и маркируем нужных нам клиентов, чтобы именно их и именно туда, куда
нам надо и гнать трафик.
Поэтому вверху, данный маршрут должен быть с маркировкой с Вашим названием.
Лишь как пример:
Код: Выделить всё
/ip route
add check-gateway=ping distance=1 gateway="gre-tun13A-to-Office (L-via-LAN)" pref-src=10.10.10.8 routing-mark=ISP2_rout
И последняя частая ошибка, это пере-за-НАТ.
У Вас локальные сети, взаимодействие, поэтому тут обобщённый НАТ не нужен.
А значит, как придёт пакет от компа которого Вы завернули,
то на том роутере, на который он пришёл, Вы именно там и должны сделать НАТ.
Но НАТ правило должно быть точным, а именно:
что если пришёл пакет от того компа/компов, и если они идут в глобал (то есть не
в локальную сеть), то только именно при таких данных производить НАТ и выпускать
в интернет.
Пока вот такие советы.
-
- Сообщения: 22
- Зарегистрирован: 05 дек 2018, 17:47
В вашем примере: pref-src=10.10.10.8 - публичный адрес R2?
Про NAT не понял)
Сейчас у меня есть правила:
R1 chain=srcnat action=accept src-address=192.168.10.0/24 dst-address=192.168.11.0/24 log=no log-prefix=""
R2 chain=srcnat action=accept src-address=192.168.11.0/24 dst-address=192.168.10.0/24 log=no log-prefix=""
Они позволяют взаимодействовать двум сетям.
НА R1 добавил еще одно, с ним на на 192.168.10.22 интернета нет :
0 chain=srcnat action=src-nat to-addresses=2.2.2.2 src-address=192.168.10.22 dst-address=!192.168.10.0/24 log=no
log-prefix=
PS: 2.2.2.2 это внешний адрес R2.
Про NAT не понял)
Сейчас у меня есть правила:
R1 chain=srcnat action=accept src-address=192.168.10.0/24 dst-address=192.168.11.0/24 log=no log-prefix=""
R2 chain=srcnat action=accept src-address=192.168.11.0/24 dst-address=192.168.10.0/24 log=no log-prefix=""
Они позволяют взаимодействовать двум сетям.
НА R1 добавил еще одно, с ним на на 192.168.10.22 интернета нет :
0 chain=srcnat action=src-nat to-addresses=2.2.2.2 src-address=192.168.10.22 dst-address=!192.168.10.0/24 log=no
log-prefix=
PS: 2.2.2.2 это внешний адрес R2.
- Vlad-2
- Модератор
- Сообщения: 2531
- Зарегистрирован: 08 апр 2016, 19:19
- Откуда: Петропавловск-Камчатский (п-ов Камчатка)
- Контактная информация:
Нет, это серый адрес
Очень плохо.
Боже...ну вот скажите, Вы можете управлять тем, что у Вас нет в руках?
И тут также: как Вы хотите заНАТить за адресом внешним, который находиться на другом роутере,
при этом делать правила на R1 и прописывать внешний адрес чужого роутера,
который находиться в другом месте?!
ЕЩЁ раз:
1) мы должны засунуть комп сети одной чтобы он пришёл на роутер второй сети со своим адресом
2) и уже на роутере (как на пограничном устройстве) Вы этот адрес отправляете в Интернет.
(аллегория)
То есть мы должны с одного района добраться до другого, и если мы доберёмся,
там будет вечеринка и мы на нём попадём.
Задача добраться!
Перечитайте, возьмите схему, и проанализируйте две Ваши сети.