Geo Router / Geo Proxy


    • Version: 1.32
    • Supported OSes:
      Windows 7, 8, 8.1, 10,
      Server 2008 R2, Server 2012,
      Server 2012 R2, Server 2016

    • NOTE: The Basic (free) edition has to be activated with a free serial number. See the product edition chart for details.

  • Geo Router main screenshot

Features 30-day Trial Basic (Free)
Pro
Max number of routing targets 3 3 unlimited
Maximum number of user-defined networks 3 3 100
Real-time statistics yes yes yes
Real-time activity log yes yes yes
Background without a watermark no no yes
License to use for more than 30 days no yes yes
Price (in USD) - Free $19.95
Purchase

Technical Specifications

Latest release 1.32 , 14 Jun 2017 , [Change Log]
Supported networking Ethernet, IPv4, IPv6, TCP, UDP.
Traffic routing engine Kernel-mode network driver.
Prerequisites .NET 4.0, up-to-date root certificates (or it will take 2 minutes to start).
Supported OSes Windows 7*, 8, 8.1, 10, Server 2008 R2*, Server 2012, Server 2012 R2, Server 2016.

*For Windows 2008 R2 and 7, required Service Pack 1 + KB3033929 (SHA-2 digital signing).
Recommended hardware CPU 1GHz and above, modern graphics card.
Additional hardware required none

Overview

Geo Router acts as a reverse proxy. It splits incoming traffic by country of origin, then routes the traffic to content servers that reside anywhere on the Internet or on the local network. At its core, Geo Router uses a device driver based traffic routing engine which performs routing with the minimum latency.

In routing, Geo Router hides IP addresses of communicating parties. Then it uses its own IP address for communication. Hence, to communicating parties, everything looks like they communicate directly with only the Geo Router system.

Standard routers and proxies require for work at least 2 network cards. Geo Router does the job even with a single network card having a single IP address. Geo Router automatically detects the hardware configuration and automatically configures itself to route traffic to specified routing targets. Geo Router can also be a part of the routing chain where at each level more specific routing rules are applied.

Here are the most commonly used for Geo Router scenarios.

Geo Router with 2 network interfaces.

Geo Router 2 network card configuration

Geo Router with a single network interface.

Geo Router 1 network card configuration

Here, Geo Router acts as a proxy server that receives connection requests from all over the world. Internet users that connect to Geo Router are not exposed to the details of routing and IP address translation which happens behind the scenes. To them, Geo Router appears as a regular server. When Geo Router forwards their traffic to specified routing targets (servers that provide the actual content), it performs IP address translation. This translation makes the traffic processed by Geo Router look like it originated on Geo Router. Geo Router places its own IP address on each packet. This helps in strengthening security on content servers.

Geo Router

Geo Router adds its icon to the system tray. When its main window is closed it lives on the system tray. To fully stop Geo Router, use the context menu of the system tray icon.


Geo Router system tray icon

Assigning a Routing Target

Geo Router displays assigned routing targets next to the countries. All traffic arriving from those countries is forwarded to associated routing targets. The countries that don't have routing targets, don't have their traffic forwarded.

A routing target can be specified in the Routing Target box. It then has to be assigned to one or more geographical territories by selecting those territories individually or collectively within the region. The following click on Assign Target button would assign the routing target to selected territories.


Geo Router Rules Filtering

A routing target can have IPv4 or IPv6 address or both. An empty field would clear the routing target. The appropriate IPv4/IPv6 routing target will automatically be chosen during the traffic processing.

Reserved IPv4/IPv6 Networks

In addition to geographical territories, Geo Router also understands and works with reserved networks. These are the networks used by computers to communicate with other computers and routers on local networks. Reserved networks can be found under [Reserved Networks IPv4] and [Reserved Networks IPv6].


IP Geo Lookup

Reserved networks are pre-defined, and although they can be routed, their definitions cannot be edited. It is recommended not to route them to avoid unusual networking situations.

Adding User-Defined Networks

In addition to pre-defined geographical territories and reserved IPv4/IPv6 networks, Geo Router allows to add user-defined networks. User-defined networks show up under [User-Defined Networks] region. User-defined networks are a part of rules (not a part of the program settings). They are saved an loaded together with the rules.


Geo Router User-Defined Networks

To edit user-defined networks, click apply button on the toolbar. Since IPv4 and IPv6 networks have different formats of IP addresses, they are kept separately during editing.


Geo Router Edit User-Defined networks

When editing user-defined networks, the networks can overlap with other user-defined networks or with pre-defined geographical territories. In such cases, there is an order of precedence for determining which rules are actually in effect for a specific IP address. The more specific networks (those that have greater network mask) always take precedence over less specific networks.
For example, the network 192.168.1.1/32 is more specific than 192.168.0.0/16, hence the rules for 192.168.1.1/32 will take precedence during communication with 192.168.1.1.

IP Geo Lookup is a great way to determine which network rules take precedence.


IP Geo Lookup

Statistics

Statistics makes it easy to understand where the traffic is going to or coming from. Statistical data is accumulated since the start of the program. The settings for statistics can be adjusted to include or exclude non-country records. There can also be set an interval for detection of inactive items and their removal from display. The collection and visualization of statistical data has certain impact on CPU performance. Although on laptops it does not make a big difference, on servers that operate at high CPU usage and require high throughput of network data disabling statistics may improve performance.


Geo Router Statistics

Log

Logging helps to see the historical performance of rules. The refresh rate can be adjusted via settings. Just like with statistical data, logging has an impact on CPU performance. So, disabling it may reduce CPU usage and improve performance.


Geo Router Log

Settings

Geo Router settings can be changed via Settings dialog.

Geo Router Settings

Command Line Parameters

Geo Router can also be started from a command line.

   GeoRouter.exe [file_name] [/systray]

  • "file_name" - the name of the file to load.
  • "/systray" - the flag that hides the main window after placing an icon to the system tray.

One more thing to keep in mind is that this program contains network definitions for countries as of specific date (please see Help->About dialog). Periodically, new networks are allocated, the old ones are deallocated, and some networks may change their geographical affinity. Please check back periodically to update the program with new country and network definitions.


Notes:
* Windows® is a registered trademark of the Microsoft Corporation.