SURFmap -- A Network Monitoring Tool Based on the Google Maps API

Please check the manual or readme for installation instructions.
---

Release notes [v3.3.1 (20141030)]:
- [BUGFIX]  Fixed installation script for situations in which SURFmap was installed using a pre-fetched install.sh
- [BUGFIX]  Fixed multiple installation script issues in situations where SURFmap was installed from a ‘SURFmap/SURFmap/‘ directory
- [BUGFIX]  Installation script now checks for presence of PHP CURL module

Release notes [v3.3 (20140919)]:
- [FEATURE] Aggregation in queries is now supported
- [FEATURE] Continent names are now considered in the geocoding process, to deal properly with places that have identical names, such as ‘New York’ and ‘Georgia’
- [BUGFIX]  Fixed a problem that caused the ordering in Stat Top N mode to always be based on ‘Flows’
- [BUGFIX]  Fixed a problem that caused the GeoFilter to fail to execute
- [BUGFIX]  Fixed a problem that caused auto-refresh to ignore time window settings made in menu panel
- [BUGFIX]  Fixed a problem that caused the date/time selectors of the menu panel not to be updated in case the (supposedly matching) nfdump files are missing in the backend
- [BUGFIX]  Fixed a problem that caused incorrect continent information to be used for location names that exist on multiple continents
- [BUGFIX]  Various minor bug fixes and improvements

Release notes [v3.2.2 (20131227)]:
- [BUGFIX] Fixed several minor installation script problems
- [BUGFIX] Various minor bug fixes and improvements

Release notes [v3.2.1 (20131216)]:
- [BUGFIX] Fixed a problem that caused the frontend to stop loading when NfSen was installed in a non-default location
- [BUGFIX] Fixed a problem that caused an error message to be shown while SURFmap was caching geocoder requests
- [BUGFIX] Various minor bug fixes and improvements

Release notes [v3.2 (20131026)]:
- [FEATURE] 'Flow Details' are now also available in marker information windows
- [FEATURE] Added support for Google Maps v3 Visual Refresh
- [BUGFIX] Various minor bug fixes and improvements

Release notes [v3.1.1 (20130826)]:
- [FEATURE] Marker information windows are now sorted
- [BUGFIX] Google Maps visual refresh is temporarily disabled
- [BUGFIX] Improved stability of geocoding process in installation script
- [BUGFIX] Fixed nfdump deprecation messages when -m is used for sorting flow data
- [BUGFIX] Various minor bug fixes and improvements

Release notes [v3.1 (20130802)]:

WARNING: The configuration file of older versions is not compatible with this release!

- [FEATURE] IPv6 support
- [FEATURE] Improved usability and layout of 'Flow Details'
- [FEATURE] Flow record start times are now shown in 'Flow Details'
- [FEATURE] Implemented 'Location-aware Exporting' extension
- [FEATURE] FreeBSD support
- [BUGFIX] Fixed a bug that caused 'Flow Details' of line information window to fail to open
- [BUGFIX] Improved stability when parsing nfdump output
- [BUGFIX] Fixed a bug that prevented SURFmap from loading completely in situations when there's no geocoder cache data to retrieve
- [BUGFIX] Fixed a bug that prevented SURFmap from loading completely in case of certain filters that returned no data
- [BUGFIX] Fixed a bug that prevented SURFmap from loading completely in case of an invalid time range selection present in the session data
- [BUGFIX] Fixed a bug that could cause (reverse) geocoding to wait endless in case of an OVER_QUERY_LIMIT result from Google Geocoder
- [BUGFIX] Improved stability when using a proxy
- [BUGFIX] Various minor bug fixes and improvements

Release notes [v3.0 (20130612)]:

WARNING: Neither the configuration file, nor the database of previous versions is compatible with this release!

- [FEATURE] Application redesign based on AJAX/JSON
- [FEATURE] Distributed geocoding for improved speed and capacity
- [FEATURE] Improved layout of lines and legend
- [FEATURE] Support for extensions

