skyPipes Advanced Router is a GNU/Linux/Apache/SSL/PHP/PostgreSQL web app that manages a combination of NAT, Static Alternative Routes, and Dead Gateway Detection rules to balance LAN/DMZ traffic across multiple ISP connections with redundant failover.
Be the first to post a text review of skyPipes Advanced Router. Rate and review a project by clicking thumbs up or thumbs down in the right column.
Bug fixes and feature additions: - hostManager.html was adapted to support the transition of an interface from one ISP (more specifically one IP space) to another, mapping host NAT settings from an abandonned space to a new space. - Also in hostManager.html, the ability to disable translation on a per-host-per-interface basis (as opposed to only per-host) was introduced to support splitting the use of corresponding IPs from different spaces on different hosts. - The behavior of the configuration was altered (in arrcGenerator.html) to better enforce the interface settings "UP" and "DOWN" as seen in interfaceManger.html. - arrcGenerator.html was also tweaked to remove rules and routes for abandonned IP spaces (IP spaces that are no longer associated with any interface). - The commonInc.html function fDatabaseConnect() had a flaw in how it formulated the database name from the site name that did not take into account country code top level domains and their very common use of sub-subdomains. This has been corrected. Documentation changes: - Updated installation.html to reflect compatibility with Fedora Core distributions. Also deployed changes from last and latest revision to the copy of the manual on skyPipes.com.
Bug Fixes: - status.html was still counting hosts that do not match the DMZ IP space, resulting in a false status being reported. It is now restricted to an accurate count. - A prior fix made to status.html resulted in two typo errors. Line 216 needed one more opening parenthesis to match the new INNER JOIN line. Line 217 needed the last column reference which read "hostS.id" to be corrected to "typeS.id". - Different versions of nmap provide varying default output, which led to a breakdown of the host detection grep. Fortunately, nmap provides a reliable output style using the -oG option for greppable output. Each line starts with "Hosts:". It is splittable on tabs, then on spaces, then the second entry in the resulting array is the IP address of the host. This option was applied to the nmap command used in networkAnalysis.html to fix the bug. - In status.html, if the configuration had never been applied, Configuration Last Applied initially showed a false date in 1969 (the beginning of the Unix Epoch). Now, a null setting is detected and it initially reports, more properly, "Never". - hostManager.html was breaking in the case where no hosts were detected. The php function <code>count()</code> was returning a 1 for a variable that had never been made into an array. The fix was to first check whether the variable was an array and default to zero if not. This fix was made in four places in the file. - When the user's session expired or was superceded by another login, the interface returned to the login prompt without explanation. Now an explanation is given at the login prompt, after changes to commonInc.html and login.html. - If the <code>nmap</code> command is not installed, it causes host detection to fail. At this point the Status page reports zero hosts, but gave no explanation. A change to status.html detects this mode and warns the user that if hosts are attached to the DMZ to check that nmap is installed. Documentation Changes: - In installation.html, a section describing the required and suggested packages to be chosen during the Red Hat 9 install process was added (especially nmap).
Bug Fixes: - If an interface has not been configured when networkAnalysis.html performs its detection, a null netmaskbits value may be written into the database, causing out of range values for the network address. To fix this, netmaskbits is defaulted to 24 (the full class C range), so that the out of range value will never appear. The user is expected to enter correct information into the Interface Manager upon comfirmation of each interface. Fixes in interfaceManager.html, arrcGenerator.html, configurationCheck.html, and networkAnalysis.html. - gatewaysWake.sh could not run under the bash shell due to DOS-style carriage returns (\r\n, CR/LF) instead of UNIX-style (\n, LF only). A temporary fix was to run the dos2unix utility on gatewaysWake.sh to correct the problem. A more permanent fix was made in arrcGenerator.html, where the real bug was discovered. Just before writing the source of gatewaysWake.sh to the file, a replacement is now made that removes every \r ( ) Carriage Return character from it. - Hosts that do not match the current internal IP space were being counted, displayed, and NATed. This interfered with proper status, host management and configuration generation. Fixes made in arrcGenerator.html, configurationCheck.html, hostManager.html, and interfaceManager.html - The configuration check had a typo. An if expression used an = instead of an ==, which overwrote sNonroutableActive, the variable that reports whether the internal interface is active. As a result, the check was reporting a false positive, resulting in the generation of a nonoperative configuration. The typo was fixed. More descriptive check results were put in place to clarify for the user which requirement was not met. Fixes in configurationCheck.html and index.html
Bug Fix: networkAnalysis.html was using an nmap command that performed reverse lookup, while the output pattern match was not expecting domain names in the output. Added -n option to supress reverse lookup during the nmap ping sweep, speeding the sweep and producing output of the type the pattern match expects. Documentation changes: - distributionGenerator.html was misnamed in the example of the command to run itself in the description header - Sections 1 and 9 of installation.html, the Installation Manual, have been added to for clarity.
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?