PfSense значения переменных



  • Добрый день.

    Как посмотреть текущие значения встроенных переменных, например LAN net и LAN address?



  • Может cat /tmp/rules.debug | grep -i lan ?



  • @lucas1 said in PfSense значения переменных:

    встроенных переменных, например LAN net и LAN address?

    А разве они встроенные? Значения этих переменных pf-ом на лету берутся с интерфейсов и в актуальных правилах /tmp/rules.debug уже значения фигурируют. Имхо.



  • Как вариант поискать в .php-файлах пф.



  • @vladimirlind
    Ну а какие это переменные, если не встроенные? Эти переменные никто не создает.
    Например, Alias можно просмотреть через Diagnosics\Tables.

    При создании определенного правила для LAN интерфейса c 2 IP Alias правило с LAN address не работало именно для IP Alias, но работало для основного адреса.
    Поэтому и возник вопрос.



  • @lucas1 said in PfSense значения переменных:

    Alias можно просмотреть через Diagnosics\Tables.

    Эти алиасы - просто последовательность данных - IP, URL, hostnames, обозначенных одним словом для удобства использования в системе. IP Alias - это тип виртуального интерфейса. Слово Alias там и там не должно сбивать с толку - это разные фичи.

    Какой айпи эффективно применился в правиле надо смотреть в /tmp/rules.debug



  • @vladimirlind
    Я и написал про Firewall\Aliases для примера как посмотреть значение переменной, созданной пользователем.
    Интересует, например это: LAN adress = основной + 2 IP Alias?

    Посмотрел в /tmp/rules.debug - внешне текстовый вариант правил в стиле Packet Filter.
    И еще вопрос.
    Создал 2 правила: 1. для TCP ALL 2. для TCP HTTP.
    Поочереди поместил некий компьютер (IP) в эти правила.
    Браузеры с правилом TCP ALL работают заметно быстрее.

    Непонятно почему.



  • @lucas1 said in PfSense значения переменных:

    LAN adress = основной + 2 IP Alias?

    LAN adress - это только IP на самом LAN интерфейсе. Для IP Alias надо отдельные правила создавать.

    @lucas1 said in PfSense значения переменных:

    Браузеры с правилом TCP ALL работают заметно быстрее.

    Это странно. Может, redirectы не могут сработать к https. Сделайте еще правило для https.
    надо посмотреть на правила



  • @lucas1 Здр
    эти переменные можно узнать , если написать свой PHP скрипт
    Lan address - вычисляется функцией get_interface_ip
    Lan net - вычисляется через маску подсети функцией get_interface_subnet

    Это переменные , которые создаются системой и хранятся в многомерном массиве
    Например , для получения ip адреса используется такой код

    if (is_array($config['interfaces'][$interface]) &&
    	    is_ipaddr($config['interfaces'][$interface]['ipaddr'])) {
    		return ($config['interfaces'][$interface]['ipaddr']);
    

    Для маски подсети вот такой

    if (is_array($config['interfaces'][$interface]) &&
    		!empty($config['interfaces'][$interface]['subnet'])) {
    		return ($config['interfaces'][$interface]['subnet']);
    	}
    

    Поэтому когда создаются правила в файле rules.debug , запускается скрипт , который вместо LAN NET и LAN ADDRESS сразу вычисляет и подставляет нужные значения



  • @vladimirlind
    Правила простые.

    1. TCP ALL source group1 (Alias hosts) ports * destination * ports *
    2. TCP HTTP source LAN net ports * destination * ports HTTP(80) встроенный
    3. TCP HTTP(s) source LAN net ports * destination * ports HTTP_https (alias ports)

    Все 3 правила в одной очереди (queue). Очередность правил такая же.
    group1 - список определенных IP.
    alias ports = 80+443



  • @lucas1
    Попробовал. Разницу не заметил.

    Правила выполняются сверху-вниз до 1-го совпадения. И все, что не разрешено явно - запрещено.

    Если IP и в Алиасе и в LAN net, то сработает то, что стоит выше.
    Грубо говоря , если заходите на сайт по http , а на сайте висят баннеры с ссылками на https, то пф разрешит http и полезет дальше проверять можно ли еще и httpS.
    Само собой, что правило с ALL сработает сразу же и оно "легче" для пф, а правило "Только http и httpS" породит лишние итерации проверки.

    Но чтобы на глаз это было видно - это "чудо" какое-то.


Log in to reply