Release notes [v2.4 stable (20121211)]:

- [FEATURE] Added support for multiple internal domains at multiple geographical locations
- [FEATURE] Improved support for PHP 5.4
- [BUGFIX] Fixed a bug that caused several subnet masks not to be processed properly
- [BUGFIX] Fixed a bug that caused the information dialog in the ConfigurationChecker not to be shown
- [BUGFIX] Increased responsiveness of ConfigurationChecker
- [BUGFIX] Fixed a bug that caused the date/time pickers to show incorrect dates/times in August and September, due to Mozilla bug #43425 / #428292

Release notes [v2.3 stable (20120530)]:

- [FEATURE] Added GeoFilter support
- [FEATURE] Added 'Now' button to date/time-selectors, for navigating to latest available time slot
- [FEATURE] Added DNS name resolving for IP addresses on HOST zoom level
- [FEATURE] Moved SURFmap logging from Apache error log to syslog
- [FEATURE] Improved compatibility with PHP 5.3 and higher
- [FEATURE] Added experimental proxy support
- [BUGFIX] Added workaround for issue in date/time-selector, when copying from one selector to another
- [BUGFIX] Fixed an issue that could cause SURFmap to hang when auto-refresh was enabled
- [BUGFIX] Fixed a bug which could cause the ConfigurationChecker to stop working properly when absolute paths to the SQLite databases were used
- [BUGFIX] Fixed a bug which could cause SURFmap not to adhere to the settings related to the GeoCoder DB
- [BUGFIX] Fixed a bug that caused the line color classification to show incorrect values at the Host zoom level
- [BUGFIX] Fixed a bug that caused geocoded cities (not from DB) to be shown at wrong locations on the map
- [BUGFIX] Several minor bug fixes and improvements

Note: GeoPlugin support was removed.

Release notes [v2.2 stable (20111216)]:

WARNING: The configuration file of previous versions is not compatible with this release!

- [FEATURE] It's now possible to copy date/time from one input field to another
- [FEATURE] A warning message can be shown on potential heavy query
- [FEATURE] Improved progress bar layout
- [FEATURE] Improved menu panel layout stability and consistency
- [FEATURE] Improved stability of ConfigurationChecker
- [FEATURE] SURFmap keeps track of geocoding history, in order to not become blocked by the Google GeoCoder service
- [FEATURE] Simplified installation and setup
- [BUGFIX] Fixed a bug in the line color classification
- [BUGFIX] Fixed a bug in the flow complementation process
- [BUGFIX] Fixed a bug which could cause green markers not to be shown
- [BUGFIX] Fixed a bug which caused SQLite DB locking errors with some PHP PDO drivers
- [BUGFIX] Fixed a bug which caused too few flow records to be shown in 'Flow details' windows of markers
- [BUGFIX] Fixed a UTF-8 encoding issue
- [BUGFIX] Improved stability when parsing filter from input field
- [BUGFIX] Several minor bug fixes and improvements

Release notes [v2.1 stable (20111116)]:

WARNING: The configuration file of previous versions is not compatible with this release!

- [FEATURE] Added support for source selection in user interface
- [FEATURE] Added support for NfSen shadow profiles
- [FEATURE] Improved alerting
- [FEATURE] Simplified SURFmap setup
- [FEATURE] Added an option to set the default zoom level
- [BUGFIX] Fixed a bug causing incorrect warning messages to be shown
- [BUGFIX] Fixed a bug causing a wrong legend unit to be used
- [BUGFIX] Fixed a bug causing status in the progress bar to be incorrectly wrapped
- [BUGFIX] Fixed a timing bug, caused by accessing incompletely initialized JS objects
- [BUGFIX] Improved compatibility with Internet Explorer 8 + 9
- [BUGFIX] Improved stability when handling NfSen shadow profiles
- [BUGFIX] Improved layout on Linux systems
- [BUGFIX] Numerous bug fixes and improvements

