BalanceNG Changelog

New in version 3.584

February 4th, 2015
  • An issue with session table lookups concerning multiple referenced targets in non-DSR setups has been resolved.

New in version 3.504 (January 23rd, 2014)

  • The gnatEntries SNMP object allows access to the total number of GNAT (generic NAT) table entries.
  • The "gnatdlimit" paramter maximum has been set to 100000.
  • The license revocation list has been updated.
  • The manual has been updated accordingly.

New in version 3.502 (December 21st, 2013)

  • IPv4 path MTU discovery (PMTUD) support has been implemented for non-DSR setups.
  • An extra syslog message is generated when a target is placed into softdisabled mode.

New in version 3.498 (November 18th, 2013)

  • ICMPv6 "Packet Too Big" Messages are now also properly forwarded to target servers not in DSR (Direct Server Return) mode.

New in version 3.497 (October 14th, 2013)

  • The process synchronization has been optimized also for single- and dual-core machines.

New in version 3.496 (October 10th, 2013)

  • The IPv4 and IPv6 location databases have been updated.
  • The maximum number of in-memory location database entries has been increased.

New in version 2.316 / 3.493 (October 3rd, 2013)

  • The license revocation list has been updated.

New in version 3.493 (September 6th, 2013)

  • The SIP Call-ID long and short forms now generate the same session identifier.

New in version 3.491 (September 4th, 2013)

  • The SIP Call-ID short form "i:" is now accepted by the SIP sessionid handler.

New in version 3.490 (August 26th, 2013)

  • ICMPv6 "packet too big" messages are now forwarded to all target servers.

New in version 3.485 (August 16th, 2013)

  • An issue with command parsing has been resolved.

New in version 3.484 (August 10th, 2013)

  • A major issue with the "tcpopen" health-check in multithreading mode has been resolved.

New in version 3.483 (August 9th, 2013)

  • The thread synchronization debugging library has been disabled to optimize for speed.

New in version 3.482 (August 9th, 2013)

  • Two new SNMP Objects have been implemented (sessionsCreated and serverSessionsCreated), the instance specific MIBs have been extended accordingly .
  • The "snapshot" command now generates a snapshot without a full session table dump.
  • A new "snapshot-full" command has been implemented, the command "snapshot-light" is now a synonym for "snapshot".
  • The commands "dump" and "no dump" are no no longer available in multithreading mode ("set multithreading 1").
  • The "show uptime" command now additionally displays the uptime in hours, minutes and seconds.
  • A new parameter "pthreadstacksize" has been introduced.
  • Several issues with the multithreading scheduler have been resolved, upgrade is recommended for all setups being operated in multithreading mode.
  • The license revocation list has been updated.
  • The manual has been updated accordingly.

New in version 3.452 (June 22nd, 2013)

  • The output of "show threads" is now included in the snapshot information. A new command "show maxbucket" has been implemented. The display of the length of the largest bucket list has been moved from the command "show stinfo" to the new "show maxbucket" command. Some unnecessary warning messages in the mutithreading scheduler are now supressed. The license revocation list has been updated. The manual has been updated accordingly.

New in version 3.450 (May 21st, 2013)

  • A new multithreading scheduler has been implemented (activated by "set multithreading 1"). The new directive "interface N threads" controls the number of threads per interface (if the multithreading scheduler is active). A new informational command "show threads" shows thread information (if multithreading is activated). A minor bug has been fixed, server "-1" is no longer reported when there's no 1:1 server/target relationship. A new module "crossover" allows the implementation of a virtual crossover cable (Linux only). The manual has been updated accordingly.

New in version 3.432 (March 8th, 2013)

  • An issue with "ICMP Fragmentation Needed" packet forwarding has been fixed. "bng stop" now uses SIGTERM, SIGHUP and SIGKILL in that order. A new command "inject" allows packet injections from a PCAP file for debugging and QA purposes.

New in version 3.430 (February 20th, 2013)

  • Outdated session table entries are now reclaimed very fast on an idle BalanceNG system. The rate per second is controlled by the new parameter "sessiongclimit".

New in version 3.427 (January 31st, 2013)

  • "ICMP Fragmentation Needed" packets are now forwarded to all associated targets of a virtual server (DSR mode only).

New in version 3.420 (November 27th, 2012)

  • A fourth CLI command frontend has been added (bng imsctl). The command "rms" has been implemented allowing the removal of one specific session table entry performing one single session table lookup. The command "rmt" has been implemented allowing the removal of all session table entries belonging to a specific target. The manual has been updated accordingly.

