packetgen 3.0.0 has been released.
PacketGen provides simple ways to generate, send and capture network
Supported protocols are: Ethernet, Dot11, Dot1x, ARP, IP, IPv6, GRE,
ICMP, IGMP, ICMPv6, MLD, MLDv2, OSPFv2, OSPFv3, UDP, TCP, SNMP, DNS,
EAP, BOOTP, DHCP, TFTP, HTTP and MDNS.
This is a major release of PacketGen. Some behaviours have changed (see
below). NetBIOS, ESP and IKE protocols are no more supported out of the box.
This major release comes with its plugins:
* SMB plugin 0.4.0 (https://github.com/sdaubert/packetgen-plugin-smb).
This plugin now supports NetBIOS protocol.
* new IPsec plugin 1.0.0
(https://github.com/sdaubert/packetgen-plugin-ipsec). This plugin
supports ESP and IKE protocols.
To install plugin, do:
gem install packetgen-plugin-smb packetgen-plugin-ipsec
### 3.0.0 / 2018-10-26
* NetBIOS protocol is no more part of PacketGen. This protocol is now
included in SMB plugin.
* ESP and IKE protocols are no more parts of PacketGen. These protocols
are now included in their own plugin: IPsec plugin.
* Behavioral changes:
** Make all types respond to human API (#to_human and #from_human). This
implies some changes on Types::String fields: magic method now returns a
ruby String, and no more the Types::String. To access to it, use #
accessor. For example, to access Types::String of body field in IP
header, do: ip[:body].
** Types::Array now accepts length_from option, as Types::String already
** Home-made protocols which defined #protocol_name should now defines
.protocol_name to be recognized by their name (used in Packet.gen and
** #to_w now calls #calc on packet by default. To send erroneous
packets, set calc option to false (i.e.: pkt.to_w(iface, calc: false)).
* clean up:
** big clean of whole code.
** Remove deprecated methods.
** remove a lot of warnings when running with ruby -w.
** Optimize packet parsing;
** Optimize #to_w, especially on IPv6: there is no more limitation on
what can be sent on wire.
** Optimize Utils.mitm. Spoofed IP will see far lesser lag.
** Header::IP#calc_length now also calculates ihl field.