Release notes [20111024]:

WARNING: Please check the manual for installation instructions (Chapter 2.1).

- [FEATURE] It is now possible to geolocate NATed setups with static location information
- [FEATURE] Added session support, in order to maintain settings when reloading pages
- [FEATURE] Added an option to force SURFmap to use HTTPS for downloading maps from Google
- [FEATURE] Migrated SQLite connectivity to PHP PDO. SURFmap supports both SQLite2 and SQLite3
- [FEATURE] Enhanced layout, in order to have a bigger map
- [FEATURE] Enhanced browser support
- [FEATURE] Greatly improved geocoding process
- [FEATURE] Improved handling of characters with accents
- [FEATURE] Improved logging functionality
- [FEATURE] Simplified configuration
- [FEATURE] Added support for enabling/disabling auto-refresh
- [FEATURE] Marker information window show flow details now as well
- [FEATURE] Updated MaxMind plugin to v1.9
- [BUGFIX] Greatly improved overall stability in case of empty data sets, erroneous filter, etc.
- [BUGFIX] Many bug fixes and improvements

Release notes [20110929]:
- [BUGFIX] Fixed an issue in the ConfigurationChecker, which caused checking procedures to fail when the PHP module 'mysql' was not available on the system
- [BUGFIX] Fixed an issue which caused problems in the geocoding process when no offline geocoding database was enabled

Release notes [20110923]:
- [FEATURE] Information windows are now moving to the line end points after jumping there
- [BUGFIX] Improved stability when a flow count of 0 is selected or when the data set consists of zero flow records
- [BUGFIX] Fixed an issue which caused a problem when jumping to line ends
- [BUGFIX] Fixed an issue which caused a Javascript alert to appear after certain zoom actions
- [BUGFIX] Fixed an issue which caused the information windows of lines to show incorrect data at the HOST zoom level
- [BUGFIX] Fixed an issue which caused the zooming functions of the information windows not to work properly

Release notes [20110916]:
- [FEATURE] Updated jQuery to v1.6.2
- [FEATURE] Updated jQuery UI to v1.8.16
- [BUGFIX] Minor bug fixes and improvements

Release notes [20110603]:
- [FEATURE] Migrated the geocoded cache DB from MySQL to SQLite. Please run the ConfigurationChecker module to verify your settings, before running SURFmap
- [FEATURE] Migrated Google Maps API to v3
- [FEATURE] Updated jQuery UI to v1.8.13
- [BUGFIX] Minor bug fixes and improvements

Release notes [20110508]:
- [FEATURE] Made the default amount of flow records to be selected configurable ($DEFAULT_FLOW_RECORD_COUNT)
- [FEATURE] The ConfigurationChecker module is now also verifying installed PHP modules
- [FEATURE] Improved support for dynamic map sizes. If you change the 'SCREEN_WIDTH' setting, make sure to adapt the iFrame sizes in SURFmap.php as well (see Chapter 2.1.2 of the manual)
- [FEATURE] Updated jQuery UI to v1.8.12
- [BUGFIX] Fixed an issue in the ConfigurationChecker module, which caused the verification of nfcapd source file existence not to complete successfully
- [BUGFIX] Minor bug fixes and improvements

Release notes [20110402]:
- [FEATURE] Added support for the MaxMind GeoLite geolocation service. Please check the SURFmap manual for more details
- [FEATURE] Improved support for special characters in location names
- [BUGFIX] Fixed a bug which could cause incorrect or missing drawings of lines and markers
- [BUGFIX] Minor bug fixes and improvements 

Release notes [20110328]:
- [FEATURE] Added more lines to debug logging
- [BUGFIX] Fixed an issue, which could cause SURFmap to get into an infinite loop when a place could not be geocoded and GeoPlugin was used as the geolocation service

