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

    Alias тип host(s)

    Scheduled Pinned Locked Moved Russian
    34 Posts 3 Posters 1.3k 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.
    • L
      lucas1 @Konstanti
      last edited by

      @Konstanti
      Так я описал ситуацию в первом сообщении темы.
      Если смотреть сам Alias, то в нем 10 dns-имен и ip-адресов.
      Если смотреть Diagnostics\Tables Alias - то в таблице 5 записей. И в результате на одном из серверов не было интернета (его ip отсутствовал в самой таблице). Но до этого естественно был. И был Интернет.
      Ваш совет pfctl -t имя_таблицы -T add ip_адрес помог - 1/1 addresses added.
      Но причина в чем?
      По второму вопросу. как reload Pfsense ruleset и всего остального без перезагрузки устройства.

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

        @lucas1

        Попробуйте схему с Кроном. У меня была ситуация подобная вашей.

        Потому как "pfctl -t имя_таблицы -T add ip_адрес" поможет только ЕДИНОЖДЫ - при добавлении адреса в Алиас. Если ip хоста из Алиаса изменится - помжет только ручное передергивание dns resolver-а. Или схема с Кроном. Пробуйте.

        Зы. В настройках пф указано передергивание dns resolver каЖные 5 минут для разрешения адресов в Алиасах. Но, видимо, оно как-то некорректно отрабатывает (

        L 1 Reply Last reply Reply Quote 0
        • K
          Konstanti @lucas1
          last edited by

          @lucas1
          попробуйте так

          /usr/local/sbin/pfSctl -c 'filter reload'

          в результате в логах должна появиться вот такая запись
          Dec 27 17:24:39 check_reload_status Reloading filter

          L 2 Replies Last reply Reply Quote 0
          • L
            lucas1 @werter
            last edited by

            @werter
            Речь не о dns resolver. Добавление ip-адреса в Alias то-же не работает.
            создал тестовый alias IPs, нажал Empty и он до сих пор пустой - дополнительный вопрос.
            /var/etc/filterdns.conf - что за файл?

            1 Reply Last reply Reply Quote 0
            • L
              lucas1 @Konstanti
              last edited by

              @Konstanti
              в Status\System Logs\System\General?

              1 Reply Last reply Reply Quote 0
              • L
                lucas1 @Konstanti
                last edited by

                @Konstanti
                команда выполнилась. Но содержимое таблицы не изменилось.

                K 1 Reply Last reply Reply Quote 0
                • K
                  Konstanti @lucas1
                  last edited by

                  @lucas1
                  А почему содержимое таблицы должно было измениться ???
                  В таблицу попадает то , что в PF подают на вход. Дали 5 ip , он добавил 5, дали 10 , он добавит 10 .
                  Посмотрите файл
                  /var/tmp/rules.debug
                  и увидите то содержимое таблицы, которое получает на входе PF.

                  По-моему, тут проблема не в PF. У меня лично есть подозрение , что где-то скрипт "ломается" .
                  Вы же не показываете "живой пример" проблемы ( если не хотите тут , напишите в личку).
                  Не видя настроек алиаса сложно что-либо говорить

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    lucas1 @Konstanti
                    last edited by

                    @Konstanti
                    Так меня интересует как раз содержимое таблицы на основе содержимого созданного/измененного Alias. Возможно alias действительно "сломался", когда я добавил в него как-бы вложенный alias:
                    был список IP и DNS имен. Я добавил в этот alias другой alias из трех DNS-имен.
                    Но сейчас я все вернул назад.
                    И есть проблема и по другому alias всего из 2 IP записей.
                    И это есть - создал тестовый alias IPs, нажал Empty и он до сих пор пустой.
                    Тогда вопрос в том как изменить /var/tmp/rules.debug.
                    ну не весь и не вручную.

                    K 1 Reply Last reply Reply Quote 0
                    • K
                      Konstanti @lucas1
                      last edited by

                      @lucas1
                      Никак. Это файл , который создается самим PFSense , каждый раз когда перезагружаются правила , и затем следует перезапуск PF.
                      Если некорректно создаются данные для этого файла , это значит , что или PFSense допускает ошибку при обработке алиаса , или что-то Вы неверно сделали.
                      Повторюсь , не видя алиаса и результатов работы PFSense ( куска файла rules.debug) сложно что-либо советовать

                      L 1 Reply Last reply Reply Quote 0
                      • L
                        lucas1 @Konstanti
                        last edited by

                        @Konstanti
                        Взял перезагрузил, все нормально.

                        L 1 Reply Last reply Reply Quote 0
                        • L
                          lucas1 @lucas1
                          last edited by

                          @lucas1
                          Та не.
                          На примере тестового Alias: Tesing тип Host(s).
                          server1.domain.com, server2.domain.com, X.Y.12.5

                          Добавил третье значение X.Y.12.5.

                          С PfSense все доступно: ping, nslookup.
                          Diagnostics\Tables
                          No entries exist in this table.

                          L 1 Reply Last reply Reply Quote 0
                          • L
                            lucas1 @lucas1
                            last edited by

                            @lucas1
                            Посмотрел /tmp/rules.debug

                            table <1C_Servers> persist
                            1C_Servers = "<1C_Servers>"
                            В DiagnosticsTables по этой таблице все нормально: 2 entries.
                            Но в /tmp/rules.debug пусто.

                            table <ERP_Servers> { X.X.12.44 X.X.12.46 X.X.12.32 }
                            ERP_Servers = "<ERP_Servers>"
                            В DiagnosticsTables ее вообше нет.

                            table <Servers_Internet> persist
                            Servers_Internet = "<Servers_Internet>
                            Но в /tmp/rules.debug пусто.
                            В DiagnosticsTables нет 2 entries из 9.

                            Это что сразу заметил.
                            Откуда взялось persist по некоторым таблицам?
                            получается несоответствие (по некоторым таблицам) определению таблицы (alias) содержимому в /tmp/rules.debug.

                            K 1 Reply Last reply Reply Quote 0
                            • K
                              Konstanti @lucas1
                              last edited by Konstanti

                              @lucas1
                              Чтобы увидеть точно , что у Вас происходит в системе , я бы рекомендовал все-таки пользоваться консолью ( красивая обертка - это конечно здорово , но не всегда корректно)
                              Итак ,

                              1. чтобы увидеть , про какие таблицы знает PF
                                pfctl -sT
                              2. чтобы увидеть содержимое таблиц
                                pfctl -t имя_таблицы -Ts
                              3. попробуйте настроить PFSense так ,чтобы он использовал публичный DNS сервер (это надо для того ,чтобы не использовать Resolver при построении таблиц)
                              4. необязательный пункт ( напишите мне в личку имена доменов и ip адрес сервера , чтобы на стенде можно было смоделировать ситуацию)

                              P.S. persist добавляется в том случае, если при построении файла rules.debug отсутствуют входные данные для таблицы.

                              L 1 Reply Last reply Reply Quote 0
                              • L
                                lucas1 @Konstanti
                                last edited by

                                @Konstanti

                                1. pfctl -sT - вывод этой команды полностью соответствует списку таблиц из Diagnostics\Tables.
                                  в частности table <ERP_Servers> в выводе нет.
                                  И так ее нет:
                                  pfctl -t ERP_Servers -T show
                                  pfctl: Table does not exist.

                                2. pfctl -t имя_таблицы -Ts - выборочно вывод по таблицам полностью соответствует выводу в Diagnostics\Tables.

                                3. Без DNS Resolver не будет работать PfBlockerNG DNSBL. И проблема есть и просто по IPs в Alias.

                                K 1 Reply Last reply Reply Quote 0
                                • K
                                  Konstanti @lucas1
                                  last edited by

                                  @lucas1
                                  Утилита pfctl имеет опцию проверки синтаксиса файла конфигурации PF. Попробуйте запустить её на предмет ошибок. Должна быть причина, по которой таблица не создаётся из файла

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

                                    @lucas1

                                    Скрин Alias покажите.

                                    L 1 Reply Last reply Reply Quote 0
                                    • L
                                      lucas1 @werter
                                      last edited by

                                      @werter
                                      Насчет пустых таблиц. Если alias не участвует в правиле Firewall его таблица будет пустой.

                                      На англоязычном форуме это решают уже давно.
                                      И кроме указанного вами решения Cron другого нету.

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

                                        @lucas1
                                        Решение с кроном - рабочее. Пользую его >2-х лет. Может в будущих релизах и пофиксят.

                                        L K 2 Replies Last reply Reply Quote 0
                                        • L
                                          lucas1 @werter
                                          last edited by

                                          @werter

                                          В журнале DNS Resolver:

                                          unbound 72676:1 notice: sendto failed: No buffer space available

                                          Эти записи повторяются.

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

                                            @lucas1
                                            Версия пф свежая?

                                            unbound 72676:1 notice: sendto failed: No buffer space available --> google

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