{"id":13398995,"url":"https://github.com/sipcapture/sipgrep","last_synced_at":"2025-07-26T10:33:22.046Z","repository":{"id":55656523,"uuid":"10996071","full_name":"sipcapture/sipgrep","owner":"sipcapture","description":"SIPGREP: Display and Troubleshoot SIP signaling over IP networks in console","archived":false,"fork":false,"pushed_at":"2024-05-16T23:09:31.000Z","size":1287,"stargazers_count":169,"open_issues_count":7,"forks_count":46,"subscribers_count":30,"default_branch":"master","last_synced_at":"2025-05-20T14:06:41.357Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://www.sipcapture.org","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sipcapture.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-06-27T12:17:42.000Z","updated_at":"2025-05-14T07:01:11.000Z","dependencies_parsed_at":"2024-01-03T04:59:39.739Z","dependency_job_id":"2b047884-2f81-489e-bf62-d995545d98b5","html_url":"https://github.com/sipcapture/sipgrep","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/sipcapture/sipgrep","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fsipgrep","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fsipgrep/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fsipgrep/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fsipgrep/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sipcapture","download_url":"https://codeload.github.com/sipcapture/sipgrep/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fsipgrep/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267150457,"owners_count":24043473,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-26T02:00:08.937Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-30T19:00:33.311Z","updated_at":"2025-07-26T10:33:22.005Z","avatar_url":"https://github.com/sipcapture.png","language":"C","funding_links":[],"categories":["Contribution Guidelines","C","others","Operations","Interconnect"],"sub_categories":["Stand-Alone Client Applications","Monitoring","SBC, IMS"],"readme":"[![Build Status](https://travis-ci.org/sipcapture/sipgrep.svg?branch=master)](https://travis-ci.org/sipcapture/sipgrep)\n\nSipGrep 2\n=======\n\n  Sipgrep is a powerful pcap-aware tool command line tool to sniff, capture, display and troubleshoot SIP signaling over IP networks, allowing the user to specify extended regular expressions matching against SIP headers.\n\n  The first version of this program (dated 2005) was a small wrapper for ngrep. Version 2.x provides a full standalone application with numerous additional features geared towards SIP, building upon the excellent ngrep code baseline.\n\n\n## Requirements:\n\n* libpcap\n* libpcre\n\nOn Debian/Ubuntu: `sudo apt-get install libpcap-dev libpcre2-dev`\n\nOn CentOS/RHEL: `yum install libpcap-devel pcre-devel`\n\n\n\n## Installation\n\n### Debian\nSipgrep is available as [Debian package](https://packages.debian.org/sid/net/sipgrep) (Thanks @linuxmaniac)\n\n### Clone from GIT:\n\n```\ncd /usr/src\ngit clone https://github.com/sipcapture/sipgrep.git\n```\n\n### Build and Install:\n\n```\ncd sipgrep\n./build.sh (optional)\n./configure\nmake \u0026\u0026 make install\n```\n\n\n\n## Usage:\n\n```\n./sipgrep  -V\n\nsipgrep: V2.01b\n\n./sipgrep -h\n\nusage: sipgrep \u003c-ahNViwgGJpevxlDTRMmqCJjxK\u003e \u003c-IO pcap_dump\u003e \u003c-n num\u003e \u003c-d dev\u003e \u003c-A num\u003e\n             \u003c-s snaplen\u003e \u003c-S limitlen\u003e \u003c-c contact user\u003e \u003c-j user agent\u003e\n                 \u003c-f from user\u003e  \u003c-t to user\u003e \u003c-H capture url\u003e \u003c-q autostop cond.\u003e\n                 \u003c-Q split cond.\u003e \u003c-P portrange\u003e \u003c-F file\u003e \u003c-z duration\u003e\n                 \u003cmatch expression\u003e \u003cbpf filter\u003e\n   -h  is help/usage\n   -V  is version information\n   -e  is show empty packets\n   -i  is ignore case\n   -x  is disable bad parsing notification\n   -v  is invert match\n   -R  is don't do privilege revocation logic\n   -w  is word-regex (expression must match as a word)\n   -p  is don't go into promiscuous mode\n   -l  is make stdout line buffered\n   -D  is replay pcap_dumps with their recorded time intervals\n   -T  is print delta timestamp every time a packet is matched\n   -m  is don't do dialog match\n   -M  is don't do multi-line match (do single-line match instead)\n   -I  is read packet stream from pcap format file pcap_dump\n   -O  is dump matched packets in pcap format to pcap_dump\n   -n  is look at only num packets\n   -A  is dump num packets after a match\n   -s  is set the bpf caplen\n   -S  is set the limitlen on matched packets\n   -C  is no colors in stdout\n   -c  is search user in Contact: header\n   -f  is search user in From: header\n   -t  is search user in To: header\n   -F  is read the bpf filter from the specified file\n   -H  is homer sipcapture URL (i.e. udp:10.0.0.1:9061)\n   -N  is show sub protocol number\n   -g  is disabled clean up dialogs during trace\n   -G  is print dialog report during clean up\n   -J  is kill friendly scanner automatically\n   -j  is kill friendly scanner automatically matching user agent string\n   -K  is kill friendly scanner providing IP and port/portrange i.e.: 10.0.0.1:5060-5090\n   -q  is auto stop condition:\n        duration:NUM - stop after NUM seconds\n        filesize:NUM - stop this file after NUM KB\n   -Q  is pcap_dump split condition:\n        duration:NUM - switch to next file after NUM secs\n        filesize:NUM - switch to next file after NUM KB\n   -a  is disable packet re-assemblation\n   -P  is use specified portrange instead of default 5060-5061\n   -d  is use specified device instead of the pcap default\n   -z  is make statistics count maximum \u003cduration\u003e seconds\n   \n```\n\n### Examples:\n\n```\n#Find a dialog there From user contains '2323232'\nsipgrep -f 2323232\n\n#Find a dialog there To user contains '1111' and print dialog report\nsipgrep -f 1111 -G\n\n#Display only 603 replies without dialog match\nsipgrep '^SIP/2.0 603' -m\n\n#Display only OPTIONS and NOTIFY requests\nsipgrep '^(OPTIONS|NOTIFY)'\n\n#Display only SUBSCRIBE dialog\nsipgrep 'CSeq:\\s?\\d* (SUBSCRIBE|PUBLISH|NOTIFY)' -M\n\n#Kill friendly-scanner\nsipgrep -J\n\n#Kill friendly-scanner with custom UAC\nsipgrep -j sipvicious\n\n#Display dialogs and duplicate all traffic to HOMER sipcapture in HEPv3\nsipgrep -f 23333 -H udp:10.0.0.1:9061\n\n#collect all Calls/Regisrations untill pcap_dump smaller than 20 KB.\nsipgrep -q 'filesize:20' -O sipgrep.pcap\n\n#collect all Calls/Regisrations dialogs during 120 seconds, print reports and exit.\nsipgrep -g -G -q 'duration:120'\n\n#split pcap_dump to 20 KB files in sipgrep_INDEX_YYYYMMDDHHMM.pcap\nsipgrep -Q 'filesize:20' -O sipgrep.pcap\n\n#split pcap_dump in sipgrep_INDEX_YYYYMMDDHHMM.pcap each 120 seconds\nsipgrep -Q 'duration:120' -O sipgrep.pcap\n\n\n\n\n```\n\n\n\n### Reports\n\n```\n-----------------------------------------------\nDialog finished: [53342c3b200e-hgf9cyc7r0i2]\nType: Call\nFrom: \"From Work with Love\" \u003csip:107@sip.xxx.com\u003e;tag=fucueumi19\nTo: \u003csip:101@sip.xxx.com;user=phone\u003e\nUAC: snom360/8.7.3.25\nCDR init ts: 1395928127\nCDR ringing ts: 1395928128\nSRD(PDD): 1 sec\nCDR answer ts: 1395928136\nWTA: 9 sec\nCDT (duration): 70 sec\nCDR termination ts: 1395928206\nWas connected: YES\nREASON: BYE\n-----------------------------------------------\n\n-----------------------------------------------\nDialog finished: [552E1549D6A9E0F3@192.168.178.1]\nType: Registration\nFrom: \u003csip:102@sip.xxx.com\u003e;tag=3598882807\nTo: \u003csip:102@sip.xxxx.com\u003e\nUAC: AVM FRITZ!Box Fon WLAN 7170 Annex A 58.04.67 (Dec 18 2008)\nCDR init ts: 1395928251\nCDR termination ts: 1395928251\nSDT: 0 sec\nWas registered: YES\nREASON: 200\n-----------------------------------------------\n\n-----------------------------------------------\nDialog finished: [2d714880c68a824dae62049eecc91599]\nType: Call\nFrom: 7001\u003csip:7001@xxxxxxx\u003e;tag=1244ddd6\nTo: 448455915802\u003csip:448455915802@xxxxxxx\u003e\nUAC: sipcli/v1.8\nCDR init ts: 1395928246\nSDT: 8 sec\nCDR termination ts: 1395928254\nWas connected: NO\nREASON: 407\n-----------------------------------------------\n\n```\n\n### Colorful SIP Output:\n\n![Screenshot](https://cloud.githubusercontent.com/assets/4513061/2536095/2ca6e1f8-b599-11e3-9451-708b7c614f5f.png)\n\n\n## License\n\nCopyright (c) 2014-2016 Alexandr Dubovikov\n\nsipgrep is released under GNU GPL v3. See [COPYING](COPYING) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsipcapture%2Fsipgrep","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsipcapture%2Fsipgrep","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsipcapture%2Fsipgrep/lists"}