How to enable ipv6 processing: Difference between revisions
(Improved formatting: syntax highlighting, proper MediaWiki markup, fixed incomplete step, removed emoji from header, added warning box) |
(Fix order of ipv6_alter.sql migration - run on DB server first, then configure sensors) |
||
| Line 15: | Line 15: | ||
== Enabling IPv6 on Existing Installations == | == Enabling IPv6 on Existing Installations == | ||
If you have an existing VoIPmonitor installation that was set up with only IPv4 addresses, enabling IPv6 requires a database schema migration. | If you have an existing VoIPmonitor installation that was set up with only IPv4 addresses, enabling IPv6 requires a database schema migration. The correct order is critical: first prepare the database schema, then configure the sensors. | ||
=== Step 1: | === Step 1: Run Migration Script on Database/GUI Server === | ||
The migration script <code>ipv6_alter.sql</code> must be run '''only on the database/GUI server''' to add the necessary IPv6 columns to your database tables. This step prepares the database schema before sensors start writing IPv6 data. | |||
The migration script <code>ipv6_alter.sql</code> | |||
{| style="width:100%; border:1px solid #c00; background-color:#fee;" | {| style="width:100%; border:1px solid #c00; background-color:#fee;" | ||
| Line 36: | Line 25: | ||
| '''Warning:''' Backup your database before running any schema migration! | | '''Warning:''' Backup your database before running any schema migration! | ||
|} | |} | ||
;Location | |||
:Typically found in the scripts directory of your VoIPmonitor installation, such as <code>/usr/share/voipmonitor/scripts/</code> or <code>/var/www/html/scripts/</code>. | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
# On the database/GUI server only: | |||
mysql -u root -p voipmonitor < /path/to/scripts/ipv6_alter.sql | mysql -u root -p voipmonitor < /path/to/scripts/ipv6_alter.sql | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Step 3: Restart the Service === | === Step 2: Enable IPv6 in Configuration on Each Sensor === | ||
After the database schema is prepared, configure each sensor to write IPv6 data. | |||
Edit <code>/etc/voipmonitor.conf</code> on each sensor: | |||
<syntaxhighlight lang="ini"> | |||
ipv6 = yes | |||
</syntaxhighlight> | |||
=== Step 3: Restart the Service on Each Sensor === | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
| Line 104: | Line 107: | ||
== AI Summary for RAG == | == AI Summary for RAG == | ||
'''Summary:''' This guide covers enabling IPv6 support in VoIPmonitor. For new installations, set <code>ipv6 = yes</code> in voipmonitor.conf before first start. For existing systems with IPv4-only databases, | '''Summary:''' This guide covers enabling IPv6 support in VoIPmonitor. For new installations, set <code>ipv6 = yes</code> in voipmonitor.conf before first start. For existing systems with IPv4-only databases, the correct order is: (1) Run <code>ipv6_alter.sql</code> migration script on the database/GUI server only, (2) Enable <code>ipv6 = yes</code> on each sensor, (3) Restart the service. The migration is time-consuming for large databases and may cause historical statistics inaccuracies. The recommended approach for production environments is to flush the old database, start fresh with IPv6 enabled, and use "Tools → Backup & Restore → Configuration TABLES" to preserve GUI settings. | ||
'''Keywords:''' ipv6, ipv6 enable, migration, database migration, ipv6_alter.sql, historical data, configuration backup, gui settings | '''Keywords:''' ipv6, ipv6 enable, migration, database migration, ipv6_alter.sql, database server, gui server, sensor configuration, historical data, configuration backup, gui settings | ||
'''Key Questions:''' | '''Key Questions:''' | ||
* How do I enable IPv6 on a new VoIPmonitor installation? | * How do I enable IPv6 on a new VoIPmonitor installation? | ||
* What is the correct order to run ipv6_alter.sql and configure ipv6 = yes? | |||
* Do I need to run ipv6_alter.sql on all sensors or just the database server? | |||
* How do I enable IPv6 on an existing IPv4-only VoIPmonitor installation? | * How do I enable IPv6 on an existing IPv4-only VoIPmonitor installation? | ||
* What is the ipv6_alter.sql migration script? | * What is the ipv6_alter.sql migration script? | ||
* Why might migration be problematic for existing databases? | * Why might migration be problematic for existing databases? | ||
Revision as of 02:19, 5 January 2026
This guide explains how to enable IPv6 support in VoIPmonitor, covering both new installations and existing IPv4-formatted databases.
Quick Start for New Installations
For a fresh VoIPmonitor installation, simply enable IPv6 before starting the service for the first time:
ipv6 = yes
Add this to your /etc/voipmonitor.conf file. The database will be created with IPv6 columns from the beginning.
Enabling IPv6 on Existing Installations
If you have an existing VoIPmonitor installation that was set up with only IPv4 addresses, enabling IPv6 requires a database schema migration. The correct order is critical: first prepare the database schema, then configure the sensors.
Step 1: Run Migration Script on Database/GUI Server
The migration script ipv6_alter.sql must be run only on the database/GUI server to add the necessary IPv6 columns to your database tables. This step prepares the database schema before sensors start writing IPv6 data.
| Warning: Backup your database before running any schema migration! |
- Location
- Typically found in the scripts directory of your VoIPmonitor installation, such as
/usr/share/voipmonitor/scripts/or/var/www/html/scripts/.
# On the database/GUI server only:
mysql -u root -p voipmonitor < /path/to/scripts/ipv6_alter.sql
Step 2: Enable IPv6 in Configuration on Each Sensor
After the database schema is prepared, configure each sensor to write IPv6 data.
Edit /etc/voipmonitor.conf on each sensor:
ipv6 = yes
Step 3: Restart the Service on Each Sensor
systemctl restart voipmonitor
Verification
After the service restarts, VoIPmonitor will begin logging IPv6 addresses for calls involving IPv6 endpoints. You can verify this by checking the CDR view for calls with IPv6 addresses.
Important Considerations for Existing Databases
Performance and Time
- The migration process can be very time-consuming for large databases with millions of CDRs
- The
ipv6_alter.sqlscript adds columns to multiple tables, which requires copying existing data - During migration, the database may experience performance degradation
Impact on Historical Data
- Converting existing IPv4 entries cannot retroactively convert them to IPv6 format
- Historical statistics and reports may display inaccuracies after the migration, as pre-migration data will have NULL values in IPv6 columns
- Some aggregations or filters may behave unexpectedly with the mixed IPv4/IPv6 data
Recommended Approach: Fresh Database
For most production environments, we recommend starting with a fresh database instead of migrating:
- Export or back up any data you need to preserve (raw PCAPs, reports, etc.)
- Use the GUI's Tools → Backup & Restore → Configuration TABLES feature to save your GUI settings, alerts, user permissions, and other configuration
- Flush or drop the old VoIPmonitor database
- Recreate it from scratch with
ipv6 = yesenabled - Restore your GUI configuration tables from the backup
This approach avoids migration time, eliminates potential data inconsistencies, and ensures clean IPv6 operation going forward.
Preserving GUI Settings
When resetting the database, you can preserve your GUI configuration:
- Access the VoIPmonitor GUI web interface
- Navigate to Tools → Backup & Restore
- Select Backup configuration TABLES
- Save the backup file to a safe location
- Create the new database with
ipv6 = yesenabled - Use Restore configuration TABLES to reapply your settings
This restores:
- User accounts and permissions
- Alert rules and email notifications
- Dashboard configurations
- GUI settings and preferences
- Custom capture rules
Note: This does not restore CDR data or PCAP files—those must be backed up separately if needed.
Related Documentation
- Complete Configuration Reference for all voipmonitor.conf options
- FAQ for common troubleshooting questions
- Data Cleaning and Retention for managing database size and cleanup
AI Summary for RAG
Summary: This guide covers enabling IPv6 support in VoIPmonitor. For new installations, set ipv6 = yes in voipmonitor.conf before first start. For existing systems with IPv4-only databases, the correct order is: (1) Run ipv6_alter.sql migration script on the database/GUI server only, (2) Enable ipv6 = yes on each sensor, (3) Restart the service. The migration is time-consuming for large databases and may cause historical statistics inaccuracies. The recommended approach for production environments is to flush the old database, start fresh with IPv6 enabled, and use "Tools → Backup & Restore → Configuration TABLES" to preserve GUI settings.
Keywords: ipv6, ipv6 enable, migration, database migration, ipv6_alter.sql, database server, gui server, sensor configuration, historical data, configuration backup, gui settings
Key Questions:
- How do I enable IPv6 on a new VoIPmonitor installation?
- What is the correct order to run ipv6_alter.sql and configure ipv6 = yes?
- Do I need to run ipv6_alter.sql on all sensors or just the database server?
- How do I enable IPv6 on an existing IPv4-only VoIPmonitor installation?
- What is the ipv6_alter.sql migration script?
- Why might migration be problematic for existing databases?