Cloudflare เจจเฉ‡ xdpcap เจชเฉเจฐเจ•เจพเจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจนเฉˆ, XDP เจธเจฌเจธเจฟเจธเจŸเจฎ 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ‡เฉฑเจ• เจŸเฉเจฐเฉˆเจซเจฟเจ• เจเจจเจพเจฒเจพเจˆเจœเจผเจฐ

เจ•เจฒเจพเจ‰เจกเจซเจฒเฉ‡เจ…เจฐ เจ•เฉฐเจชเจจเฉ€ ะฟั€ะตะดัั‚ะฐะฒะธะปะฐ เจ“เจชเจจ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ xdpcap, เจœเจฟเจธ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ tcpdump เจตเจฐเจ—เจพ เจ‡เฉฑเจ• เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจชเฉˆเจ•เฉ‡เจŸ เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจ• เจตเจฟเจ•เจธเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ, เจธเจฌ-เจธเจฟเจธเจŸเจฎ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆเฅค XDP (เจเจ•เจธเจชเฉเจฐเฉˆเจธ เจกเฉ‡เจŸเจพ เจชเจพเจฅ)เฅค เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจ•เฉ‹เจก เจ—เฉ‹ เจ…เจคเฉ‡ เจตเจฟเฉฑเจš เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจฆเฉเจ†เจฐเจพ เจตเฉฐเจกเจฟเจ† BSD เจฒเจพเจ‡เจธเฉฐเจธ เจฆเฉ‡ เจ…เจงเฉ€เจจ. เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจตเฉ€ เจคเจฟเจ†เจฐ เจ—เฉ‹ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจคเฉ‹เจ‚ eBPF เจŸเฉเจฐเฉˆเจซเจฟเจ• เจนเฉˆเจ‚เจกเจฒเจฐ เจจเฉ‚เฉฐ เจฌเจพเจˆเจกเจฟเฉฐเจ— เจ•เจฐเจจ เจฒเจˆ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เฅค

xdpcap เจธเจนเฉ‚เจฒเจค tcpdump/libpcap เจซเจฟเจฒเจŸเจฐเจฟเฉฐเจ— เจธเจฎเฉ€เจ•เจฐเจจเจพเจ‚ เจฆเฉ‡ เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‰เจธเฉ‡ เจนเจพเจฐเจกเจตเฉ‡เจ…เจฐ 'เจคเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจฆเฉ‡ เจ•เจพเจซเจผเฉ€ เจตเฉฑเจกเฉ‡ เจตเจพเจฒเฉ€เจ…เจฎ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค Xdpcap เจจเฉ‚เฉฐ เจ‰เจนเจจเจพเจ‚ เจตเจพเจคเจพเจตเจฐเจฃเจพเจ‚ เจตเจฟเฉฑเจš เจกเฉ€เจฌเฉฑเจ— เจ•เจฐเจจ เจฒเจˆ เจตเฉ€ เจตเจฐเจคเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจจเจฟเจฏเจฎเจค tcpdump เจฒเจพเจ—เฉ‚ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจซเจฟเจฒเจŸเจฐเจฟเฉฐเจ—, DoS เจธเฉเจฐเฉฑเจ–เจฟเจ†, เจ…เจคเฉ‡ เจฒเฉ‹เจก เจฌเฉˆเจฒเฉ‡เจ‚เจธเจฟเฉฐเจ— เจธเจฟเจธเจŸเจฎ เจœเฉ‹ เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ XDP เจธเจฌเจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ, เจœเฉ‹ เจ•เจฟ เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ เจจเฉˆเฉฑเจŸเจตเจฐเจ•เจฟเฉฐเจ— เจธเจŸเฉˆเจ• (tcpdump) เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเฉ‹เจธเฉˆเจธ เจ•เฉ€เจคเฉ‡ เจœเจพเจฃ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจชเฉˆเจ•เฉ‡เจŸเจพเจ‚ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเจฆเฉ‡ เจนเจจเฅค XDP เจนเฉˆเจ‚เจกเจฒเจฐ เจฆเฉเจ†เจฐเจพ เจธเฉเฉฑเจŸเฉ‡ เจ—เจ เจชเฉˆเจ•เฉ‡เจŸ เจจเจนเฉ€เจ‚ เจตเฉ‡เจ–เจฆเฉ‡)เฅค