New in version 3.419 (November 12th, 2012)

  • IPv6 Neighbor Solicitation messages are now properly sent to the solicited-node multicast address according to RFC-4861 and RFC-4291. Before, they had been sent wrongly to the unicast IPv6 address, which made some devices not to respond to those messages. Updating is recommended if BNG is deployed in IPv6 environments.

New in version 3.418 (November 10th, 2012)

  • An automatic session table resync has been implemented. If the parameters "sessionautoresync" and "sessionsyncack" are both set to 1 (active), then the current VRRP master resyncs the session table automatically to a freshly started or restarted VRRP backup node. The manual has been updated accordingly.

New in version 3.417 (October 31st, 2012)

  • An automatic session table resync has been implemented. If the parameters "sessionautoresync" and "sessionsyncack" are both set to 1 (active), then the current VRRP master resyncs the session table automatically to a freshly started or restarted VRRP backup node. The manual has been updated accordingly.

New in version 3.413 (October 18th, 2012)

  • A major issue with the "reload" functionality has been solved (all target session counters have been reset to 0 on reload). Upgrade is recommended if the "reload" functionality is used.

New in version 3.412 (September 24th, 2012)

  • Some log messages are now only shown with "set debugscope 8". The directive "target pseudo" has been implemented. The manual has been updated accordingly.

New in version 3.410 (August 29th, 2012)

  • An issue with server specific session timeout handling has been resolved.

New in version 3.399 (July 21st, 2012)

  • An issue with session table synchronization during target reassignment has been resolved. Minor textual issues have been resolved.

New in version 3.395 (May 31st, 2012)

  • BalanceNG now sets RLIMIT_STACK to 1024K on Linux systems, thus limiting the consumed stack size per thread. The reload command now clears the ARP/ND6 cache only for changed target IPv4 and IPv6 addresses.

New in version 3.392 (May 8th, 2012)

  • "bng stop" now uses the SIGTERM signal instead of SIGHUP in order to improve CFEngine integration. The session table garbage collection is now faster on busy systems and "show sessions" does no longer display outdated entries. A new "-e" command line option makes all interactive frontends (bng control/auxctl/cmdctl) to terminate with EX_TEMPFAIL if an invocation is already running for the same BNG instance. A "bng reload" now completes without moving the targets to "down" state for a short period of time. The manual has been updated accordingly.

New in version 3.388 (April 28th, 2012)

  • A major issue with gratuitous ARP and IPv6 NAs in conjunction with multiple connected VLANs has been resolved. The manual has been updated.

New in version 3.375 (April 12th, 2012)

  • A minor bug with the "reload" functionality has been resolved. The manual has been updated.

New in version 3.374 (March 21st, 2012)

  • The parameter "sessionsyncetype" has been added allowing to change the Ethertype of session synchronization packets to a specific, non-standard value. The manual has been updated accordingly.

New in version 3.373 (February 11th, 2012)

  • The boolean parameter "stickytarget" has been added controlling the update of the forwarding table for known targets. The manual has been updated accordingly.

New in version 3.371 (January 26th, 2012)

  • A minor bug with warning messages issued by the "check" command has been resolved. An additional warning message is reported to the log if all targets of a server become inoperational. The manual has been updated accordingly.

New in version 3.370 (January 10th, 2012)

  • A major bug with the internal parameter table has been fixed, upgrade is strongly recommended.

New in version 3.368 (December 29th, 2011)

  • Session table entry synchronization has been added introducing the new parameters sessionsyncack, syncackbdelay, syncackmaxps, syncackresend and syncackwsize. The commands "resync", "show nous" have been implemented also in the context of session table synchronization. The output of the commands "show stinfo" and "show sessions" has been extended accordingly. The session table testing command "stfill" has been implemented. Minor bugs with the "reload" command and functionality have been resolved. The manual has been updated accordingly.

New in version 3.314 (December 12th, 2011)

  • A RPM package for Red Hat RHEL6 and CentOS 6 (64Bit) is now additionally available. A new "sessionload" command now allows to import session table contents that have been exported with "sessiondump" before. The "reload" command may now also be started with "bng reload" directly from the shell. Several bugs with the "reload" command and functionality have been resolved. The manual has been updated accordingly.

New in version 3.302 (October 9th, 2011)

  • A "reload" command has been implemented allowing to reload the complete server/target-relationships while valid session table entries are maintained. The manual has been updated accordingly.

New in version 3.298 (October 7th, 2011)

  • The default value of the parameter "psvrelearn" is now 0 (disabled).

New in version 3.290 (September 29th, 2011)

  • The default value of the parameter "psvrelearn" is now 0 (disabled).
  • The manual has been updated accordingly.

