Перейти к содержимому
Калькуляторы

Linux Embedded Appliance Framework aka LEAF Линуксовый "модульный" софтроутер

Не смог запустить 4.2-beta1 с флешки. Syslinux из дистрибутива(3.11) при загрузке говорит "невозможно загрузить модуль linux", при копировании ядра из syslinux/ в корень в виде linux2 и указывании его - начинает грузиться, но падает в панику при инициализации fs, хотя все по мануалу, fat32.

Syslinux последней версии(4.0.5) вообще умирает с какими-то корявыми надписями, скорее всего "не могу найти OS".

Я что-то делаю не так?

 

Ну и вопрос в догонку. Как на маршрутизацию влияет использование 32битного дистрибутива? x64 быстрее или не обязательно?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Syslinux из дистрибутива(3.11) при загрузке говорит "невозможно загрузить модуль linux"

Старый сильно, есть такое, не поддерживает ядро в отдельном каталоге, в корне его хочет видеть. С 4.0-4.03 точно все в порядке. Более новый - не проверял, хотя тоже проблем быть не должно.

 

при копировании ядра из syslinux/ в корень в виде linux2 и указывании его - начинает грузиться, но падает в панику при инициализации fs, хотя все по мануалу, fat32.

Что пишет, подробнее?

В панику падать будет только если не подгрузится initrd, иначе - ругнется, да и вывалится в консоль с минимальным окружением (все, что есть в initrd).

 

Как на маршрутизацию влияет использование 32битного дистрибутива?

Никак. 64бит имеет смысл в 2 случаях:

1) Нужно много памяти одному процессу

2) Нужны сложные целочисленные вычисления, особенно - работа с 64бит данными.

Ни первое, ин второе для роутинга не нужно. Прирост от перехода на 64бит может и будет (незначительный), а может и нет, может и наоборот будет проседание производительности (из-за большего объема кода/распухших из-за 64бит integer + выравнивания структур, и большего кол-ва cache miss).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

NiTr0

На IPv6 можно и пригодятся процессоры x86_64 в плане производительности

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну IPv6 - возможно еще. Хотя тоже гигантского роста производительности навряд можно ожидать (разве что при наличии нескольких тысяч правил ip6tables или чего-то подобного).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Заинтересовал данный дистрибутив. Не подскажете как в нем реализована поддержка авторизации через радиус, какие атрибуты он понимает?

Проводится ли специальная оптимизация ядра для сетевой подсистемы? Проводил ли кто-то тесты производительности в сравнении с обычными дистрибудивами(дебиан, редхат и т.д)?

Планируете сделать поддержку VRF?

Изменено пользователем lllsergeyv

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

lllsergeyv

Вы такие вопросы спрашиваете, как будто это развитый форк ядра и куча собственнописанной проприетарщины. Список пакетов в первом посте, функционал соответствующий. Это просто сборка уже имеющегося свободного софта под задачу роутинга и терминирования.

 

Ну а по поводу vrf в linux, то полноценное разделение таблиц маршрутизации с точки зрения форвардинга реализовано в 2.6.33(т.е. с помощью ip rule и iptables можно реализовать vrf-lite). Quagga, к сожаленью, работает только с одной таблицей, хотя умеет быть vpnv4 RR. Bird вроде бы можно приучить к нескольким таблицам, но он не умеет vpnv4, т.е. надо поднимать сессию в каждом vrf.

В 3их ядрах(не помню с какого именно) закоммичены контейнеры, что означает, что можно запускать приложение, изолируя его в конкретном vrf.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не подскажете как в нем реализована поддержка авторизации через радиус, какие атрибуты он понимает?

Стандартно для pppd (+ небольшое кол-во патчей типа гигавордов), исходники посмотреть можете. В next ветке запилил accel-ppp, бету ожидаю где-то ближе к лету.

 

Проводится ли специальная оптимизация ядра для сетевой подсистемы?

Ядро - ванильное, стараемся избегать лишних патчей. Особого тюнинга соответственно тоже можно не ждать. Хотя производительности вполне хватает.

 

