Skip to content

feat: rewrite DNS plugin with native cilium/ebpf#2042

Open
nddq wants to merge 1 commit intomicrosoft:cilium/v1.19-upgradefrom
nddq:cilium/v1.19-pr4-dns
Open

feat: rewrite DNS plugin with native cilium/ebpf#2042
nddq wants to merge 1 commit intomicrosoft:cilium/v1.19-upgradefrom
nddq:cilium/v1.19-pr4-dns

Conversation

@nddq
Copy link
Member

@nddq nddq commented Feb 11, 2026

Description

  • Replace inspektor-gadget DNS tracer with a native eBPF socket filter using cilium/ebpf
  • Add new eBPF C program (pkg/plugin/dns/_cprog/dns.c) for DNS packet capture
  • Implement gopacket-based DNS parsing with concurrent worker goroutines
  • Update DNS metrics module and test plugin for new tracer interface

PR 4 of 7 for Cilium v1.19 upgrade.

Related Issue

Checklist

  • I have read the contributing documentation.
  • I signed and signed-off the commits (git commit -S -s ...). See this documentation on signing commits.
  • I have correctly attributed the author(s) of the code.
  • I have tested the changes locally.
  • I have followed the project's style guidelines.
  • I have updated the documentation, if necessary.
  • I have added tests, if applicable.

Screenshots (if applicable) or Testing Completed

  • Verify DNS plugin unit tests pass
  • Verify DNS metrics module tests pass
  • Verify dns_bpfel_x86.o is included and loadable
  • Verify DNS capture works in e2e environment

Additional Notes

None.


Please refer to the CONTRIBUTING.md file for more information on how to contribute to this project.

@nddq nddq requested a review from a team as a code owner February 11, 2026 08:04
@nddq nddq requested review from skosuri1 and timraymond and removed request for a team February 11, 2026 08:04
@nddq nddq force-pushed the cilium/v1.19-pr4-dns branch 2 times, most recently from 90e2ea0 to 95f515f Compare February 11, 2026 16:52
@nddq nddq closed this Feb 11, 2026
@nddq nddq reopened this Feb 11, 2026
@nddq nddq force-pushed the cilium/v1.19-pr4-dns branch from 95f515f to 07b1e67 Compare February 11, 2026 20:47
- Replace inspektor-gadget DNS tracer with native eBPF socket filter
- Add eBPF C program for DNS packet capture
- Add generated Go bindings for x86 and arm64 with empty .o stubs
- Implement gopacket-based DNS parsing with concurrent workers
- Update DNS metrics module and test plugin

Signed-off-by: Quang Nguyen <nguyenquang@microsoft.com>
@nddq nddq force-pushed the cilium/v1.19-pr4-dns branch from 07b1e67 to 2753d5d Compare February 13, 2026 01:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant