Sniffer upgrade
This guide covers VoIPmonitor sensor (sniffer) upgrades and downgrades. Two methods are available: Web GUI (recommended) or manual CLI.
Quick Reference
| Task | Command |
|---|---|
| Stop service | systemctl stop voipmonitor
|
| Start service | systemctl start voipmonitor
|
| Check version (local) | /usr/local/sbin/voipmonitor --version
|
| Check version (remote) | echo 'sniffer_version' | nc 127.0.0.1 5029
|
| Download latest stable | wget https://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz
|
Method 1: GUI Upgrade (Recommended)
- Navigate to Settings → Sensors
- Click the blue UPGRADE button next to the sensor
- Select the desired version from the dropdown
- The GUI handles download and restart automatically
ℹ️ Note: This method requires the sensor to be running and connected to the GUI.
Scheduling Upgrades to Avoid Rate-Limiting
When upgrading many sensors simultaneously, you may encounter 429 Too Many Requests errors from download.voipmonitor.org.
Solution: Stagger upgrade times:
- Click the wrench icon next to each sensor
- Go to the UPGRADE subtab
- Set different auto-upgrade datetime values for sensor groups
💡 Tip: Example: Upgrade 10 sensors at 06:30, next 10 at 06:40, etc.
Method 2: Manual CLI Upgrade
Step 1: Stop Service
systemctl stop voipmonitor
Step 2: Download Binary
wget https://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz -O voipmonitor-sniffer.tar.gz
Alternative - Direct binary download:
# For specific version (replace version number)
wget https://download.voipmonitor.org/senzor/download/2025.04.4/voipmonitor.gz.64 -O voipmonitor.gz
gunzip voipmonitor.gz
cp voipmonitor /usr/local/sbin/voipmonitor
chmod +x /usr/local/sbin/voipmonitor
Step 3: Install
tar xzf voipmonitor-sniffer.tar.gz
cd voipmonitor-*-static
# Backup old binary
mv /usr/local/sbin/voipmonitor /usr/local/sbin/voipmonitor.backup
# Install new binary
cp ./voipmonitor /usr/local/sbin/voipmonitor
chmod +x /usr/local/sbin/voipmonitor
Step 4: Start Service
systemctl start voipmonitor
Offline Upgrade
For servers without internet access:
- On a machine WITH internet:
- Transfer to offline server:
scp voipmonitor-sniffer.tar.gz user@offline-server:/tmp/
- On offline server: Follow Steps 1, 3, 4 from Method 2 above
ℹ️ Note: Restore backup if needed: cp /usr/local/sbin/voipmonitor.backup /usr/local/sbin/voipmonitor
Reinstalling After OS Upgrade
After major OS upgrades (e.g., Debian 10→11→12), perform a fresh installation:
# 1. Stop and disable old service
sudo systemctl stop voipmonitor && sudo systemctl disable voipmonitor
# 2. Backup configuration
sudo cp /etc/voipmonitor.conf /etc/voipmonitor.conf.backup
# 3. Download and install fresh
wget https://www.voipmonitor.org/current-stable-sniffer-static-64bit.tar.gz
tar xzf voipmonitor-sniffer-*.tar.gz
cd voipmonitor-*-static
sudo ./install-script.sh
# 4. Restore configuration
sudo cp /etc/voipmonitor.conf.backup /etc/voipmonitor.conf
# 5. Enable and start
sudo systemctl enable --now voipmonitor
💡 Tip: For client-server deployments, verify firewall rules for ports 5029 (manager) and 60024 (packet buffer).
Deprecated Options (v2025.09.1+)
Remove these obsolete directives from voipmonitor.conf:
| Removed Option | Replacement |
|---|---|
vxlan, vxlan_port, vxlan_skipcrc |
udp_port_vxlan = 4789
|
packet_buffer_total_size |
max_buffer_mem, ringbuffer
|
udp_reassembly*, sipdefrag* |
Handled internally |
interface_snaplen |
snaplen = 3200
|
max_sip_size, sanity_checks, check_sip_header |
Built-in improvements |
Verify after cleanup:
systemctl restart voipmonitor
journalctl -u voipmonitor -n 50 | grep -i "unknown\|option"
Troubleshooting
Upgrading One Sensor Affects Multiple Sensors
Cause: Multiple sensors share the same Manager IP + Port combination.
Fix:
- Check Settings → Sensors for duplicate IP/Port entries
- Ensure each sensor has a unique Manager IP (or unique port if on same host)
- Never use
127.0.0.1for remote sensors
Cannot Enable Auto-Upgrade for Default Local Sensor
The default "local sensor" entry does not support auto-upgrade.
Solution: Create a new sensor entry:
- Settings → Sensors → Add new sensor
- Set: Sensor ID (unique), Manager IP:
127.0.0.1, Manager Port:5029 - Restart service:
systemctl restart voipmonitor - Configure auto-upgrade on the new sensor entry
"New Sensor Version Available" Notification Persists
Cause: Development version option is enabled.
Fix: Disable System Configuration → Advanced → "enable upgrade sniffer to development version"
"sniffer error: need AES!"
After upgrade, the GUI cannot communicate with sensor due to encryption key mismatch.
Solutions:
# Option 1: Remove old AES key from GUI database
cd /var/www/voipmonitor && php php/run.php delete_aes_key
# Option 2: Disable encryption in sensor config
echo "manager_enable_unencrypted = yes" >> /etc/voipmonitor.conf
systemctl restart voipmonitor
⚠️ Warning: manager_enable_unencrypted = yes reduces security. Use only in trusted networks.
"Permission denied" During Upgrade
Cause: /tmp mounted with noexec flag.
Fix:
# Temporary fix
mount -o remount,exec /tmp
# Permanent fix: edit /etc/fstab and remove 'noexec' from /tmp line
Binary Lacks Execute Permission After Upgrade
Symptom: Service fails to start, "Permission denied" on /usr/local/sbin/voipmonitor.
Fix:
chmod +x /usr/local/sbin/voipmonitor
systemctl start voipmonitor
"Could not resolve host: download.voipmonitor.org"
Solutions:
1. Configure proxy (if required):
# In /etc/voipmonitor.conf
curlproxy = http://proxy.example.com:3128
2. Manual binary copy from another sensor:
scp working-sensor:/usr/local/sbin/voipmonitor /tmp/
cp /tmp/voipmonitor /usr/local/sbin/voipmonitor
chmod +x /usr/local/sbin/voipmonitor
SSL/TLS Protocol Error During Upgrade
Symptom: tlsv1 alert protocol version error.
Temporary fix:
# In /etc/voipmonitor.conf
upgrade_try_http_if_https_fail = yes
⚠️ Warning: Disable this option after upgrade completes. HTTP is less secure than HTTPS.
Missing Database Table After Upgrade
Symptom: Table 'voipmonitor.cdr_audio_transcribe' doesn't exist
Fix: Create the missing table manually:
-- Connect to database
mysql -h your_db_host -u your_db_user -p voipmonitor
-- Create the missing table (example for cdr_audio_transcribe)
CREATE TABLE `cdr_audio_transcribe` (
`ID` bigint unsigned NOT NULL AUTO_INCREMENT,
`calldate` datetime NOT NULL,
`fbasename` varchar(255) DEFAULT NULL,
`a_language` varchar(10) DEFAULT NULL,
`b_language` varchar(10) DEFAULT NULL,
`a_text` mediumtext,
`b_text` mediumtext,
PRIMARY KEY (`ID`,`calldate`),
KEY `fbasename` (`fbasename`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3
PARTITION BY RANGE COLUMNS(calldate)
(PARTITION p_future VALUES LESS THAN MAXVALUE ENGINE = InnoDB);
Then restart: systemctl restart voipmonitor
See Also
- Sniffer_installation - Initial sensor installation
- Sniffer_configuration - Configuration parameters
- Settings#Sensors - GUI sensor management
- Systemd_for_voipmonitor_service_management - Service management
AI Summary for RAG
Summary: Guide for upgrading/downgrading VoIPmonitor sensor. Two methods: (1) GUI upgrade - Settings → Sensors → UPGRADE button, includes scheduling to avoid 429 rate-limiting errors by setting different auto-upgrade datetime per sensor group. (2) Manual CLI - stop service, wget binary, backup old, copy new to /usr/local/sbin/, chmod +x, start. Covers offline upgrade (SCP transfer), fresh install after OS upgrade (backup config, run install-script.sh, restore config). Deprecated options in v2025.09.1: vxlan→udp_port_vxlan, sipdefrag→internal, interface_snaplen→snaplen. Troubleshooting: duplicate Manager IP causes multi-sensor upgrade, default local sensor needs manual replacement for auto-upgrade, "need AES" fix with delete_aes_key or manager_enable_unencrypted, noexec /tmp fix with remount, missing chmod +x, curlproxy for network issues, upgrade_try_http_if_https_fail for TLS errors, manual CREATE TABLE for missing DB tables.
Keywords: upgrade, downgrade, sniffer, sensor, GUI upgrade, manual upgrade, wget, systemctl, chmod, version check, Manager API, OS upgrade, reinstall, rate limiting, 429 error, schedule upgrades, auto-upgrade datetime, need AES, delete_aes_key, manager_enable_unencrypted, deprecated options, 2025.09.1, permission denied, noexec, curlproxy, TLS error, upgrade_try_http_if_https_fail, missing table
Key Questions:
- How do I upgrade the VoIPmonitor sniffer via GUI or CLI?
- How can I downgrade the sensor to a previous version?
- How do I avoid "429 Too Many Requests" errors when upgrading many sensors?
- How do I schedule sensor upgrades to prevent rate limiting?
- Why can I not enable auto-upgrade for the default local sensor?
- What should I do after upgrading the operating system?
- Why does upgrading one sensor upgrade multiple sensors?
- How do I fix "sniffer error: need AES!" after upgrade?
- Which configuration options are deprecated in version 2025.09.1?
- How do I fix "Permission denied" during sensor upgrade?
- How do I fix "Could not resolve host" during GUI upgrade?
- How do I fix SSL/TLS protocol version error during upgrade?
- How do I fix missing database table error after upgrade?