FrameAssembly v1.5.1 · 81 Protocols (L2–L7) · Free & Open Source
Create and edit .pcap files.
Built for network engineers and security analysts—no Python virtual environments, Scapy scripts, or sudo required. Write .fasm files (host, flow, compile) to build .pcap and .pcapng captures, or decompile existing captures with frameassembly reverse for Wireshark, tcpreplay, and Suricata.
CREATE CUSTOM PCAPS
Build clean captures without lab VMs
Generate exact Ethernet, VLAN, IPv4/IPv6, TCP, UDP, DNS, HTTP, or TLS packets with automatic checksums and zero background noise.
SIMULATE SNMP TRAPS
Test Zabbix, PRTG & LibreNMS alerts
Craft SNMPv1, SNMPv2c, and encrypted SNMPv3 (SHA-256 + AES-128) traps in one line and replay them with tcpreplay.
TEST FIREWALLS & IDS
Automatic TCP handshakes & SEQ/ACK math
Stateful firewalls drop single spoofed packets. FrameAssembly tracks TCP sequence numbers and flips reply ports automatically.
Problem: Need a clean .pcap file in 30 secondsDeclare two hosts, write two packet lines with -> and <-, and compile a valid .pcap capture.
// 1. Name the devices on your networkhost laptop { ip 192.168.1.10 mac 00:1a:2b:3c:4d:10 }host router { ip 192.168.1.1 mac 00:1a:2b:3c:4d:01 }// 2. Write the packets (1 line = 1 packet)flow ping_test(a, b) { a -> b icmp echo_request id 1 seq 1 payload "hello" wait 1ms a <- b icmp echo_reply id 1 seq 1 payload "hello" wait 2ms}// 3. Build the .pcap filecompile { ping_test(laptop, router)}Compiled packets (ping_test.pcap):✓ Ethernet + IP + L4 checksums computed automatically
1 0.000 ms 192.168.1.10 -> 192.168.1.1 ICMP 47 B Echo Request (id=1 seq=1)
2 1.000 ms 192.168.1.1 -> 192.168.1.10 ICMP 47 B Echo Reply (id=1 seq=1)
RECOMMENDED LOCAL SETUP (EASY UPDATES)
Install with Cargo & add the VS Code syntax highlighting extension
$cargo install frameassembly
$code --install-extension SteveWinschel.frameassembly-vscode