New in version 3.284 (August 29th, 2011)

  • The igb0 interface is now accepted as primary interface on Solaris.

New in version 3.273 (July 26th, 2011)

  • A message queue has been implemented for the "bngfilt" STREAMS module coming with BalanceNG for Solaris. Upgrade is strongly recommended for SPARC systems with poor single thread performance (like UltraSPARC T1 and T2).

New in version 3.270 (July 25th, 2011)

  • A "interface N access" directive has been introduced allowing to specify "raw" (default) and "tap" (Ethertap) access. A "tap" interface name may now be chosen freely as necessary or desired. The "tap" interface access method is not available on Solaris platforms. The "bngfilt" STREAMS module as installed on Solaris platforms does now also support GLDv3 M_MULTIDATA messages. The manual has been updated accordingly.

New in version 3.260 (July 7th, 2011)

  • Ethertap ("TAP") virtual network kernel devices are now supported on Linux operating systems through the new special interface names "bng0" up to "bng9". The new directive "interface N init" allows to initialize BalanceNG interfaces on startup executing arbitrary operating system commands. The manual has been extended and updated accordingly.

New in version 3.242 (March 15th, 2011)

  • The "tnat" module now only processes packets that are designated to the own instance. The manual has been updated accordingly.

New in version 3.226 (March 10th, 2011)

  • The BalanceNG agent (bngagent 3.10) now exits with a warning message if it's not capable to create a server socket.
  • The output of "show nat" has been improved.
  • The manual has been updated accordingly.

New in version 3.224 (February 25th, 2011)

  • The ARP address resolution for TNAT entries is now correctly provided in all cases (module "classic").

New in version 3.220 (February 25th, 2011)

  • The TNAT functionality implemented with module "classic" is now working again with the default parameter settings.

New in version 2.316 (February 24th, 2011)

  • A bug in the "slb" module has been solved: The SNAT proxy mode (activated by "server N proxy enable") is now working correctly when accessed externally through a routing device.

New in version 3.216 (February 11th, 2011)

  • The IPv4 location database has been updated to the latest release (ip-to-country.csv). The IPv6 location database has been updated to the latest release (IpToCountry.6R.csv). IPv4 ICMP TTL exceeded packets are now silently discarded (modules "classic" and "arp"). An additional "interface" column has been added to the output of "show networks".

New in version 3.215 (February 8th, 2011)

  • The SNMP MIBs have been revised and are now passing smilint without any problems (severity level < 4).

New in version 3.212 (January 27th, 2011)

  • The sessionid handlers "src+dstport" and "dst+srcport" have been added. The manual has been updated accordingly.

New in version 3.211 (January 24th, 2011)

  • BalanceNG V3 Debian/Ubuntu packages and Linux "Tarball" distributions are now also available for amd64 (x86-64) architectures.

New in version 3.210 (January 20th, 2011)

  • The output of "show networks", "show servers" and "show targets" has been beautified and extended to show IPv6 settings (if present).
  • The manual has been revised and updated accordingly.

New in version 3.208 (January 11th, 2011)

  • A minor bug has been fixed (A "disable interface" of an interface with no link detected caused bng to consume unnecessary CPU cycles). The manual has been updated accordingly.

New in version 3.205 (December 19th, 2010)

  • The parameters "hashbytes4" and "hashbytes6" have been introduced, allowing to specify the number of bytes considered by the "hash" distribution method (IPv4 and IPv6). The manual has been updated accordingly.

New in version 3.204 (December 13th, 2010)

  • The MAC address format used to represent non VRRP IPv6 addresses has been changed. If the parameter "bngfilter" is active on Solaris systems (being the default), multiple instances may now share the same physical interface even for IPv6 traffic. The manual has been updated accordingly.

New in version 3.202 (December 7th, 2010)

  • The new directive "target N autodisablecount" now allows to take a target down after a specific number of failures (if "target N autodisable" is active as well).
  • The manual has been updated accordingly.

New in version 3.200 (November 28th, 2010)

  • BalanceNG V3 has now been declared stable (production) with a few minor cosmetic changes. The manual has been updated accordingly.

New in version 3.191 (November 25th, 2010)

  • The new command "show startuplog" now displays the first startup log messages.
  • The output of "show startuplog" is also included in the service snapshot.
  • The new command "log message" allows to send an arbitrary message to the BalanceNG log.
  • The manual has been updated accordingly.

New in version 3.190 (November 17th, 2010)

  • Proxy mode or SNAT (Source-NAT) has been implemented in the SLB module for IPv4 and IPv6, introducing the new configuration command "server N proxy enable". Proxy SNAT state replication from the VRRP master to the VRRP backup has been implemented. The manual has been updated accordingly.