Проводил ли кто-то тесты производительности в сравнении с обычными дистрибудивами(дебиан, редхат и т.д)?

По части маршрутизации/ната - не думаю, что будут различия. А если и будут - то ИМХО в пределах статистической погрешности (единицы %). Юзерленд же ИМХО будет работать шустрее (меньше объем кода из-за uClibc, соответственно меньше cache miss, меньше требуется оперативной памяти и т.п.). Хотя в юзерленде из критичного к ресурсам пожалуй только сквид и clamav.

 

Основная прелесть - в скорости загрузки (система взлетает от силы секунд за 40), в малой ресурсоемкости, отсутствии необходимости в жестком диске для работы (накопитель требуется только для старта, и в норме работает в рид-онли; запись - только при сохранении конфига) и соответственно более высокой надежности/отказоустойчивости.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Зарелизилась 4.2 beta2. Немного апдейтов, немного багфиксов, ну и присутствующий xtables-addons ессно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот теперь тебя люблю я, вот теперь тебя хвалю я!

© мойдодыр

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Собираюсь попробовать LEAF 4.2 в качестве NAS (нато-шейпера)

 

Интересует производительность..

Прожует ли 1Gbit Fullduplex, 300+ kpps (суммарно), 2k абонентов в час пик (4000 правил в tc и тд) на 82576 4-х портовке и Core2Quad 9550 2.83Ghz ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В качестве ната как-то не пользовал его, по нагрузке что-либо сказать не могу. Как шейпер - думаю, легко прожует, если делать хеш-таблицами классификацию.

В любом случае, производительность не будет отличаться от таковой на другом дистре с 2.6.35 ядром.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

LEAF (наверно благодаря стараниям NITr0 обрел вторую жизнь с ядром 2.6.ххх) прекрасно справляется с NAT с учётом всех тюннингов из ветки "Linux Softrouter".

У нас уже сложился некий корпоративный стандарт - в районах стоят RB1100xAH2. На бордере - LEAF с натом , шейпингом и генерацией netflow.

Но т.к. многоуважаемый NITr0 является походу единственным русскоязычным разработчиком сего чуда, а заодно регулярно посещает этот форум -я позволю себе дерзость адресовать feature request ему прямо здесь.

Нельзя ли утилитку lspci вывести из соcтава busybox чтобы она понимала все ключи, которые могут понадобиться при копании в потрохах железа ? (Например ключи -t -v )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ок, впихну как-то полновесный lspci в пакеты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Итак, в next ветке допилили таки сообща все мелочи, необходимые для полноценной и безболезненной кросс-компиляции под различные архитектуры. Сборка для ARM под QEMU в качестве первого эксперимента уже успешно живет. В планах комьюнити - собрать в первую очередь для Raspberry PI (как доступную и дешевую платформу для экспериментов), как только железка попадет кому-то в руки, и далее - подыскать более подходящую для сетевых задач железку с приемлемым ценником...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

добрый день,у меня проблема с установкой леаф 4.2.1 isolinux,вроде всё делаю правильно,конкретно:скачал исо файл,записал на болванку,загрузился с болванки,в основном меню выбрал:f,m и s,примонтировал CD диск,инсталлировал hdsupp и mtools,в fdisk - o,n - р,умолчание,умолчание,затем -а-сектор-1,затем t -cектор1 и c,в конце w,

потом mkfs.vfat /dev/sda1,syslinux /dev/sda1,скопировал все файлы с болванки на жесткий диск,создал директорию syslinux,скопировал туда isolinux.dpy,isolinux.cfg и linux,переименовал оба isolinux в syslinux,отредактировал isolinux.cfg и leaf.cdf для sda1,перезагружаю и не бэ и не мэ,молчит комп....не знаю что делать....как проверить правильность сборки....может кто помочь...или подскажет русский форум по leaf.....не пинайте пож-ста.....но с линуксом я столкнулся недавно....до этого занимался другой человек...но он уехал в другой город..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

