LINUX.ORG.RU

Новая реализация пакетного фильтра nftables будет добавлена в ядро Linux 3.13

 , , , ,


3

3

В ветку linux-next, на базе которой будет сформировано ядро версии 3.13, добавлена новая реализация подсистемы пакетной фильтрации nftables. Разработка системы ведётся с 2009 года, её целью является замена подсистем iptables, ip6table, arptables и ebtables. Результата разработчики желают добиться путём сокращения количества (и дублей) кода уровня ядра, упрощения взаимодействия ядра и userspace-приложений, а также использования байт-кода для компилирования правил фильтрации и исполнения их в ядре.

Представленный для включения в ядро код подразумевает сосуществование старых и новой подсистем, поскольку nftables ещё требует доработки и тестирования.

Идея в целом позаимствована в реализациях Berkeley Packet Filters, применяемых в BSD-системах. При этом синтаксис пользовательских правил (утилиты nft) также напоминает синтаксис ipfw FreeBSD.

Например, для приёма icmp-сообщений echo-request, в командной строке (скрипте) необходимо набрать:

nft add rule  filter input icmp type echo-request accept

Сводный список правил формируется как иерархическая блочная структура, чем-то напоминающая pf и npf:

# nft list table filter -n  -a
table filter {
        chain output {
                 table filter hook output priority 0;
                 ip protocol tcp counter packets 82 bytes 9680 # handle 8
                 ip saddr 127.0.0.1 ip daddr 127.0.0.6 drop # handle 7
        }
}
# nft  add rule filter output position 8 ip daddr 127.0.0.8 drop 
# nft list table filter -n -a
table filter {
        chain output {
                 table filter hook output priority 0;
                 ip protocol tcp counter packets 190 bytes 21908 # handle 8
                 ip daddr 127.0.0.8 drop # handle 10
                 ip saddr 127.0.0.1 ip daddr 127.0.0.6 drop # handle 7
        }
}

>>> Подробности

★★★

Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 3)

Ответ на: комментарий от Dark_SavanT

Тю, так ты бы так и сказал, что «моя компания настолько жлобы, что не в состоянии купить внешний 3G модем за 40$»... Ну это вечная проблема совкового бизнеса, офис пи**ный, фотошоп ворованый, винда с торентов, админ в лучшем случае студент...

Ну вобщем вопрос как обычно в соответствующем оборудовании, а точнее его отсутствии.

Jetty ★★★★★
()
Ответ на: комментарий от Dark_SavanT

Открою тебе страшную тайну: ppp можно настроить так, чтобы при переподключении интерфейс оставался тот же. Опция unit. От недочитывания доки ты городишь скриптовые мегавелосипеды,

RAS
()
Ответ на: комментарий от Jetty

Ты не понял. Есть железка с онтопиком, основной задачей которой является гонять данные через 3g. А уж что там - дело клиента, который эти железки покупает. И да, местами там даже не 3g, а обыкновенный 2g, но их уже мало.

Второе уточнение - железки стоят в ебенях и админить их надо удалённо и это не x86 с винчестером и прочими радостями линупсоида-одмина, а средней паршивости ARM с 8 мегами флеша и необходимым минимумом софта. система как и почти все скрипты в RO, правила для iptables генерятся на лету исходя из текущей ситуации в том числе, на какой из симок мы сейчас работаем.

Третье уточнение - железки эти почти никто руками не админит, а всё только через веб-морду.

Четвёртое уточнение - ты можешь убедительно обосновать необходимость выбора модуля за условные 40 баксов, перед модулем за условные 10-15 баксов? На партию в условные 10К штук? Только то, что оно ethernet умеет? Компромиссы, они такие.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от RAS

интерфейс останется тот же, а айпишники с учётом того, что железка переключается между симками? Не считай себя умнее всех.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Dark_SavanT

И что с айпишниками? Маскарад уже запретили? У меня дома 2 PPP-шки как раз и статичейский фаер, без красноглазия, всё работает, причём с резервированием.

RAS
()
Ответ на: комментарий от RAS

А кто-то говорил что что-то не работает? Всё давно работает.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от special-k

Чувак, я открою тебе глаза: ты ничего не знаешь о Ruby. А твои бздения не к месту об этом языке читать в каждой новости уже порядком поднадоело. Не знаю, на чём ты там пишешь, но уверен, что и в твоём язычке можно найти какие-то недостатки. Ты же распространяешь откровенную чушь. Просто смирись, что кто-то программирует использованием Ruby и вполне этим доволен.

anonymous
()
Ответ на: комментарий от Dark_SavanT

Шо ты мне про эмбед паришь. Разговор за нормальные полноценные PC-роутеры идет, а не за обрубки. Ясен фиг что на кастрированном эмбеде все будет через Ж, на то он и эмбед. Так что ты немного совсем не туда вписался со своими решениями и их проблемами. Думай в след раз о контексте, когда начинаешь развернутые предъявы кидать на тему неполноценности софта...

