nftables پیکٹ فلٹر 0.9.9 ریلیز

پیکٹ فلٹر nftables 0.9.9 کا اجراء شائع کیا گیا ہے، IPv4، IPv6، ARP اور نیٹ ورک برجز کے لیے پیکٹ فلٹرنگ انٹرفیس کو متحد کرتے ہوئے (جس کا مقصد iptables، ip6table، arptables اور ebtables کو تبدیل کرنا ہے)۔ اسی وقت، ساتھی لائبریری libnftnl 1.2.0 کا اجراء شائع کیا گیا، جو nf_tables سب سسٹم کے ساتھ تعامل کے لیے ایک نچلی سطح کا API فراہم کرتا ہے۔ کام کرنے کے لیے nftables 0.9.9 ریلیز کے لیے درکار تبدیلیاں لینکس کرنل 5.13-rc1 میں شامل ہیں۔

nftables پیکج میں پیکٹ فلٹر کے اجزاء شامل ہیں جو صارف کی جگہ پر چلتے ہیں، جبکہ کرنل لیول کا کام nf_tables سب سسٹم کے ذریعے فراہم کیا جاتا ہے، جو کہ ریلیز 3.13 کے بعد سے لینکس کرنل کا حصہ ہے۔ کرنل لیول صرف ایک عام پروٹوکول سے آزاد انٹرفیس فراہم کرتا ہے جو پیکٹوں سے ڈیٹا نکالنے، ڈیٹا آپریشنز کرنے، اور فلو کنٹرول کے لیے بنیادی کام فراہم کرتا ہے۔

فلٹرنگ کے قواعد اور پروٹوکول سے متعلق مخصوص ہینڈلرز کو صارف کی جگہ میں بائٹ کوڈ میں مرتب کیا جاتا ہے، جس کے بعد اس بائی کوڈ کو نیٹ لنک انٹرفیس کا استعمال کرتے ہوئے کرنل میں لوڈ کیا جاتا ہے اور BPF (برکلے پیکٹ فلٹرز) کی یاد دلانے والی خصوصی ورچوئل مشین میں کرنل میں عمل میں لایا جاتا ہے۔ یہ نقطہ نظر آپ کو کرنل کی سطح پر چلنے والے فلٹرنگ کوڈ کے سائز کو نمایاں طور پر کم کرنے اور پروٹوکول کے ساتھ کام کرنے کے لیے اصولوں اور منطق کو پارس کرنے کے تمام افعال کو صارف کی جگہ میں منتقل کرنے کی اجازت دیتا ہے۔