хм,

я проще делаю:

скачиваю ...686...vga...tgz

вставляю usb-флешку.

На рабочем компе ( ubuntu ):

 

sudo dd if=/dev/zero of=/dev/sdb bs=10M
sudo fdisk /dev/sdb ( n 1 (default) , t ( win fat32 lba ) a 1 ,w )
sudo mkdosfs -F 32 -n leaf -v /dev/sdb1
sudo dd conv=notrunc bs=440 count=1 if=/usr/lib/syslinux/mbr.bin of=/dev/sdb
sudo syslinux  /dev/sdb1
sudo mount -t vfat -o rw,nosuid,nodev,quiet,shortname=mixed,uid=1000,gid=1000,umask=077,iocharset=utf8 /dev/sdb1 /home/ok/usbflash
tar -zxpvf ..686...vga.tgz -C /home/ok/usbflash

 

config syslinux:

 

TIMEOUT 0
APPEND reboot=bios ipv6.disable=1
VERBOSE=1
DEFAULT /syslinux/linux initrd=/initrd.lrp rw root=/dev/ram0 LEAFCFG=/dev/sda1:vfat

 

всё...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

но у нас установлены только Windows,но проблему я решил так:на винте не было загрузочного сектора,т.е. командой fdisk можно создать выбором -а- загрузочный диск,но этого оказалось недостаточно,необходимо создать загрузочный сектор для чтения и записи командой- dd -, а вот в документации по 4-му леафу про это нигде нет,есть отсылка к третьей версии.

Можно вопрос:почему Вы указываете в конфиге syslinux : ipv6.disable=1 ,что это даёт? И потом после загрузки с винта в меню леафа в 3-ем пункте "pakages configuation " не появился пункт РРРОЕ и PPP,чтобы вбить рар и chap,как это сделать,чтобы они там появились????? Да и вообще как сконфигурировать соеденение РРРОЕ полностью.......

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"ipv4.disable" - потому что мне не надо загруженного ядра с поддержкой ipv6 (пока).

