example.o sec xdp_prog ◦ ip link set dev eth0 xdp off • libbpfの場合 ◦ bpf_prog_load()でロードして、bpf_set_link_xdp_fd()でアタッチ/デタッチ ◦ 参考 https://github.com/xdp-project/xdp-tutorial/blob/master/basic01-xdp-pass/xdp_pass_user.c • bpftoolの場合(5.4以上 https://patchwork.ozlabs.org/cover/1145981/ ◦ bpftool prog load ./example.o /sys/fs/bpf/prog ▪ CONFIG_DEBUG_INFO_BTF=yなカーネルでないとlibbpfのエラー(22)が表示されるが ロードはされる ◦ bpftool prog list でidを確認 ◦ bpftool net attach xdp id 10 dev eth0 ◦ bpftool net detach xdp dev eth0 アタッチ/デタッチ パケット処理の独自実装や高速化手法の比較と実践| JANOG45@札幌|2020/01/24