Совсем уже охамели, кстати. VxWorks"а на вас нет...

Jetty ★★★★★
()
Ответ на: комментарий от Jetty

моя компания настолько жлобы, что не в состоянии купить внешний 3G модем за 40$

3G за 40$? С ethernet? Нет, сынок! Это — фантастика.

Кроме того, ты ни разу не работал с GSM/3G модемами, как я погляжу ;)

Macil ★★★★★
()
Ответ на: комментарий от Macil

Он не так далёк от правды как может показаться. нормальный модуль стоит немногим дороже.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Jetty

Ибо линакс в каждой жо^Wбочке затычка и в embedded в том числе. А уж то, что в embedded linux приходится пользовать iptables во всю мощь - так всем же по...

Совсем уже охамели, кстати. VxWorks"а на вас нет...

Уже была мысль посмотреть в сторону проприетарщины, но пока стоически держимся.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Jetty

И аще, родной, ты где предьяву на неполноценность увидел? Я предьявлял только за удобство конфигурации в достаточно частом(если не наиболее частом) частном случае эмбедщины.

Dark_SavanT ★★★★★
()
Последнее исправление: Dark_SavanT (всего исправлений: 1)
Ответ на: комментарий от FreeLiver

Пусть делают что угодно, лишь бы iptables не отвалился в результате.

А вот это — вряд ли ;) Как я понимаю, одновременно они работать не могут принципиально...

Macil ★★★★★
()
Ответ на: комментарий от anonymous

Бздуны работают с железными маршрутизаторами и прекрасно понимают, что фильтровать трафик на писюках - удел пионерии.

Бздуны работают с железными маршрутизаторами и сидят на винде. Про BSD они слышали что это круто а винда маздай, поэтому предпочитают называть себя бздунами.

no-dashi ★★★★★
()
Ответ на: комментарий от carter

че это они не смогут работать одновременно то? это просто утилиты

Нет. Сабж, как и iptables работает на уровне ядра.

Macil ★★★★★
()
Ответ на: комментарий от Stage1

Я могу сказать одно - из iptables делают неудобную лажу, абсолютно неудобную. Лучше бы tc переделдали на манер iptables.

Как бы было удобно пользоваться tc в примере шейпера:

tc 192.168.1.100 1024 (чтобы сразу в обе стороны шейпил по 1024 Kbit/s). Так нет надо мильон строк написать, использовать очереди, устанавливать пропускную полосу. Жаль забросили проект rshaper - там так и было сделано.

anonymous
()
Ответ на: комментарий от i3draven

lua очень производительна

Сравнима с C? Не верю.

и в ядро как показывает нетбсд ее встроить реально..

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

Deleted
()
Ответ на: комментарий от Deleted

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

По моему преимущества есть...хотя, кому как.

i3draven ★★
()

А кому это нужно? В netfilter за 5 лет прогресса ноль, если ребятам нечем заняться, сделали бы лучше нормальный DPI или в конце концов реализовали масштабирование без костылей.

anonymous
()
Ответ на: комментарий от no-dashi

Бздуны работают с железными маршрутизаторами и сидят на винде.

Даша, да нам похрену на чем сидеть, да хоть через kermit в засранном мухами модемном пуле в Австралии. Бздевые админы - элита, они очень опытные, сцука.

anonymous
()
Ответ на: комментарий от tailgunner

Было бы тормозное г.

Ядро NetBD пишут вполне квалифицированные программисты и даже профессора из МTI. Модули ядра на Lua, на современных десктопных процессорах НЕ ТОРМОЗЯТ в 98 % случаев. Лоровских диванных теоретиков, представленных в лице tailgunner * 5 можно в этом случае полностью игнорировать.

anonymous
()
Ответ на: комментарий от tailgunner

Было бы тормозное г.

Marc Balmer founded his company in 1990 which specialised in real-time operating systems.

У чувака больше 20 лет опыта разработки RT систем для промышленного применения, а ты со своим ценным мнением можешь кукарекать в дровянном сарае.

anonymous
()
Ответ на: комментарий от vasya_pupkin

Я вообще не понимаю конфигов, если они не в XML

XML и JSON присутствуют. ;)

Macil ★★★★★
()
Ответ на: комментарий от no-dashi

Даша, это ты своим студенткам из Челябинского политехникума для малолетних преступниц будешь рассказывать. Челябинские админы - самые тупорылыедолбоебыкоторыхявстеридзавсюсвоюжизньсмешные, сцуко.

anonymous
()
Ответ на: комментарий от anonymous

Даша, это ты своим студенткам из Челябинского политехникума для малолетних преступниц будешь рассказывать

А зачем мне им это рассказывать? Это они мне рассказывают - мол ходят такие, с чёртиками на футболках, гордо рассуждают какая они элита и как они с сисками круто обращаются, а как до дела доходит - так их, илиты этой, только и хватает что на пару минут, а некоторые как живую сиську в глаза увидят, так и штаны мокрые.

no-dashi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.