MikroUser Posted November 26, 2019 В локальной сети есть веб сервер, естественно пишутся логи. Нат и проброс портов настроен, все работает в логах на сервере отображаются правильные ип, белые как надо. Но при обращении к домену сервера из локальной сети в логах пишется ип роутера, т.е. 10.25.130.1. Тоесть когда в локальной сети адрес 10.25.130.5 открывает сайт, то в лог пишется не ип 10.25.130.5 а ип роутера 10.25.130.1. Если обращаться не по домену, а напрямую к адресу сервера в локальной сети то все ок. Уже весь мозк себе сломал, не могу понять что сделать чтоб в логах писался ип из локалки а не ип роутера. Share this post Link to post Share on other sites More sharing options...
nkusnetsov Posted November 26, 2019 (edited) @MikroUser , вам необходимо проделать следующее: 1) обязательно отказаться от порочной практики обращаться к серверу по IP-адресу. Так делают только криворукие 1Сники. 2) настроить split-DNS 3) обращаться к серверу по DNS (FQDN) Edited November 26, 2019 by nkusnetsov Share this post Link to post Share on other sites More sharing options...
MikroUser Posted November 26, 2019 Одними днс тут не отделаться и оно не решит проблему, нужно с правилами ната разобраться, но что я только не делал - пока безрезультатно, при обращении к внешнему ип из локальной сети в логах сервера пишет ип роутера, что есть неправильно. Share this post Link to post Share on other sites More sharing options...
pppoetest Posted November 26, 2019 Всё верно. Если ип внешний, обращение к нему будет отначено. Можно конечно сделать костыль, если у веб сервера есть серый адрес, примерно так: iptables -t nat -A -i fromLAN -p tcp -d ext_ip_web_server --dport 80 -j DNAT --to-destination int_ip_web_server:80 iptables -t nat -A -i fromLAN -p tcp -d ext_ip_web_server --dport 443 -j DNAT --to-destination int_ip_web_server:443 Share this post Link to post Share on other sites More sharing options...
MikroUser Posted November 27, 2019 У сервера только серый (локальный ип). Белый ип у роутера, потому такой костыль не сработает( Share this post Link to post Share on other sites More sharing options...
pppoetest Posted November 27, 2019 Тогда ничего не понимаю, Цитата при обращении к внешнему ип из локальной сети К чьему ип? Share this post Link to post Share on other sites More sharing options...
MikroUser Posted November 27, 2019 потому что сайт\сервер доступен по домену, следовательно из локальной сети идет обращение по домену, а там внешний ип. А обращаться к серверу напрямую из локалки нельзя. Придется наверное дать серваку белый ип, и пустить мимо микротика. Share this post Link to post Share on other sites More sharing options...
msdt Posted November 27, 2019 (edited) Если вынести сервер в отдельную подсеть, отличную от той, где находятся клиенты, то source-nat для трафика от клиентов к серверу можно будет отключить, оставив только destination-nat. Тогда сервер будет видеть реальные ip клиентов вне зависимости, в интернете они или в локальной сети. А если они в одной подсети, и к серверу обращаются по внешнему ip, то задача нерешаема, т.к. если нет source nat, то обратный трафик от сервера к клиентам пойдет напрямую, а не через Mikrotik. Еще один, совсем плохой способ обойти проблему - прописать всем в hosts сопоставление dns ->внутренний_ip сервера. Edited November 27, 2019 by msdt Share this post Link to post Share on other sites More sharing options...
MikroUser Posted November 27, 2019 @msdt Огромное спасибо, вынес сервер в отдельную подсеть и все получилось. Ип локальных пользователей отображаются в логах правильно) Вопрос решен, тему можно закрыть. Share this post Link to post Share on other sites More sharing options...
EugeneTV Posted December 4, 2019 В 28.11.2019 в 00:16, MikroUser сказал: @msdt Огромное спасибо, вынес сервер в отдельную подсеть и все получилось. Ип локальных пользователей отображаются в логах правильно) Вопрос решен, тему можно закрыть. Можно и нужно было поднять внутренний dns-сервер , а на нем уже прописать имя сервера с серым адресом. Тогда запросы изнутри пойдут прямо на него, минуя роутер. Share this post Link to post Share on other sites More sharing options...
gard Posted December 12, 2019 Bind умеет вьюсы (views), наверное для вашего случая подойдет. Он будет выдавать разные ip при запросе в зависимости от того откуда пришел запрос на разрешение имени. Share this post Link to post Share on other sites More sharing options...