Анонсирован (https://connman.net/blogs/patrik/2012/connman-10) релиз сетевого конфигуратора ConnMan 1.0 (https://connman.net/), ориентированного для использования во встраиваемых Linux-системах, отличающегося низким потреблением системных ресурсов и наличием гибких средств для расширения функциональности через плагины. Изначально проект был основан компаниями Intel и Nokia в процессе разработки платформы MeeGo, позднее система конфигурации сети на базе ConnMan была использована в платформе Tizen и некоторых специализированных дистрибутивах и проектах, таких как GeeXBoX (http://www.geexbox.org/), Aldebaran Robotics (http://www.aldebaran-robotics.com/) и Nest (http://www.nest.com/). Код проекта распространяется (http://git.kernel.org/?p=network/connman/connman.git;a=summary) под лицензией GPLv2.
Выпуск ConnMan 1.0 ознаменовал собой стабилизацию программных интерфейсов и будущую неизменность D-Bus API на протяжении ветки 1.x, в рамках которой API будет только расширяться с сохранением полной обратной совместимости. Таким образом приложения использующие API ConnMan 1.0 смогут без изменения работать и с будущими выпусками ConnMan 1.x. Сообщается, что в развитии проекта ConnMan приняло участие 80 разработчиков.
Ключевым компонентом ConnMan является фоновый процесс connmand, управляющий сетевыми соединениями. Взаимодействие и настройка различных типов сетевых подсистем производится через плагины. Например, доступны плагины для Ethernet, WiFi, Bluetooth, WiMAX, VPN (Openconnect, OpenVPN, vpnc) и PolicyKit. Для взаимодействия с устройствами используется подсистема ядра Linux netlink, для связи с другими приложениями команды передаются поверх D-Bus. Для конечных пользователей подготовлен GUI-интерфейс meego-panel-networks, оформленный в виде апплета на GTK+. Так как пользовательский интерфейс и логика управления полностью разделены, используя базовый D-Bus API могут быть разработаны и сторонние GUI-интерфейсы для управления работой ConnMan.
Код составных частей ConnMan с самого начала написан с оглядкой на минимальное потребление памяти и процессорных ресурсов, поэтому проект идеально подходит для использования на встраиваемых системах и мобильных платформах. Система полностью модульная, что позволяет значительно упростить обеспечение поддержки новых типов проводного и беспроводного сетевого оборудования. Кроме непосредственного взаимодействия с оборудованием, ConnMan отвечает также за выполнение сопутствующих операций, таких как получение адреса по DHCP, работа через прокси-серверы, настройка DNS-резолвера, накопление статистики, организация работы в роли точки доступа к сети, которые также реализованы в виде плагинов.
Технологии, поддерживаемые в ConnMan из коробки:
- Ethernet;
- WiFi с поддержкой WEP40/WEP128 и WPA/WPA2 (используется wpa_supplicant (http://hostap.epitest.fi/wpa_supplicant/));
- Bluetooth (используется BlueZ (http://www.bluez.org/));
- GSM, UMTS, CDMA и LTE (используется oFono (http://ofono.org/));
- IPv4, IPv4-LL (link-local) и DHCP;
- Туннелинг IPv6, DHCPv6 и 6to4;
- Расширенная маршрутизация и конфигурация DNS;
- Встроенный DNS-прокси и система кэширвоания DNS-ответов;
- Встроенная система обнаружения параметров входа и web-порталов аутентификации для точек беспроводного доступа (WISPr hotspot);
- Настройка времени и часового пояса (ручная или через NTP);
- Управление работой через прокси (ручное или через WPAD);
- Средства для обеспечения связи других пользователей через текущую системы (Connection Sharing/Tethering). Режим Tethering позволяет организовать для внешних систем выход в сеть через текущее устройтсво, при этом соединение выглядит как виртуальный Ethernet. Поддерживается создание канала связи через USB, Bluetooth и WiFi;
- Накопление подробной статистики расхода трафика, в том числе с раздельным учётом работы в домашней сети и в режиме руминга.- Для управления политиками безопасности и разграничения доступа опционально поддерживается PolicyKit.
URL: http://permalink.gmane.org/gmane.linux.network.connman/6519
Новость: http://www.opennet.ru/opennews/art.shtml?num=33819