New in version 3.186 (November 15th, 2010)

  • The node specific network IPv6 address is now maintained if found in the bng.private configuration file. The "save private" command has been updated as well.

New in version 3.185 (November 11th, 2010)

  • The ipallow and ipdeny commands and modules have been implemented to allow simple filtering of IPv4 and IPv6 packets based on the source address. The manual has been updated accordingly.

New in version 3.184 (October 24th, 2010)

  • An IPv6 MAC address conflict between different instances on the same node has been fixed. Upgrade is recommended if multiple instances are used in conjunction with IPv6.

New in version 3.183 (October 20th, 2010)

  • The "target N script6" directive has been implemented allowing to invoke an additional IPv6-related external health check script. The manual has been updated accordingly.

New in version 3.182 (October 14th, 2010)

  • The variable $ipaddr6$ has been made available to the target script functionalities (script, alert and upalert). The manual has been updated accordingly.

New in version 3.180 (October 11th, 2010)

  • A Solaris problem with code optimization has been solved (by using a lower optimization level). The "ldns" Library has been upgraded to release 1.6.6.

New in version 3.177 (October 4th, 2010)

  • The internal packet buffers have been extended, jumbo frames with a MTU of 9000 bytes are now fully supported.

New in version 3.175 (September 30th, 2010)

  • A serious bug in the checksum calculation function for UDP/IPv6 has been fixed. Upgrading is strongly recommended if IPv6 functionality is used.

New in version 3.174 (September 29th, 2010)

  • The OEM licensing now additionally recongnizes the upcoming new Thomas-Krenn Load-Balancer hardware.

New in version 3.172 (September 24th, 2010)

  • IPv6 location support has been implemented. A recent version of the IPv6 range .csv file (IpToCounty.6R.csv) is now part of the BalanceNG V3 distribution. The command ipdb6 has been implemented to load the IPv6 in memory location database from a 5-column .csv file (as in IpToCounty.6R.csv). The "locate" command has been extended to accept IPv6 addresses. The location group mechanisms have been extended to support IPv6 load balancing decisions based on the location of the IPv6 client IP address. The manual has been updated accordingly.

New in version 3.168 (September 22nd, 2010)

  • The IPv6 mask6 directive is no longer restricted to be on byte boundary. The link detection mechanisms for Solaris on SPARC have been improved for e1000g and nxge interfaces. The manual has been updated accordingly.

New in version 3.158 (September 14th, 2010)

  • The "interface N upalert" and "interface N alert" directives have been extended to replace a special $name$ variable by the interface name. The manual has been updated accordingly.

New in version 3.157 (September 9th, 2010)

  • The "llb" (Link Load-Balancing) module has been implemented allowing load balancing of IPv4 and IPv6 traffic over multiple links (e.g. DSL-Lines). NAT is also automagically provided for both IPv4 and IPv6. The ping,ping6,tcpopen,tcpopen6,agent and agent6 internal health checks now allow an additional, prepended parameter being the IP address (4 and 6) of an alternate target. This has been implemented specifically for the "llb" link load-balancing module. The manual has been updated accordingly.

New in version 3.148 (September 1st, 2010)

  • A native IPv6 TCP-open healthcheck has been implemented ("target N tcpopen6"). The manual has been updated accordingly.

New in version 3.145 (August 30th, 2010)

  • The "interface N upalert" and "interface N alert" script directives have been added allowing to call external scripts in case of interface link availability and loss, repectively. Solaris vmxnet3s0 interfaces are now recognized. The manual has been updated accordingly.

New in version 3.140 (August 26th, 2010)

  • Several IPv6/VRRP related bugs in the "slb" module have been resolved. The manual has been updated accordingly.

New in version 3.136 (August 26th, 2010)

  • The "slb" module has been extended to support IPv6 SLB in multiple legged, non DSR mode. The "rt" module has been added to allow IPv4 and IPv6 routing if present at the end of the module chain.

New in version 3.135 (August 23rd, 2010)

  • The session-id handlers "src+ports" and "dst+ports" have been added allowing session-ids to be based on both the source and destination port (valid for both IPv4 and IPv6). The manual has been updated accordingly.

New in version 3.134 (August 19th, 2010)

  • The BalanceNG agent ("bngagent") has been rewritten, fixing several IPv6 related bugs.
  • The directive "target N agent6" has been implemented, supporting agent communication over UDP/IPv6.
  • The manual has been updated accordingly.

New in version 3.038 (September 8th, 2009)

  • A major bug in the "slb" module has been fixed (missing packet forwarding on the backward path in non-DSR setups). Upgrading is recommended.

