Commit Graph

  • 496bdd0473 Add options and functionality for running with other XDP programs via xdp-loader. (#86) master Christian Deacon 2025-12-28 15:56:35 -05:00
  • 278ff71c59 Oops. Christian Deacon 2025-10-14 22:43:04 -04:00
  • fd20b61cf2 Fix wrong setting name for interface(s). Christian Deacon 2025-10-14 22:28:12 -04:00
  • c0543b2036 Unpin block IPv6 map only if IPV6 is enabled (#82) AbdulOmar 2025-10-07 16:32:17 -06:00
  • a924233b46 Enable Pinning for map_stats (#78) An Bool 2025-06-22 06:04:40 +08:00
  • 2b570c2246 Update xdp-tools submodule. Christian Deacon 2025-06-17 21:24:13 -04:00
  • 82231f22ef Update README. Christian Deacon 2025-05-05 13:30:01 -04:00
  • 67a77ce659 Update README. Christian Deacon 2025-05-02 21:05:29 -04:00
  • 7dc351f352 Update README. Christian Deacon 2025-03-28 22:25:36 -04:00
  • ec0b07eb37 Optimize XDP program when filter logging is disabled. Christian Deacon 2025-03-28 22:21:31 -04:00
  • 023a853000 Improve workflows. Christian Deacon 2025-03-28 21:26:01 -04:00
  • e71f05a422 Install LibXDP in run workflow. Christian Deacon 2025-03-28 13:48:39 -04:00
  • 947e02c9ce Fix run workflow. Christian Deacon 2025-03-28 13:43:07 -04:00
  • 05d013ff6a Fix issue with dst_port when filter logging is disabled. Christian Deacon 2025-03-28 13:42:19 -04:00
  • 78de4c0292 Try reverting to old format we used with workflow for now. Christian Deacon 2025-03-28 13:38:37 -04:00
  • 2e54efc30d Try specifying build-output in run.yml workflow. Christian Deacon 2025-03-28 13:33:10 -04:00
  • 20cb84cd06 Workflow Improvements (#69) Christian Deacon 2025-03-28 13:26:18 -04:00
  • 3062ddd166 Cleanup code and filter output. Christian Deacon 2025-03-28 11:48:25 -04:00
  • 8b4be2ee2f Merge pull request #68 from gamemann/20250327-loop-improvements Christian Deacon 2025-03-27 20:58:32 -04:00
  • 88b1e0f02b Update README. Christian Deacon 2025-03-27 20:53:50 -04:00
  • 095d513ebd Update README. Christian Deacon 2025-03-27 20:37:14 -04:00
  • 148385b3e7 Add support for bpf_loop(). Christian Deacon 2025-03-27 20:36:20 -04:00
  • 6001428130 Update README. Christian Deacon 2025-03-25 11:59:06 -04:00
  • 1a637cffab Improve protocol check. Christian Deacon 2025-03-25 11:47:41 -04:00
  • 60fcd6fc5a Missed one last ntohs() on UDP destination port. Christian Deacon 2025-03-25 11:37:55 -04:00
  • 135cd1526e Don't convert UDP port range to network byte order when setting filter. Christian Deacon 2025-03-25 11:36:17 -04:00
  • 869eaf668b Fix issue with port range matching due to port in network byte order. Christian Deacon 2025-03-25 11:35:33 -04:00
  • 2060f41081 Add option to disable IPv6 to speed up performance of XDP program. Christian Deacon 2025-03-25 11:25:15 -04:00
  • 2c9312c574 Disable source IP-based rate limiting by default and add note to README. Christian Deacon 2025-03-25 11:06:54 -04:00
  • fd013b4b4a Clean up code. Christian Deacon 2025-03-24 10:52:41 -04:00
  • 3733bbcdaa Fix issue with setting rate limits with xdpfw-add and update README. Christian Deacon 2025-03-23 21:57:37 -04:00
  • 51b9c2b76a Fix UDP destination port not matching. Christian Deacon 2025-03-23 21:51:59 -04:00
  • 14121a4f35 Update README. Christian Deacon 2025-03-23 21:51:35 -04:00
  • 4f43a3fb1c Merge pull request #67 from gamemann/20250322-rl-changes Christian Deacon 2025-03-23 21:50:57 -04:00
  • dcfa506264 Update README. Christian Deacon 2025-03-23 21:15:15 -04:00
  • b4a1c00149 Update README. Christian Deacon 2025-03-23 21:09:39 -04:00
  • b1bb658a58 Unroll by 30. Christian Deacon 2025-03-23 20:47:27 -04:00
  • 0c77037537 Unroll main filters loop to save instructions with BPF verifier and potentially improve performance. Christian Deacon 2025-03-23 20:36:28 -04:00
  • 5aa3270f82 Implement both IP and flow-based rate limiting. Christian Deacon 2025-03-23 20:35:08 -04:00
  • 2727740a64 Merge pull request #65 from gamemann/20250321-port-range Christian Deacon 2025-03-21 19:08:02 -04:00
  • 444ca94970 Update README. Christian Deacon 2025-03-21 18:28:36 -04:00
  • 3e813ee770 Update xdpfw-add program. Christian Deacon 2025-03-21 18:22:01 -04:00
  • 6651f731b5 Add port range support to config. Christian Deacon 2025-03-21 18:21:50 -04:00
  • 783fcef19a Update XDP filter layout with port range support. Christian Deacon 2025-03-21 18:21:31 -04:00
  • e4605c81a3 Add util function to parse port ranges. Christian Deacon 2025-03-21 18:20:52 -04:00
  • e9e9027fe7 Fix issues with IP range drop map. Christian Deacon 2025-03-13 08:08:22 -04:00
  • 5a6fff2ba6 Revert interface setting rename so it doesn't break existing configurations. Christian Deacon 2025-03-10 19:30:00 -04:00
  • a2a11cf6a3 Change block time type in xdpfw-add util. Christian Deacon 2025-03-10 19:04:51 -04:00
  • ec8fd4a65d Merge pull request #63 from gamemann/20250306-multiple-interfaces Christian Deacon 2025-03-10 18:52:38 -04:00
  • d5c2413838 Clean up code. Christian Deacon 2025-03-10 18:04:14 -04:00
  • c88a010aae Rework IPv6 header matching with dynamic filters and add packet length to logging event. Christian Deacon 2025-03-10 17:08:03 -04:00
  • 9ecbf7fc4a Update README. Christian Deacon 2025-03-10 17:07:28 -04:00
  • 0ac80d7452 Make sure XDP program has attached at least once. Christian Deacon 2025-03-10 16:18:15 -04:00
  • d0a62b0a16 Update README. Christian Deacon 2025-03-10 16:13:21 -04:00
  • f0e505555d Update default config. Christian Deacon 2025-03-10 16:13:13 -04:00
  • 5d7ca715d1 Implement support for multiple interfaces and improve code. Christian Deacon 2025-03-10 16:08:43 -04:00
  • 888028bac3 Rework stat incrementing in XDP program. Christian Deacon 2025-03-06 15:55:31 -05:00
  • ad045b5b84 Separate filter rule structures from config and BPF map. Christian Deacon 2025-03-06 15:49:14 -05:00
  • 916189a498 Rename functions and cmdline to cli for organization. Christian Deacon 2025-03-06 13:49:09 -05:00
  • e1b0fec39e Update README. Christian Deacon 2025-03-02 20:54:59 -05:00
  • fee8ca8757 Merge pull request #60 from gamemann/20250227-pin-map Christian Deacon 2025-03-01 14:14:21 -05:00
  • d9af7e2115 Update README. Christian Deacon 2025-03-01 13:57:02 -05:00
  • b18124b071 Disable IP ranges drop map by default. Christian Deacon 2025-03-01 13:51:18 -05:00
  • 8756bbcdb8 Update xdpfw-add and xdpfw-del utils. Christian Deacon 2025-03-01 13:48:06 -05:00
  • de3739d027 Treat block time of 0 as indefinitely. Christian Deacon 2025-03-01 13:47:55 -05:00
  • 786b472287 Improve xdpfw-add util. Christian Deacon 2025-03-01 13:35:21 -05:00
  • b0385f975d Update README. Christian Deacon 2025-03-01 13:03:05 -05:00
  • e4464e1961 Set CLI integer values to -1 by default in xdpfw-add. Christian Deacon 2025-03-01 13:00:06 -05:00
  • bfbc1a7554 Organize code. Christian Deacon 2025-03-01 12:59:38 -05:00
  • a410e928f2 Update README. Christian Deacon 2025-03-01 12:59:10 -05:00
  • 628b18f32d Update README. Christian Deacon 2025-03-01 12:08:37 -05:00
  • a0a812a7f0 Start working on xdpfw-add and xdpfw-del utilities. Christian Deacon 2025-03-01 10:40:28 -05:00
  • 2dd90d8c56 Update .gitignore. Christian Deacon 2025-03-01 10:40:06 -05:00
  • 730852592b Update Makefile. Christian Deacon 2025-03-01 10:39:59 -05:00
  • bab579949e Update hard-code config and types. Christian Deacon 2025-03-01 10:39:38 -05:00
  • 2019029a4d Continue preparing Loader for new features. Christian Deacon 2025-03-01 10:39:11 -05:00
  • ff1ac4e817 Add support for IP range drop and make features more modular. Christian Deacon 2025-03-01 10:38:45 -05:00
  • f261cf7199 Update and add helper functions. Christian Deacon 2025-03-01 10:38:10 -05:00
  • e392b7355b Rename cfgfile to cfg_file in Loader. Christian Deacon 2025-03-01 10:37:13 -05:00
  • c5629a8603 Start preparing loader for xdpfw-add (rule_add) and xdpfw-del (rule_del) programs. Christian Deacon 2025-02-27 16:25:26 -05:00
  • 36e7bc819a Update README. Christian Deacon 2025-02-27 08:29:20 -05:00
  • 776dec5366 Update README. Christian Deacon 2025-02-27 08:28:25 -05:00
  • 5f817f466b Fix issue with updating IPv6 client stats and rename map names. Christian Deacon 2025-02-27 07:09:30 -05:00
  • 47753af3d5 Change default log file path and clean up some code. Christian Deacon 2025-02-27 07:03:41 -05:00
  • c631266061 Optimize inserting filters into BPF map. Christian Deacon 2025-02-27 06:59:52 -05:00
  • 5f60030721 Update help menu. Christian Deacon 2025-02-26 20:41:42 -05:00
  • 5b3cdb8897 Update config example. Christian Deacon 2025-02-26 20:30:03 -05:00
  • 9d7549e39d Add CLI overrides for config values. Christian Deacon 2025-02-26 20:29:53 -05:00
  • c567a028ed Add option to calculate packet counters per second. Christian Deacon 2025-02-26 18:53:14 -05:00
  • 03f67fb063 Update demo run. Christian Deacon 2025-02-26 18:05:05 -05:00
  • ca933d4a12 Improve stdout when logging messages. Christian Deacon 2025-02-26 17:59:47 -05:00
  • 04e2f5b21a Align installer's help menu. Christian Deacon 2025-02-26 17:11:49 -05:00
  • 2b79964407 Update install script. Christian Deacon 2025-02-26 17:10:04 -05:00
  • 09e3665472 Move some logic from main loader program to logging source file. Christian Deacon 2025-02-26 17:02:31 -05:00
  • 2a3fd9bbc0 Update .gitignore. Christian Deacon 2025-02-26 17:02:03 -05:00
  • ad40c4183f Improve scripts. Christian Deacon 2025-02-26 17:01:51 -05:00
  • 37c361e03c Add README for scripts. Christian Deacon 2025-02-26 17:01:16 -05:00
  • 8907efc306 Add script that dumps the XDP object file. Christian Deacon 2025-02-26 16:51:04 -05:00
  • d9998580f2 Split logging logic from XDP program into its own files. Christian Deacon 2025-02-26 16:31:45 -05:00
  • 353aedab42 Use filter ID + 1. Christian Deacon 2025-02-26 16:30:37 -05:00