اہم اختراعات:

  • فلو ٹیبل پروسیسنگ کو نیٹ ورک اڈاپٹر کی طرف منتقل کرنے کی اہلیت کو لاگو کیا گیا ہے، 'آف لوڈ' پرچم کا استعمال کرتے ہوئے فعال کیا گیا ہے۔ فلو ٹیبل پیکٹ ری ڈائریکشن کے راستے کو بہتر بنانے کا ایک طریقہ کار ہے، جس میں تمام رول پروسیسنگ چینز کا مکمل گزر صرف پہلے پیکٹ پر لاگو ہوتا ہے، اور فلو میں موجود دیگر تمام پیکٹوں کو براہ راست فارورڈ کیا جاتا ہے۔ ٹیبل آئی پی گلوبل { فلو ٹیبل ایف { ہک انگریس ترجیحی فلٹر + 1 ڈیوائسز = { lan3، lan0، وان } فلیگ آف لوڈ } چین فارورڈ { ٹائپ فلٹر ہک فارورڈ ترجیحی فلٹر؛ پالیسی قبول کریں؛ ip پروٹوکول { tcp, udp } فلو ایڈ @f } چین پوسٹ { ٹائپ نیٹ ہک پوسٹ روٹنگ ترجیحی فلٹر؛ پالیسی قبول کریں؛ oifname "وان" بہانا } }
  • کسی عمل کے ذریعے ٹیبل کے خصوصی استعمال کو یقینی بنانے کے لیے ٹیبل پر مالک کے جھنڈے کو منسلک کرنے کے لیے معاونت شامل کی گئی۔ جب کوئی عمل ختم ہوجاتا ہے، تو اس سے وابستہ جدول خود بخود حذف ہوجاتا ہے۔ عمل کے بارے میں معلومات کو رولز ڈمپ میں تبصرے کی شکل میں ظاہر کیا جاتا ہے: ٹیبل ip x { # progname nft flags owner chain y { type filter hook input priority filter; پالیسی قبول کریں؛ کاؤنٹر پیکٹ 1 بائٹس 309 } }
  • IEEE 802.1ad تصریح (VLAN stacking یا QinQ) کے لیے معاونت شامل کی گئی ہے، جو ایک ایتھرنیٹ فریم میں متعدد VLAN ٹیگز کو تبدیل کرنے کے لیے ایک ذریعہ کی وضاحت کرتا ہے۔ مثال کے طور پر، بیرونی ایتھرنیٹ فریم 8021ad اور vlan id=342 کی قسم چیک کرنے کے لیے، آپ کنسٹرکشن استعمال کر سکتے ہیں... ایتھر ٹائپ 802.1ad vlan id 342 ایتھرنیٹ فریم 8021ad/vlan id=1، nested 802.1 کی بیرونی قسم کو چیک کرنے کے لیے q/vlan id=2 اور مزید آئی پی پیکٹ انکیپسولیشن: ... ایتھر ٹائپ 8021ad vlan id 1 vlan type 8021q vlan id 2 vlan type ip counter
  • متحد درجہ بندی cgroups v2 کا استعمال کرتے ہوئے وسائل کے انتظام کے لیے معاونت شامل کی گئی۔ cgroups v2 اور v1 کے درمیان اہم فرق CPU وسائل مختص کرنے، میموری کی کھپت کو ریگولیٹ کرنے اور I/O کے لیے الگ الگ درجہ بندی کے بجائے تمام قسم کے وسائل کے لیے مشترکہ cgroups کے درجہ بندی کا استعمال ہے۔ مثال کے طور پر، یہ جانچنے کے لیے کہ آیا پہلی سطح پر کسی ساکٹ کا آباؤ اجداد cgroupv2 "system.slice" کے ماسک سے میل کھاتا ہے، آپ کنسٹرکشن استعمال کر سکتے ہیں: ... ساکٹ cgroupv2 لیول 1 "system.slice"
  • ایس سی ٹی پی پیکٹ کے اجزاء کو چیک کرنے کی صلاحیت شامل کی گئی ہے (اس کے لیے درکار فعالیت لینکس کرنل 5.14 میں ظاہر ہوگی)۔ مثال کے طور پر، یہ چیک کرنے کے لیے کہ آیا پیکٹ میں 'ڈیٹا' اور فیلڈ 'ٹائپ' کے ساتھ ایک حصہ ہے: ... sctp chunk data موجود ہے ... sctp chunk data type 0
  • رول لوڈنگ آپریشن پر عمل درآمد کو "-f" پرچم کا استعمال کرتے ہوئے تقریبا دو بار تیز کیا گیا ہے۔ قواعد کی فہرست کی پیداوار میں بھی تیزی لائی گئی ہے۔
  • یہ چیک کرنے کے لیے ایک کمپیکٹ فارم فراہم کیا گیا ہے کہ آیا فلیگ بٹس سیٹ ہیں یا نہیں۔ مثال کے طور پر، یہ چیک کرنے کے لیے کہ snat اور dnat اسٹیٹس بٹس سیٹ نہیں ہیں، آپ وضاحت کر سکتے ہیں: ... ct status ! snat,dnat یہ چیک کرنے کے لیے کہ Syn بٹ بٹ ماسک میں سیٹ ہے syn,ack: ... tcp فلیگز syn/syn,ack یہ چیک کرنے کے لیے کہ fin اور rst بٹس bitmask syn,ack,fin,rst میں سیٹ نہیں ہیں: ... tcp پرچم! = fin,rst/syn,ack,fin,rst
  • سیٹ/نقشہ کی قسم کی تعریف میں "فیصلہ" کلیدی لفظ کی اجازت دیں: نقشہ xm { typeof iifname شامل کریں۔ آئی پی پروٹوکول th dport : فیصلہ؛}

ماخذ: opennet.ru

نیا تبصرہ شامل کریں