nuclight: (Default)
nuclight ([personal profile] nuclight) wrote2012-04-26 03:11 am
Entry tags:

IpfwNg

В честь 26 годовщины 26 апреля уволился с текущей работы и таки наконец начал проект http://wiki.freebsd.org/IpfwNg — хотя на работе FreeBSD и была основной системой, реальную возможность пилить ядро я так и не получил (хотя тот же NAT64 нам бы понадобился не через полгода, так через год). В ближайшие недели посижу дома и надеюсь сделать хотя бы скелет, который можно будет потом уже в свободное время потихоньку пилить — работы по проекту предстоит очень много.

Желающие обсудить по делу — велкам в каменты (хотя я туда еще не все наброски оформил).

[identity profile] sem-lj.livejournal.com 2012-04-28 02:45 pm (UTC)(link)
Это я читал. Это издевательство, которое ничем не лучше шел скрипта со строчками ipfw add ...

Попытаюсь быть экстрасенсом: ты предлагаешь это загружать в некий сет и при успехе делать swap с активным?

А почему эту возможность не добавить нативно? Что бы ipfw загружал правила в память, репортил ошибки, либо, если их нет, загружал опкоды уже в ядро?

[identity profile] dadv.livejournal.com 2012-04-28 02:48 pm (UTC)(link)
> Это я читал. Это издевательство, которое ничем не лучше шел скрипта со строчками ipfw add ...

Тогда я не понял, что должно быть твоём "ipfw -f file"

> Попытаюсь быть экстрасенсом: ты предлагаешь это загружать в некий сет и при успехе делать swap с активным?

Разве это не очевидно?

> А почему эту возможность не добавить нативно? Что бы ipfw загружал правила в память, репортил ошибки, либо, если их нет, загружал опкоды уже в ядро?

Не вижу разницы с существующим сейчас функционалом: в файл пишем команды добавления в set 1, затем swap.

[identity profile] sem-lj.livejournal.com 2012-04-28 03:10 pm (UTC)(link)
Ну в принципе, можно и левое ухо чесать правой ногой. Цель будет достигнута.

[identity profile] dadv.livejournal.com 2012-04-28 03:57 pm (UTC)(link)
Ничего хитровывернутого в описанной процедуре нет, всё весьма прямолинейно. В своём враппере над ipfw я вовсю использовал именно эту процедуру ещё на 4.11.

[identity profile] sem-lj.livejournal.com 2012-04-28 04:01 pm (UTC)(link)
Ключевое выражение "в своем враппере". Хорошо бы, что бы это было у всех.

[identity profile] dadv.livejournal.com 2012-04-28 04:06 pm (UTC)(link)
Надо понять и принять, что ipfw - низкоуровневый инструмент типа ассемблера (хотя уже и не машкодов) и не требовать от него большего. Правильный путь это писать высокоуровневые обертки над ним.

[identity profile] nuclight.livejournal.com 2012-05-10 01:35 am (UTC)(link)
Нет, этот путь уже не является правильным. Весь проект затеян для того, чтобы приподнять уровень, который слишком уж низкоуровневой (машкоды в наше время уже были бы совсем пиздец). Тем более, он и в низкоуровневой-то части lacks many needed features, которые не позволяют и обертки вменяемые писать.

[identity profile] dadv.livejournal.com 2012-05-10 06:16 am (UTC)(link)
"lacks many needed features" - разве что в stateful части, потому что в stateless нет проблем писать вменяемые обертки, я неоднократно писал.

"этот путь уже не является правильным" - универсальный инструмент всегда будет проигрывать специализированному по удобству проблемно-ориентировнного применения, поэтому обёртки всегда будут полезны.

демагогия

[identity profile] nuclight.livejournal.com 2012-05-10 09:38 pm (UTC)(link)
Ты писал - на здоровье, пиши дальше. А остальным требуется нечто более удобное. Если тебе не нравится, так не используй. Но не вынуждай тратить на тебя время и внимание, с твоей защитой status quo и сопротивлением изменениям. Если есть что конструктивное по теме изменений, говори, если нет, молчи.

[identity profile] dadv.livejournal.com 2012-05-11 01:37 am (UTC)(link)
> сопротивлением изменениям

Я не сопротивляюсь изменениям. Я сопротивляюсь ломке того, что работает.