Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PfSense 2.2: ipsec up - пропадает lan

    Scheduled Pinned Locked Moved Russian
    3 Posts 2 Posters 2.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dima_k
      last edited by

      Всем Доброе время суток!

      Пару дней назад обновил pfSense c 2.1.5 до версии 2.2. Сразу после обновления отвалилась авторизация через AD, zabbix-agent стал не доступен.

      Схема с проблемным шлюзом: LAN офиса –- pfSense 2.2 (на котором проблема) --- ipsec-тоннель LAN-LAN (локальная сеть LAN, удаленная сеть 0.0.0.0/0) --- pfSense 2.2 --- LAN главного офиса

      На прошлых версия pfSense все прекрасно работало, конфигурация не менялась, проводил только автоматическое обновление версии.

      Вчера в ходе экспериментов выяснил:

      1. при отключенном ipsec все в любую сторону работает корректно, т.е: dns, zabbix-agent, авторизация в AD, доступ в интернет (напрямую через WAN, не через удаленную сеть), ping на lan-адрес pfsense, с pfsense есть ping на localhost, свой lan-адрес, другие хосты lan;

      2. при включенном ipsec:

      • dns pfSense может отрезолвить только хосты с dns серверов, которые достижимы через WAN или через ipsec;
      • есть пинг lan адреса только из удаленной сети (главного офиса), из LAN'а пинговать шлюз не выходит, web-интерфейс не доступен;
      • с pfsense пингуется localhost;
      • с pfsense lan адрес и любой адрес из его же локальной сети не пингуется, собственно потому и отвались некоторые сервисы, которые находятся в локальной сети: это доменный контроллер и прокси zabbix'а (повторюсь, при отключенном ipsec это все работает и работало на прежних версиях с включенном ipsec).
      • достижимы все локальные хосты из удаленной сети, в локальной сети работают сервисы и ресурсы интернета и удаленной сети.

      При этом pfSense 2.2 уже работает в 2-х других офисах (этой 3-ий, который я обновлял), что натолкнуло на мысль. В итоге проблема оказалось в том, что политика ipsec воспринимается буквально: "все из LAN через удаленную сеть", даже когда я пинговал lan адрес pfsense из локальной сети - я видел эти пакеты на удаленном шлюзе. При поднятии ipsec с политикой "LAN офиса---LAN удаленного офиса (т.е. не 0.0.0.0/0)" все работает корректно.

      Это баг? Кто-то уже сталкивался с подобным? Бегло по баг-треккеру пробежался подобного не увидел. Есть идеи?

      1 Reply Last reply Reply Quote 0
      • werterW
        werter
        last edited by

        В итоге проблема оказалось в том, что политика ipsec воспринимается буквально: "все из LAN через удаленную сеть", даже когда я пинговал lan адрес pfsense из локальной сети - я видел эти пакеты на удаленном шлюзе

        Если в remote network стоит 0.0.0.0, то весь трафик будет заворачиваться в туннель.

        При поднятии ipsec с политикой "LAN офиса–-LAN удаленного офиса (т.е. не 0.0.0.0/0)" все работает корректно.

        Это значит, что всё, что относится к удаленной лок. сети будет уходить в туннель. Остальное - в WAN.

        И это, я так понимаю, нормальное поведение.

        1. при включенном ipsec:

        По какой схеме выше ?

        • dns pfSense может отрезолвить только хосты с dns серверов, которые достижимы через WAN или через ipsec;

        А что в настройках DNS самого pfsense ? Указаны ли адреса лок. DNS ?

        Возможно, что адресация в лок. сетях за pfsense-ми совпадает. Проверьте это.

        1 Reply Last reply Reply Quote 0
        • D
          dima_k
          last edited by

          Все проверено, адресация не совпадает - уже почти 10 лет работает  :) (на pf не все эти годы, но все же)

          Если в remote network стоит 0.0.0.0, то весь трафик будет заворачиваться в туннель.

          Верно. Это нужно, это работает. Проблема в том, что в туннель попадает трафик, который относится к lan адресу pfsense. Что я имею в виду:

          • с pfsense пингуется localhost;
          • с pfsense lan адрес и любой адрес из его же локальной сети не пингуется, собственно потому и отвались некоторые сервисы, которые находятся в локальной сети: это доменный контроллер и прокси zabbix'а (повторюсь, при отключенном ipsec это все работает и работало на прежних версиях с включенном ipsec).

          Прохождение пакета в pf? Ответ, например, тут https://forum.pfsense.org/index.php?topic=73670.0

          По моим результатам получается, что я спрашиваю: "кто такой localhost?" - ответ pf: "Я!"
          Вопрос:"кто такой по lan ip (настроен как статика на порту em0)" - ответ pf: "Не Я!", и отправляет его в ipsec-тоннель, т.к. его ip попадает в пространство 0.0.0.0/0.

          Да и собственно, да и если даже теоретически представить, что такой же ip есть в удаленной сети, то это не должно влиять, т.к. pf обязан понять что это адрес принадлежит также и ему. По ссылке выше есть схема, где есть блок условия "to me?", и он выше таблицы маршрутизации, и я совершенно согласен. что это правильно.

          Я это все к чему - я не понимаю в чем может быть причина, когда я задал локальному интерфейсу ip, допустим, 10.0.0.1, а pf мой запрос по этому адресу (даже не только с компа локальной сети, но и через web (Diagnostics-Ping или Diagnostics-Command Promt), и из терминала) уходит в тоннель.

          Уважаемый werter, я настроен позитивно - ни капли негатива если что  :) попытался объяснить, что все по максимуму постарался проверить, а ехать переустанавливать неблизко, резервного канала и второго белого ip нет. Хочется выслушать идеи, если есть.

          Что в таком случае можно проверить? Как я понимаю нужно смотреть на уровне ядра т.к. не проходит проверка принадлежности ip адреса к списку адресов, которые присвоены интерфейсам на pfsense.

          1 Reply Last reply Reply Quote 0
          • First post
            Last post
          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.