From: "Peter V. Saveliev" <peet@altlinux.ru> To: ALT Linux Sisyphus discussions <sisyphus@lists.altlinux.org> Subject: [sisyphus] I: iproute2fs Date: Fri, 26 Aug 2011 11:51:16 +0400 Message-ID: <4E575074.20606@altlinux.ru> (raw) ... Всем привет. В Сизиф выложил стабильную (по крайней мере, у меня пока не падает) версию iproute2fs. Это файловый сервер, который в виде файлов экспортирует текущие настройки сети. Экспортирует он их через протокол 9P, и может быть использован через: * mount -t 9p ... или 9mount (последнего вроде в Сизифе нет) * 9pfuse * ixpc Первый вариант требует поддержки 9P2000 в ядре, но в ядрах ALT она вроде бы есть -- по крайней мере, в тех, что я видел. Поэтому я сделал заодно и сервис. Т.е.: $ sudo apt-get install iproute2fs $ sudo service iproute2fs start $ ls -l /srv/net/interfaces По умолчанию сервис, само собой, выключен. См. также iproute2fs(1). ... Ограничения и косяки. * Это первые версии пока что идут, которые умеют не очень много -- мне показалось важнее сначала (попытаться) сделать вменяемую архитектуру и обеспечить стабильность, чем обрастать фичами. На данный момент iproute2fs экспортирует лишь интерфейсы, их адреса и ещё чутка. * IPv6 адреса пока не поддерживаются в той мере, чтобы это можно было назвать поддержкой. Однако IPv4 -- вполне, причём на r/w. То есть, можно сделать так: echo 192.168.1.2/24 >>/srv/net/interfaces/eth0/addresses и ещё один адрес появится на соотв. интерфейсе. * Остальное пока на r/o * Это пока что не замена etcnet/NM и т.п., и не скоро ей будет, если будет вообще. ... Полезные фишки. Запуская iproute2fs на UNIX-сокете, можно довольно тонко регулировать доступ пользователей к настройкам сети, просто назначая соотв. ACL на сокет. Дальше каждый, у кого есть доступ, может подключить ФС в свой namespace либо просто использовать ixpc. Запуская iproute2fs из-под непривилегированного пользователя, можно создать r/o доступ к настройкам сети. См. также capabilities(7). ... Планы. В ближайших планах: 1. поддержка IPv6 (уже в гите проекта реализуется) 2. таблицы, правила маршрутизации 3. создание и переименование интерфейсов В дальнейших планах: 1. возможность сохранения настроек с тем, чтобы их можно было подхватить на старте, в идеале -- через простой tar 2. экспорт настроек в формате, совместимом с etcnet (если будут желающие) 3. журналирование сетевой подсистемы с возможностью отката настроек на указанную дату/время. ... Обоснование проекта. * Представление в виде файловой системы было выбрано как самое простое для управления традиционными средствами UNIX, такими как sed, grep, cat и т.п. Также это удобно с точки зрения разграничения прав доступа. * Основная фишка проекта, это то, что iproute2fs не запрашивает настройки по факту обращения, а оперирует событиями netlink, которые обратимы: то есть, при добавлении адреса на интерфейс (неважно каким способом), netlink посылает слушателям событие, которое практически идентично запросу на добавление адреса. Это позволяет хранить журнал событий и проигрывать его позднее. То есть, все изменения сетевой подсистемы могут журналироваться в iproute2fs вне зависимости от того, кем они совершены -- через NM, ip, ifconfig, модулями ядра или Святым Духом. * В отличие от NM, проект ориентирован на традиционное окружение без графики и при минимуме сторонних сервисов типа dbus/hal/и т.п. Это и минус, и плюс -- зависит от целей. * В отличие от etcnet, является не набором текстовых настроек, которые парсятся скриптами, а именно VFS с отображением rtnetlink(7) в файлы и обратно. Это также и минус, и плюс. * Предыдущие два пункта позволяют использовать iproute2fs не вместо, а вместе с этими проектами, см. в todo etcnet-совместимый формат. -- Peter V. Saveliev
next reply other threads:[~2011-08-26 7:51 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-08-26 7:51 Peter V. Saveliev [this message] 2011-08-26 8:42 ` [sisyphus] apt-get update ERROR libsundance10 (NewVersion1) Patlasov YuriI 2011-08-26 8:45 ` REAL 2011-08-26 8:46 ` Dmitry Chistikov 2011-08-26 8:46 ` Peter V. Saveliev 2011-08-26 8:55 ` Patlasov YuriI
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=4E575074.20606@altlinux.ru \ --to=peet@altlinux.ru \ --cc=sisyphus@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Sisyphus discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \ sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru public-inbox-index sisyphus Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sisyphus AGPL code for this site: git clone https://public-inbox.org/public-inbox.git