New in version 2.244 (May 11th, 2009)

  • The directive "server N stimeout null" has been added. If activated, this directive inhibits session generation and thus allows true round robin load balancing of UDP based protocols (like SIP).

New in version 2.240 (April 27th, 2009)

  • The Debian/Ubuntu package name has been changed to lowercase (conforming to apt-repository conventions).

New in version 2.238 (April 16th, 2009)

  • A bug in server specific session timeout management has been fixed (upgrade is recommended if "server N stimeout" is in use).
  • "show target N" now displays correct information with "target N ascript" active.
  • Licensing and node-id generation now works on Solaris machines with nxge0 interfaces.

New in version 2.231 (March 21st, 2009)

  • The parameter "strictrouting" now defaults to 1 (active).
  • A bug in target NAT (tnat) processing has been fixed where packets have been duplicated erroneously in some cases (this also applied to the 1.x branch, resulting in 1.941).
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.230 (March 17th, 2009)

  • A bug in "tcpopen" health-check processing has been resolved.
  • Upgrading is strongly recommended for non-VRRP and trial setups.
  • The Ubuntu JeOS VMware virtual appliance has been updated and now includes a properly configured SNMPD environment.
  • The same bugfix has been applied to the BalanceNG 1.x branch resulting in 1.940.

New in version 2.228 (March 4th, 2009)

  • A bug in health-check script processing on Linux has been resolved.
  • Upgrading is recommended for Linux operating systems.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.226 (March 1st, 2009)

  • The SNMP interface command line options "bng -g" and "bng -n" may now also be invoked as a non-root user.
  • The commands "show conf remark" and "show conf hostname" have been added to facilitate GUI and Web-UI interfacing.
  • The manual has been updated accordingly.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.218 (February 19th, 2009)

  • The "network N synciface" configuration directive has been added, allowing the direction of session and NAT synchronization traffic over a dedicated interface (using a crossover cable, for example).
  • The manual has been updated accordingly.

New in version 2.214 (February 6th, 2009)

  • An additional IP address conflict check has been implemented.
  • The ARP table now refuses to update locally represented entries in such conflict cases.

New in version 2.213 (February 1st, 2009)

  • This is a license maintenance release.
  • Updated full functionality VRRP/HA testing license serial numbers for February 2009 are available.

New in version 2.212 (January 19th, 2009)

  • The LDNS library has been upgraded to release 1.4.1.
  • The integrated IP to country database (ip-to-country.csv) has been upgraded to the latest release.
  • An RPM package for SUSE Linux Enterprise Server SLES10 SP2 and above is now available for the first time.

New in version 2.210 (January 1st, 2009)

  • A new boolean parameter, "strictrouting", has been added. If this parameter is set to 1, only packets directed directly to the Layer 2 VRRP address of the instance are accepted for NAT and IP forwarding (routing).

New in version 2.199 (November 2nd, 2008)

  • The license revocation list has been updated.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.198 (October 24th, 2008)

  • The initial value of the "bngfilter" parameter is now set to 1 (as expected). This fix has also been applied to the 1.x branch, resulting in release 1.936.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.196 (October 18th, 2008)

  • A general problem with NAT and multiple instances on the same machine has been fixed; upgrading is recommended if multiple instances are being used in conjunction with NAT.
  • A problem with packet processing and multiple instances on Solaris based machines has been fixed and a new controlling parameter has been added (bngfilter).
  • Upgrading is recommended if multiple instances are being used on Solaris.
  • Both fixes have also been applied to the 1.x branch, resulting in release 1.934.
  • The manuals have been updated accordingly.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.190 (October 9th, 2008)

  • An important bug in target ARP processing has been fixed; upgrading is recommended.
  • The fix has also been applied to the 1.x branch, resulting in release 1.932.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.185 (September 23rd, 2008)

  • A bug in the MAC address change logging has been resolved.
  • An issue with the OEM hardware licensing has been resolved.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.183 (September 15th, 2008)

  • MAC address changes in the BalanceNG internal ARP table are now reported in the log.
  • The ip-to-country.csv IP-to-location database file has been updated in the packages (Source: webhosting.info, September 01 2008).
  • The OEM licensing has been extended to include the upcoming SECUDOS appliances.
  • The manual has been updated to release 2.183.0.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.

New in version 2.181 (September 3rd, 2008)

  • A small bug with GSLB servers has been fixed (an unnecessary entry in the internal ARP table has been removed in that case).
  • The manual has been updated to release 2.181.0.
  • The Ubuntu JeOS VMware virtual appliance has been updated accordingly.