Всем привет,
Пользуюсь микротиком, но не админ :) по этому скил левел ниже среднего
Есть у меня сервер внутри LAN на котором крутится gitlab и gitlab runner на адресе 192.168.0.2!
MikroTik Router пробрасывает порты с внешнего IP 83.99.163.2 на 192.168.0.2 и всё работает нормально.
Но, gitlab runner хочет конектиктся не по IP, а по DNS имени, соотвественно всё идёт через 83.99.163.2.
Вопрос, как настроить чтобы 192.168.0.2 заходил на 83.99.163.2 и попадал обратно 192.168.0.2 ?
Сейчас такая схема не работает.
В логах вот такая ошибка
dstnat: in:wlan1 out:(unknown 0), src-mac 74:da:38:f2:b6:40, proto TCP (SYN), 192.168.0.2:32898->83.99.163.2:443, len 60
Как сделать внешний IP доступным для сервера в LAN
-
- Сообщения: 4204
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
Либо на самом сервере в hosts, либо на микротике в DNS Static (если конечно микротик используется в качестве DNS) сделайте запись, что нужный домен и есть 192.168.0.2
Telegram: @thexvo
-
- Сообщения: 6
- Зарегистрирован: 30 сен 2021, 16:25
Я хотел сделать через настройка Firewall -> NAT где в action задать same/netmap , а не через подмену DNS. Разве так нельзя?
- hardrockbaby
- Сообщения: 70
- Зарегистрирован: 19 сен 2021, 16:11
Если не ошибаюсь, тут поможет так называемый Hairpin NAT. Для вашего случая:dmitriy.izrigi писал(а): ↑30 сен 2021, 22:47 Я хотел сделать через настройка Firewall -> NAT где в action задать same/netmap , а не через подмену DNS. Разве так нельзя?
Код: Выделить всё
/ip firewall nat
add action=src-nat chain=srcnat dst-address=83.99.163.2 src-address=192.168.0.0/24 to-addresses=192.168.0.1
-
- Сообщения: 4204
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
То есть вы хотите вместо того, чтобы сказать приложению, что то, куда оно хочет находится на localhost'е, действительно гонять трафик туда-сюда через роутер?dmitriy.izrigi писал(а): ↑30 сен 2021, 22:47 Я хотел сделать через настройка Firewall -> NAT где в action задать same/netmap , а не через подмену DNS. Разве так нельзя?
Ооок, ну вот тогда выше написали - добавляйте ещё подмену src-адреса на адрес роутера (hairpin nat).
Telegram: @thexvo
-
- Сообщения: 6
- Зарегистрирован: 30 сен 2021, 16:25
Дело в том, что у меня HTTPS соединение и домен к которому обращается gitlab runner висит на Let's encrypt bote, то есть, каждые три месяца обновляется! У меня есть опасения, что при DNS Static записи, сертификат не обновится, потому как certbot проверят соответсвие DNS IP и Server IP.xvo писал(а): ↑01 окт 2021, 10:24То есть вы хотите вместо того, чтобы сказать приложению, что то, куда оно хочет находится на localhost'е, действительно гонять трафик туда-сюда через роутер?dmitriy.izrigi писал(а): ↑30 сен 2021, 22:47 Я хотел сделать через настройка Firewall -> NAT где в action задать same/netmap , а не через подмену DNS. Разве так нельзя?
Ооок, ну вот тогда выше написали - добавляйте ещё подмену src-адреса на адрес роутера (hairpin nat).
-
- Сообщения: 6
- Зарегистрирован: 30 сен 2021, 16:25
Спасибо, попробовал, вроде должно работать, но ничего не дало, wget с локального компа по адресу 83.99.163.2 виснет.hardrockbaby писал(а): ↑01 окт 2021, 09:53Если не ошибаюсь, тут поможет так называемый Hairpin NAT. Для вашего случая:dmitriy.izrigi писал(а): ↑30 сен 2021, 22:47 Я хотел сделать через настройка Firewall -> NAT где в action задать same/netmap , а не через подмену DNS. Разве так нельзя?Если адреса динамические, то уместней будет action=masqueradeКод: Выделить всё
/ip firewall nat add action=src-nat chain=srcnat dst-address=83.99.163.2 src-address=192.168.0.0/24 to-addresses=192.168.0.1
Может
add action=masquerade chain=srcnat comment="default configuration" out-interface=WAN
Мешает ?
-
- Сообщения: 6
- Зарегистрирован: 30 сен 2021, 16:25
Всем спасибо, сделал по этому документу и всё работает
https://forum.mikrotik.com/viewtopic.php?t=172380
https://forum.mikrotik.com/viewtopic.php?t=172380
-
- Сообщения: 4204
- Зарегистрирован: 25 фев 2018, 22:41
- Откуда: Москва
У меня certbot аналогичным образом крутится в контейнере на сервере внутри сети и никаких трудностей с обновлением сертификата не испытавает, несмотря на то, что на DNS серевере своя локальная запись для этого домена, чтобы наружу трафик не гонять.
Так что в худшем случае оно решается конфигом самого сertbot'а.
А возможно он вообще локальный DNS не использует.
Так что в худшем случае оно решается конфигом самого сertbot'а.
А возможно он вообще локальный DNS не использует.
Telegram: @thexvo
-
- Сообщения: 6
- Зарегистрирован: 30 сен 2021, 16:25
В любом случае спасибо, теперь у меня есть два способа :))xvo писал(а): ↑01 окт 2021, 16:46 У меня certbot аналогичным образом крутится в контейнере на сервере внутри сети и никаких трудностей с обновлением сертификата не испытавает, несмотря на то, что на DNS серевере своя локальная запись для этого домена, чтобы наружу трафик не гонять.
Так что в худшем случае оно решается конфигом самого сertbot'а.
А возможно он вообще локальный DNS не использует.
1. Hairpin NAT
2. DNS Static