IpfwNg
В честь 26 годовщины 26 апреля уволился с текущей работы и таки наконец начал проект http://wiki.freebsd.org/IpfwNg — хотя на работе FreeBSD и была основной системой, реальную возможность пилить ядро я так и не получил (хотя тот же NAT64 нам бы понадобился не через полгода, так через год). В ближайшие недели посижу дома и надеюсь сделать хотя бы скелет, который можно будет потом уже в свободное время потихоньку пилить — работы по проекту предстоит очень много.
Желающие обсудить по делу — велкам в каменты (хотя я туда еще не все наброски оформил).
Желающие обсудить по делу — велкам в каменты (хотя я туда еще не все наброски оформил).
no subject
ну и загрузка всех правил скопом must have.
no subject
Да, разумеется. Хотя технически это скорее будет загрузка кусками в некий буфер в ядре и потом его атомарная активация.
> для NAT64 libalias бы переписать.
А вот это нафиг не надо и вредно, libalias пора закопать (вот в треде ниже мнение Глеба приводят, конкретно к этой теме я согласен). Чтобы там такое сделать, нужно столько переделать, что проще переписать. К тому же дает знать о себе наследие ориентированности на юзерленд и архитектурная ошибка в виде мешания partially specified links (для редиректов и проч.) в общую кучу с обычными соединениями, из-за чего нельзя применить более эффективную хэш-функцию, и (в том числе поэтому) вообще параллелить его - та еще проблема...
no subject
no subject
Есть давным давно, ещё в 4.x было. ipfw sets.
no subject
no subject
no subject
Вообще-то sets - это альтернативные наборы правил, которые можно *включать* и *отключать* по желанию.
Но загрузка в них происходит все так-же - по одному правилу.
Такая загрузка - это ужасно не удобно.
no subject
Просто надо внимательно читать man ipfw.
no subject
Попытаюсь быть экстрасенсом: ты предлагаешь это загружать в некий сет и при успехе делать swap с активным?
А почему эту возможность не добавить нативно? Что бы ipfw загружал правила в память, репортил ошибки, либо, если их нет, загружал опкоды уже в ядро?
no subject
Тогда я не понял, что должно быть твоём "ipfw -f file"
> Попытаюсь быть экстрасенсом: ты предлагаешь это загружать в некий сет и при успехе делать swap с активным?
Разве это не очевидно?
> А почему эту возможность не добавить нативно? Что бы ipfw загружал правила в память, репортил ошибки, либо, если их нет, загружал опкоды уже в ядро?
Не вижу разницы с существующим сейчас функционалом: в файл пишем команды добавления в set 1, затем swap.
no subject
no subject
no subject
no subject
no subject
no subject
"этот путь уже не является правильным" - универсальный инструмент всегда будет проигрывать специализированному по удобству проблемно-ориентировнного применения, поэтому обёртки всегда будут полезны.
демагогия
(no subject)
no subject
а правила скопом загружаются без проблем - ipfw /path/to/rules
причём, в отличие от отдельных вызовов ipfw add, грузятся практически мгновенно.
no subject
no subject
no subject
Это не должно быть "пропатчить", это должно быть "из коробки". Тем более там внутри каша, к тому же еще и недокументировано ничего. Тоже подлежит исправлению.
no subject
А из коробки есть set N в каждом правиле.
> Тем более там внутри каша, к тому же еще и недокументировано ничего.
ipfw sets документированы ещё с 4.x. Или ты про отсутствие комментариев в коде? :-)
и снова бесполезный разговор
no subject
no subject
no subject
add 1 allow ip from any to any
[…]
delete 1