Release notes [20110322]:
- [FEATURE] Refactored the client-side application core, resulting in significantly improved performance
- [FEATURE] It is now possible to sort by columns in information windows (of markers and lines)
- [FEATURE] Updated jQuery to v1.5.1
- [FEATURE] Updated jQuery UI to v1.8.11
- [BUGFIX] Fixed a bug in which the legend did not automatically adapt to the default SURFmap zoom level
- [BUGFIX] Fixed an issue in the ConfigurationChecker module, which caused an error when multiple source files had incorrect permissions set
- [BUGFIX] Fixed an issue, which caused the settings panels (to the right of the Google Maps map) not to open and close correctly
- [BUGFIX] Fixed an incorrect multicast IP address pre-filter, related to the SHOW_MULTICAST_TRAFFIC setting

Release notes [20110314]:
- [FEATURE] If the APP_MODE parameter is set to -1 and no 'mode' HTTP GET parameter is provided, APP_MODE is set to 1 automatically
- [BUGFIX] Fixed several PHP warning messages when using PHP 5.3.x
- [BUGFIX] Fixed an issue which caused the zoom level table not to show the current zoom level anymore
- [BUGFIX] Fixed an issue which made it impossible to switch from NfSen's 'List Flows' option to NfSen's 'StatTopN' option
- [BUGFIX] Made several stability improvements for the ConfigurationChecker module
- [BUGFIX] Minor bug fixes and improvements

Release notes [20110306]:
- [FEATURE] Added an option to change the default Google Maps map's center position
- [FEATURE] Added an option to change the initial SURFmap zoom level
- [FEATURE] Added the green marker to the distribution (instead of relying on an external source)
- [FEATURE] Added more checks to the ConfigurationChecker module
- [FEATURE] Instead of writing to a special log file (SURFmap.log), log entries are now written to the Apache log file
- [FEATURE] Updated jQuery UI to v1.8.10
- [FEATURE] Improved layout of NetFlow details table
- [FEATURE] Improved AJAX handling
- [BUGFIX] Fixed a problem with SURFmap's advanced mode when using MySQL as the NetFlow data information source
- [BUGFIX] Removed the 'REFRESH_INTERVAL' setting until a better solution has been found
- [BUGFIX] Minor bug fixes and improvements

Release notes [20110204]:
- [FEATURE] Added support for the definition of multiple internal domains
- [FEATURE] Added support for multiple NetFlow collectors
- [FEATURE] Updated IP2Location library to v4.11
- [BUGFIX] Fixed two issues which caused Apache Web server to log an error about an unused variable
- [BUGFIX] Fixed a small cosmetic issue in the ConfigurationChecker module

Release notes [20110113]:
- [FEATURE] Updated nfsenutil.php to v1.3.5
- [FEATURE] Updated jQuery to v1.4.4
- [FEATURE] Updated jQuery UI to v1.8.7
- [BUGFIX] Fixed a bug which replicated the static private address filter

Release notes [20101127]:
- [FEATURE] More steps involved in progress bar indication
- [FEATURE] Improved logic of some ConfigurationChecker modules
- [FEATURE] Improved versioning support
- [FEATURE] Enhanced debug logging
- [FEATURE] Added support for IP2Location databases without latitude/longitude data
- [BUGFIX] The private IP address domain (192.168/16) is now added as a static filter for nfdump queries, since they will never be resolvable
- [BUGFIX] Various minor bug fixes

Release notes [20101121]:
- [FEATURE] nfcapd file storage structure definition in SURFmap is more flexible now
- [FEATURE] Updated jQuery UI to v1.8.6
- [FEATURE] Added an additional check to the ConfigurationChecker module
- [FEATURE] NfSen profiles and source selectors are configurable on SURFmap's configuration file now
- [BUGFIX] Removed a hardcoded reference to a machine of the University of Twente
- [BUGFIX] Corrected a faulty dummy nfdump filter
- [BUGFIX] Fixed an issue in which failed geocodings caused incorrect logging in SURFmap's log file
- [BUGFIX] Various minor bug fixes