Kompania Cloudflare publikoi xdpcap, një analizues trafiku të bazuar në nën-sistemin XDP

Kompania Cloudflare ka prezantuar projekt i hapur xdpcap, në kuadër të cilit zhvillohet një analizues paketash rrjetesh i ngjashëm me tcpdump, i ndërtuar mbi nëndegën XDP (eXpress Data Path). Kodi i projektit është shkruar në gjuhën Go dhe shpërndahet në bazë të licencës BSD. Projekti gjithashtu është përgatitur ofron një bibliotekë për lidhjen e trajtuesve eBPF nga aplikacionet në gjuhën Go.

Utiliteti xdpcap është në përputhje me shprehjet e filtrimit tcpdump/libpcap dhe lejon përpunimin e sasi më të mëdha të trafikut në të njëjtin ekipament. Xdpcap gjithashtu mund të përdoret për debugging në kushte ku tcpdump tradicional nuk është i aplikueshëm, për shembull, kur përdoren sisteme filtrimi, mbrojtjeje nga sulmet DoS dhe balancimi i ngarkesës, që përdorin nëndegën e bërthamës Linux XDP, e cila përpunon paketat në fazën para se të përpunohen nga steka rrjetor i bërthamës Linux (tcpdump nuk i sheh paketat e hedhura nga trajtuesi XDP).

Performanca e lartë arrihet falë përdorimit të nëndegës eBPF dhe XDP. eBPF është një interpretues bytecode i përfshirë në bërthamën Linux, që lejon krijimin e trajtuesve me performancë të lartë për paketat hyrëse/delëse duke bërë vendime për ridrejtimin ose hedhjen e tyre. Me ndihmën e JIT-kompilatorit, bytecode eBPF konvertohet në instruksione makine dhe ekzekutohet me performancën e kodit natyror. Nëndega XDP (eXpress Data Path) plotëson eBPF me mundësinë për të ekzekutuar programet BPF në nivelin e tërheqësit të rrjetit, me mbështetje për qasje të drejtpërdrejtë në buferat DMA të paketave dhe duke punuar në fazën para alokimit të buferit skbuff nga steka rrjetore.

Ashtu si tcpdump, utiliteti xdpcap nĂ« fillim konverton rregullat e filtrimit tĂ« trafikut nĂ« njĂ« prezantim klasik BPF (cBPF) duke pĂ«rdorur bibliotekĂ«n standarde libpcap, dhe mĂ« pas i konverton ato nĂ« formĂ«n e nĂ«nprogramave eBPF, duke pĂ«rdorur kompiluesin cbpfc, i cili pĂ«rdor zhvillimet LLVM/Clang. NĂ« fund, informacionet mbi trafikun ruhen nĂ« formatin standard pcap, qĂ« lejon pĂ«rdorimin e dump-it tĂ« krijuar nĂ« xdpcap pĂ«r studim tĂ« mĂ«tejmĂ« nĂ« tcpdump dhe analizues tĂ« tjerĂ« tĂ« trafikut qĂ« ekzistojnĂ«. PĂ«r shembull, pĂ«r tĂ« kapur informacionet mbi trafikun DNS, nĂ« vend tĂ« komandĂ«s «tcpdump ip and udp port 53», mund tĂ« Startosh «xdpcap /path/to/hook capture.pcap ‘ip and udp port 53’», e mĂ« pas tĂ« pĂ«rdorĂ«sh skedarin capture.pcap, pĂ«r shembull, me komandĂ«n «tcpdump -r» ose nĂ« Wireshark.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster