Skip to content

Releases: hack3ric/mimic

v0.6.2

23 Nov 16:33
29c7e19
Compare
Choose a tag to compare

This is a minor release with Debian packaging fixes, in line with Debian upstream packaging effort.

Major changes in v0.6.0 include:

  • Do not depend on bpf_xdp_get_buff_len for payload length; this could be larger than the actual packet length, and the real length should be retrieved from packet headers
  • Add kprobe checksum hacks, along with previous kfunc implementation
  • Enable XDP fragments support
  • RST is now sent to peers when Mimic is shutting down
  • Allow domain names in filters; they are only resolved when Mimic starts, and only resolved IPs are stored
  • Allow fixed or pseudo-random padding in packets

v0.6.1

23 Nov 10:06
03a4c4f
Compare
Choose a tag to compare

This is a minor release with Debian packaging fixes, in line with Debian upstream packaging effort.

Major changes in v0.6.0 include:

  • Do not depend on bpf_xdp_get_buff_len for payload length; this could be larger than the actual packet length, and the real length should be retrieved from packet headers
  • Add kprobe checksum hacks, along with previous kfunc implementation
  • Enable XDP fragments support
  • RST is now sent to peers when Mimic is shutting down
  • Allow domain names in filters; they are only resolved when Mimic starts, and only resolved IPs are stored
  • Allow fixed or pseudo-random padding in packets

v0.6.0

02 Nov 14:16
1e7d5d7
Compare
Choose a tag to compare

This version supports alternative kprobe method for checksum hacks, domain resolution support, packet padding and more!

  • Do not depend on bpf_xdp_get_buff_len for payload length; this could be larger than the actual packet length, and the real length should be retrieved from packet headers
  • Add kprobe checksum hacks, along with previous kfunc implementation
  • Enable XDP fragments support
  • RST is now sent to peers when Mimic is shutting down
  • Allow domain names in filters; they are only resolved when Mimic starts, and only resolved IPs are stored
  • Allow fixed or pseudo-random padding in packets

Full Changelog: v0.5.0...v0.6.0

v0.5.0

05 Aug 12:49
v0.5.0
df9b16c
Compare
Choose a tag to compare

This version consists mostly of new test environments, major fixes and internal changes. Some notable are:

  • Track TCP window size and send window change packets to prevent conntrack failure
  • (distro packages) Tries to extract vmlinux from boot image if vmlinux is not available in module build directory
  • Add passive mode, i.e. "do not initiate handshake", enabled by setting handshake interval to 0

Full Changelog: v0.4.2...v0.5.0

v0.4.2

24 May 13:39
a3a811c
Compare
Choose a tag to compare
  • Fix systemd service file, adding missing [Install] section
  • Fix version display in Mimic CLI

Changes in v0.4.x include:

  • Variable congestion window to better mimic real TCP
  • Notify supervisor when Mimic is ready (currently only systemd)
  • Drop json-c dependency, lock file now uses key=value pair
  • Add handshake and keepalive mechanism, as well as its settings, both global and filter-specific
  • Add mimic(1) manpage
  • Better logging UX, including full TCP traffic trace

v0.4.1

24 May 06:56
6dc4578
Compare
Choose a tag to compare
  • Fix configuration file parsing
  • Make trace output more visible on certain terminals

Changes in v0.4.x include:

  • Variable congestion window to better mimic real TCP
  • Notify supervisor when Mimic is ready (currently only systemd)
  • Drop json-c dependency, lock file now uses key=value pair
  • Add handshake and keepalive mechanism, as well as its settings, both global and filter-specific
  • Add mimic(1) manpage
  • Better logging UX, including full TCP traffic trace

v0.4.0

23 May 16:11
c0c638d
Compare
Choose a tag to compare
  • Variable congestion window to better mimic real TCP
  • Notify supervisor when Mimic is ready (currently only systemd)
  • Drop json-c dependency, lock file now uses key=value pair
  • Add handshake and keepalive mechanism, as well as its settings, both global and filter-specific
  • Add mimic(1) manpage
  • Better logging UX, including full TCP traffic trace

v0.3.1

20 Apr 20:09
1222b6b
Compare
Choose a tag to compare
  • Ubuntu: prebuilt distribution switched from 23.10 (mantic) to 24.04 LTS (noble)
  • Add null checks in pktbuf.c to prevent edge-case segfaults
  • Reduce error message on failing to send buffered packets
  • Fix compiler warnings

v0.3.0

07 Apr 13:29
4827a8e
Compare
Choose a tag to compare

This is a major release of Mimic! Changes include:

  • Proper TCP handshake by actively sending packets using raw socket (see README#Caveats for more information)
  • Only calculate checksum deltas on ingress path
  • Correctly build and install DKMS kernel modules on Debian and Ubuntu

v0.2.1

19 Mar 10:49
075e178
Compare
Choose a tag to compare

This is a chore release containing some packaging fixes and documentation updates. Prebuilt packages for Debian 12 and Ubuntu 23.10 is also included.

Major changes in 0.2.0 include:

  • Added lock files for each interface
  • Added mimic show, allowing viewing information of a running Mimic instance
  • Better logging UX
  • Added reading configuration from file
  • Systemd service
  • ...and more internal changes