#bsd #netperf 

Снова играюсь DSCP и ipfw

https://ghost.ostreff.info/3gpp2ipv4/
Сделал почти полное переписывание всех правил ipfw на всех машинах.
Похоже что сейчас прям не осталось ни одного места, которое бы я не
понимал точно почему и для чего нужно, как именно будет обрабатываться
пакет.

Очень многое можно засунуть в lookup tables, те же DSCP значения:
    ipfw table dscps create type number valtype dscp
    ipfw table dscps add $(portnum bgp) cs6
    [...]
    ipfw table dscps add $(portnum smtp) af11
    ipfw table dscps add $(portnum vors) ef
а дальше выставлять их практически единственной строчкой:
    ipfw add setdscp tablearg { tcp or udp } from any to any \
        { lookup src-port dscps or lookup dst-port dscps }

А также вовсю применяются несколько цепочек, по которым обработка идёт
через всякие skipto. Кол-во команд ощутимо сократилось.

Приятно удивило наличие команды "//":
    ipfw add 03000 // ip out
которая и как счётчик работает и как комментарий видимый в ipfw list.

Вот только пока DSCP то у меня ни на какую приоритезацию ещё не влияют,
ибо использую FQ-CoDel.

И по происшествии стольких лет, я впервые засунул правила firewall в
репозиторий. До этого прошлые версии настроек оставались только в ZFS
снимках.

А ещё, в статье по ссылке, пишут, что в PF нельзя сделать выставление
DSCP для проходящих пакетов. Статья пятилетней давности, правда. Неужели
так действительно было? PF никогда не использовал -- пугает он меня,
совсем другой подход.

    [оставить комментарий]