eBPF เจ…เจคเฉ‡ XDP เจธเจฌ-เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจฆเฉเจ†เจฐเจพ เจ‰เฉฑเจš เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค eBPF เจ‡เฉฑเจ• เจฌเจพเจˆเจŸเจ•เฉ‹เจก เจฆเฉเจญเจพเจธเจผเฉ€เจ เจนเฉˆ เจœเฉ‹ เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ เจตเจฟเฉฑเจš เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจจเจ•เจฎเจฟเฉฐเจ—/เจ†เจŠเจŸเจ—เฉ‹เจ‡เฉฐเจ— เจชเฉˆเจ•เฉ‡เจŸเจพเจ‚ เจฆเฉ‡ เจ‰เฉฑเจš-เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจตเจพเจฒเฉ‡ เจนเฉˆเจ‚เจกเจฒเจฐ เจจเฉ‚เฉฐ เจ…เฉฑเจ—เฉ‡ เจญเฉ‡เจœเจฃ เจœเจพเจ‚ เจฐเฉฑเจฆ เจ•เจฐเจจ เจฌเจพเจฐเฉ‡ เจซเฉˆเจธเจฒเจฟเจ†เจ‚ เจฆเฉ‡ เจจเจพเจฒ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• JIT เจ•เฉฐเจชเจพเจˆเจฒเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, eBPF เจฌเจพเจˆเจŸเจ•เฉ‹เจก เจฆเจพ เจ…เจจเฉเจตเจพเจฆ เจฎเจธเจผเฉ€เจจ เจจเจฟเจฐเจฆเฉ‡เจธเจผเจพเจ‚ เจตเจฟเฉฑเจš เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจจเฉ‡เจŸเจฟเจต เจ•เฉ‹เจก เจฆเฉ€ เจ•เจพเจฐเจ—เฉเจœเจผเจพเจฐเฉ€ เจจเจพเจฒ เจšเจฒเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค XDP (เจเจ•เจธเจชเฉเจฐเฉˆเจธ เจกเฉ‡เจŸเจพ เจชเจพเจฅ) เจธเจฌ-เจธเจฟเจธเจŸเจฎ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจกเจฐเจพเจˆเจตเจฐ เจชเฉฑเจงเจฐ 'เจคเฉ‡ BPF เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจธเจฎเจฐเฉฑเจฅเจพ เจฆเฉ‡ เจจเจพเจฒ eBPF เจจเฉ‚เฉฐ เจชเฉ‚เจฐเจพ เจ•เจฐเจฆเจพ เจนเฉˆ, DMA เจชเฉˆเจ•เฉ‡เจŸ เจฌเจซเจฐ เจคเฉฑเจ• เจธเจฟเฉฑเจงเฉ€ เจชเจนเฉเฉฐเจš เจฒเจˆ เจธเจฎเจฐเจฅเจจ เจฆเฉ‡ เจจเจพเจฒ เจ…เจคเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเจŸเฉˆเจ• เจฆเฉเจ†เจฐเจพ skbuff เจฌเจซเจฐ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ‡ เจœเจพเจฃ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจชเฉœเจพเจ… 'เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

tcpdump เจตเจพเจ‚เจ—, xdpcap เจ‰เจชเจฏเฉ‹เจ—เจคเจพ เจชเจนเจฟเจฒเจพเจ‚ เจฎเจฟเจ†เจฐเฉ€ libpcap เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจ‰เฉฑเจš-เจชเฉฑเจงเจฐเฉ€ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจซเจฟเจฒเจŸเจฐเจฟเฉฐเจ— เจจเจฟเจฏเจฎเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฒเจพเจธเจฟเจ• BPF เจจเฉเจฎเจพเจ‡เฉฐเจฆเจ—เฉ€ (cBPF) เจตเจฟเฉฑเจš เจ…เจจเฉเจตเจพเจฆ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจซเจฟเจฐ เจ‡เฉฑเจ• เจ•เฉฐเจชเจพเจˆเจฒเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ eBPF เจฐเฉเจŸเฉ€เจจ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฆเฉ€ เจนเฉˆเฅค cbpfc, LLVM/Clang เจตเจฟเจ•เจพเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจเฅค เจ†เจ‰เจŸเจชเฉเฉฑเจŸ 'เจคเฉ‡, เจŸเฉเจฐเฉˆเจซเจฟเจ• เจœเจพเจฃเจ•เจพเจฐเฉ€ เจจเฉ‚เฉฐ เจธเจŸเฉˆเจ‚เจกเจฐเจก pcap เจซเจพเจฐเจฎเฉˆเจŸ เจตเจฟเฉฑเจš เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ tcpdump เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจฎเฉŒเจœเฉ‚เจฆเจพ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจตเจฟเจธเจผเจฒเฉ‡เจธเจผเจ•เจพเจ‚ เจตเจฟเฉฑเจš เจ…เจ—เจฒเฉ‡ เจ…เจงเจฟเจเจจ เจฒเจˆ xdpcap เจตเจฟเฉฑเจš เจคเจฟเจ†เจฐ เจ•เฉ€เจคเฉ‡ เจŸเฉเจฐเฉˆเจซเจฟเจ• เจกเฉฐเจช เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, DNS เจŸเฉเจฐเฉˆเจซเจฟเจ• เจœเจพเจฃเจ•เจพเจฐเฉ€ เจนเจพเจธเจฒ เจ•เจฐเจจ เจฒเจˆ, "tcpdump ip and udp port 53" เจ•เจฎเจพเจ‚เจก เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจฌเจœเจพเจ, เจคเฉเจธเฉ€เจ‚ "xdpcap /path/to/hook capture.pcap 'ip เจ…เจคเฉ‡ udp เจชเฉ‹เจฐเจŸ 53โ€ฒ" เจšเจฒเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจซเจฟเจฐ เจ‡เฉฑเจ• เจ•เฉˆเจชเจšเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค .pcap เจซเจพเจˆเจฒ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ "tcpdump -r" เจ•เจฎเจพเจ‚เจก เจจเจพเจฒ เจœเจพเจ‚ Wireshark เจตเจฟเฉฑเจšเฅค

เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