A high-performance terminal tool inspired by sngrep, re-engineered from scratch in Rust for modern VoIP diagnostics, live ladder flow tracing, and offline PCAP inspection.
Click on any message in the flow to inspect real-time SIP headers and SDP payload
INVITE sip:bob@biloxi.example.com SIP/2.0 Via: SIP/2.0/UDP 192.168.1.100:5060;branch=z9hG4bK-776asdhds Max-Forwards: 70 From: "Alice" <sip:alice@biloxi.example.com>;tag=alice-tag-991 To: "Bob" <sip:bob@biloxi.example.com> Call-ID: c204a8b-voip-session-991 CSeq: 1 INVITE Contact: <sip:alice@192.168.1.100:5060> Content-Type: application/sdp Content-Length: 138 v=0 o=alice 2890844526 2890844526 IN IP4 192.168.1.100 s=SIP Call c=IN IP4 192.168.1.100 t=0 0 m=audio 4000 RTP/AVP 0 8 101 a=rtpmap:0 PCMU/8000
Engineered from clean RFC specifications with zero legacy dependencies
Written from pure IETF RFC 3261, RFC 3262, and RFC 4566 (SDP) specs without using or copying sngrep source code. Safe for commercial use under the MIT license.
Automatic call session correlation by Call-ID. Visualizes endpoint interactions, directional arrows, provisional status codes, and call states in ratatui TUI.
Powered by Rust 2024, etherparse for zero-copy packet slicing, and crossbeam channels. Ultra-low CPU usage even under high VoIP traffic.
Filter calls on the fly by pressing /. Matches Call-ID, Caller URI, Callee URI, IP addresses, and methods.
Pipe ASCII ladder diagrams straight into logs or automation scripts using --ladder or stream packets directly to stdout with --dump.
Supports live interface sniffing (eth0, any, loopback) as well as offline analysis of recorded Wireshark .pcap / .pcapng captures.
Get up and running with sipgrep-rs in seconds
sudo apt-get install -y libpcap-dev build-essential
git clone https://github.com/mahirgul/sipgrep-rs.git && cd sipgrep-rs && cargo build --release
sudo ./target/release/sipgrep-rs -i eth0
| Key | Action | Context |
|---|---|---|
| Enter | Open Call Flow ladder diagram / Inspect message | Call List / Flow |
| Esc / b | Back to previous view / clear filter | Global |
| / | Open real-time interactive search filter bar | Call List |
| Space | Pause / resume live packet capture | Global |
| d | Inspect raw SIP message headers & SDP body | Flow Ladder |
| c | Clear captured call history from memory | Call List |
| q | Quit application cleanly | Global |