Если в меню lrcfg отсутствует инфа о загруженных пакетах, то придётся либо править конфиги в ручную , либо ковырять саму lrp-шку пакета , на предмет того что она кладёт в /var/lib/lrpkg/*.conf в момент своей загрузки.

Насчёт команды "dd" - когда писалась дока для 4-ой версии leaf-a уже все юсб-флешки начали уметь грузиться через биос( у всех есть стандартные mbr-ы ). У меня скопилась куча флешек 5-6 летней давности, для которых надо в первый сектор заливать стандартный hdd-шный mbr. Некоторые даже приходится форматить в fat-16, а для некоторых приходится класть загрузчик syslinux с ключом "-s"....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

но у нас установлены только Windows

Юзать виндовый syslinux тогда, благое дело есть.

 

И потом после загрузки с винта в меню леафа в 3-ем пункте "pakages configuation " не появился пункт РРРОЕ и PPP,чтобы вбить рар и chap,как это сделать,чтобы они там появились?????

Пакеты для начала подгрузить нужные.

 

Да и вообще как сконфигурировать соеденение РРРОЕ полностью.......

Как-то так. Сам не конфигурил клиента т.к. не нужно было, но думаю проблем не возникнет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

советы прекрасные,не надо юзать виндовым ,я же описал до этого

 

-инсталлировал hdsupp и mtools- после этого просто надо дать команду : syslinux /dev/sda1 и ldlinux появляется на корне диска.......

 

всё что мы здесь обсуждаем надеюсь пригодится кому-то,ведь доков на русском языке кроме перевода Пировских я не нашёл,плохо когда не знаешь,да ещё забыл английский,но пока:у меня комп P1 с частотой 333 ггц,на материнке нет разъёмов для USB,вследствии этого пришлось установить на HDD объёмом 2 ГБ;устанавливал на более мощную машину Р4 2,33 ГГЦ с винтом SATA 160 ГБ,но при инсталяции syslinux- ругался, что не поддерживает диски с большим объёмом,пришлось уменьшать fdick -om до 2ГБ,при разметке даже при 4ГБ снова ругался.....По поводу рррое: по доку понял что надо отредактировать leaf.cfg вместо dhcpcd надо прописать ррр и рррое и тогда при перезагрузке эти пакеты устанавливаются автоматом.....Но дальше больше:надо прописать рар и chap логин и пароль,сконфигирировать интерфейсы и shorewall.....пока остановился на этом.....будем осиливать буржуинский язык....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

-инсталлировал hdsupp и mtools- после этого просто надо дать команду : syslinux /dev/sda1 и ldlinux появляется на корне диска.......

Можно и так, но лишние телодвижения (загрузиться с сд, копировать все с сд, править конфиги и т.д.), проще из-под установленной уже оси распаковать и сделать системным раздел :)

 

ведь доков на русском языке кроме перевода Пировских я не нашёл

Конфигурирование LEAF по большому счету сводится к чтению мануалов по нужным пакетам (утилитам), на любом языке. Ну а доступ к конфигам для удобства вынесен в меню. Разве что особенности могут быть при конфигурировании сетевой подсистемы и прочими дистрибутивно-специфичными вещами.

 

при инсталяции syslinux- ругался, что не поддерживает диски с большим объёмом,пришлось уменьшать fdick -om до 2ГБ

Не сталкивался с ограничением, возможно - потому, что не юзал большой системный диск... Ведь размер всего дистра - около 50 МБ.

К слову, я бы посоветовал вам поставить какую-то CF карту с CF-IDE переходником. Надежнее будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"-..Конфигурирование LEAF по большому счету сводится к чтению мануалов по нужным пакетам (утилитам), на любом языке."

 

--не понял на любом языке:а где взять мануал на русском языке,если есть мануал на русском- то думаю не будет проблем.....

 

"...посоветовал вам поставить какую-то CF карту с CF-IDE переходником. "

 

Если честно - то до этого я не дошёл,только учу LINUX.....

как быть с интерфейсами и shorewall-ом-----бьюсь сию над этим.....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

--не понял на любом языке:а где взять мануал на русском языке,если есть мануал на русском- то думаю не будет проблем.....

Гугл в помощь, ищете мануал на интересующий вас компонент. К примеру, на "shorewall настройка" - 3-я ссылка вот что выдала. Довольно неплохо для начала разжевано. Так и по остальным компонентам...

Дублировать то, что написано на прочих ресурсах - особо смысла не вижу.

По части настройки сетевой подсистемы - инит дебианоподобный, соответственно, смотрите в сторону мануалов к дебиану/убунте, с адаптацией под LEAF. Если сильно с английским туго...

 

Если честно - то до этого я не дошёл,только учу LINUX.....

CompactFlash к линуксу имеет такое же примерно отношение, как и клавиатура...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

очень удевлён:про CompactFlash я вообще не упоминал-действительно CompactFlashк тут не при чём,узучать linux надо с другого....

CompactFlashк линуксу имеет такое же примерно отношение, как и клавиатура...

Гугл в помощь, ищете мануал на интересующий вас компонент.

существует документация на leaf-про доки я имел ввиду- именно перевод этих доков,а про эти мануалы и как их применить под леаф-большой вопрос...для таких как я.....

 

во хохмачи: просят на русском языке-объсни как это делать---нет начинают нести такую чепуху несусветную.Если не можете конкретно помочь-что лезть со своими советами-может найдутся более сведущие в этом деле....А вы пока стойте и наблюдайте-может и разберёмся....

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

во хохмачи: просят на русском языке-объсни как это делать---нет начинают нести такую чепуху несусветную.Если не можете конкретно помочь-что лезть со своими советами-может найдутся более сведущие в этом деле....А вы пока стойте и наблюдайте-может и разберёмся....

 

Ну вы же понимаете, что ради вас одного(или нескольких таких как вы) никто ничего переводить не будет. объснять тривиальные вещи тоже никому не интересно, только если за деньги

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас