From NeoRouterWiki

Revision as of 01:39, 6 March 2010 by KevinZ (Talk | contribs)
Jump to: navigation, search




How does it work?

NeoRouter solution includes two components: Server and Client. You may want to install a server and multiple clients, so that these clients can connect each other though a secure communication channel.


What operating systems does Neorouter support?

NeoRouter is currently available for Window, Mac, Linux and such firmware as OpenWrt, Tomato and FON.

  • Windows (x86/x64)
    • Windows 2000, Windows XP, Windows 2003, Vista, Windows 2008, Windows 2008 R2, Windows 7
  • Mac OS X (x86/PPC)
    • Fully tested on both Leopard and Snow Leopard
  • Linux (x86)
    • Red hat Linux, Fedora, SUSE Linux and Ubuntu Linux
  • Firmware
    • OpenWrt Kamikaze, Tomato 1.23, Tomato 1.23 ND, Fonera 2.0

Can I run NeoRouter on a 64-bit OS?

Yes. NeoRouter for Windows supports 64-bit Windows, such as WinXP x64, Win2003 X64, Vista X64, Windows 2008 X64, Windows 2008 R2 X64 and Windows 7 X64. NeoRouter for Linux is still a 32-bit application, but you can run it on a 64-bit Linux using "chroot" method.

Should I open an port to the Internet?

For server ONLY. When you install the NeoRouter server, you need to make sure a listening port (default 32976/tcp) can be access from the Internet. NeoRouter clients do not require any port opened to the Internet.

If you are running the NeoRouter Server in-a-box and put the router on the Internet, you don't need to do anything.

If you are running a NeoRouter server on a computer or device behind a NAT, you may want to change the router configuration to either enable the UPnP or set the port forwarding.

You can use the link to verify your open port.

What security protocols/encryption is used by Neorouter?

NeoRouter uses the SSLv3 (AES-256) to provide a secure communication channel between NeoRouter Server and each Client while using a variation algorithm (RSA 2048bit + DH + AES-256) between clients (peer-to-peer).

I want to list NeoRouter on our site, where can I get the pad file?

Please get the pad file from If you need more information, feel free to contact us at

How to generate a log file?

For debug purpose, NeoRouter can generate a log file to trace the calls and retrieve detailed information. To enabled the log file, you may want to create a file Log.ini under the main config folder or the same folder of the application manually and copy&paste the following lines to it and save.


You can also specify the path where the log file can be generated. For example:


Then restart your computer or the application/service. It will generate a log file in the same folder as the log.ini file. The log file name looks like this: AppName_yyyymmdd_xxxxxx.log. Send the file to so that we can investigate it.

  • The main config folder can be various for different OS.
On Windows Xp:
X:\Documents and Settings\All Users\Application Data\ZebraNetworkSystems\NeoRouter

On Vista+:
X:\Users\All Users\ZebraNetworkSystems\NeoRouter
On Linux and Mac OSX:
On in-a-box:
  • AppName is the excutable file name. For example: NRServer, NRService and so on.

Don't forget to delete the Log.ini, or it may slow down your NeoRouter.

Can I install NeoRouter for Windows silently?

You cannot install it silently, but you can update it silently. If you have a NeoRouter installed and you just downloaded a newer package, you can install the new package silently.

From v0.9.10, NeoRouter install package supports the following parameters:

/INSTTYPE=Install|Update /SILENTMODE=Yes|No /COMPONENT=Full|Server|Client
  • /INSTTYPE=Install|Update

This option indicates the installer update the existing NeoRouter automatically without prompting user to choose components - Server or Client. If one does not use the /COMPONENT option, it will keep the same components as the existing one. If one does not specify the option /SILENTMODE=Yes , the installer will show the progress bar while installing files. "Install" option is available for the client ONLY.


If you don't want to see any GUI dialogs, even the progress bar, set the option /SILENTMODE=Yes .

  • /COMPONENT=Full|Server|Client

You can also specify the components you want to install manually. Full - install both Server and Client components Server - install Server component ONLY Client - install Client component ONLY

For example:

1. I want to update NeoRouter with the latest package and show the progress status in a single command. 
I also hope my NeoRouter client can reconnect to the server automatically after installation.

Setup.exe /INSTTYPE=Update

2. I want to update NeoRouter with the latest package from a remote terminal. I don't need the UI, but I
hope it works in a single command and my NeoRouter client can reconnect to the server automatically
after installation.

Setup.exe /INSTTYPE=Update /SILENTMODE=Yes
3. I want to install NeoRouter silently

Do you have quick installation guide?

Please refer to the video clips for the quick installation.

NeoRouter Server

How do I know my NeoRouter server is setup properly?

1. Check the NeoRouter Domain you registered

Go to , log in using your domain name and domain password. It will present your server listen port. Write down the port.

2. Check local domain setting

Go to the computer on which you installed NeoRouter server. Run Configuration Explorer and log on using your NeoRouter account. In the "Log on to" field of the log in dialog, input[listen port from step 1]. For example, your server is listening at port 80, then input "".

After log on to the server, go to "Settings" tab and you can see the domain name and listen port. Make sure the domain name and port are exactly same as you get from step 1. If they are not same, click on the "Setup Domain" button to reset it.

3. Check router setting

Go to the computer on which you installed NeoRouter server. Run any browser and access website . Input the listen port from step 1 and click on "Check" button. If it is successful, your server is ready; or please check your router setting.

How can I verify my server can be connected from NeoRouter clients after I set up my router?

If you have opened the listen port using either UPnP or port forwarding methods, you can use the link to verify if your setting works.

Go to the link, it will populate the public IP address of your current computer and the default listen port 32976. You can change it to match with your NeoRouter server settings, then click on "Check" button.

Can I change the listen port?

Yes. You can change the listen port to any valid port number. For example, you can change the default port 32976/tcp to 443/tcp or 80/tcp to keep from firewall blocking.

On Linux, when trying to start service I get a "cannot open shared library", what should I do?

If your Linux does not have openssl library installed, please download the openssl 0.9.8g or later and install it.

Can I install several servers?

Yes. If you setup several servers behind the same NAT, make sure they are using different listening port.

I found a mystery SSL connection to your site, what is it?

It's a web service call for the server to update domain information.

We provide a domain service to help NeoRouter users simplify the sign in process without remembering the server's IP address and port number. So the server will update its domain information (public IP, port) periodically to our website by a web service call. That's what you see SSL connection to An encrypted connection can help you keep from hacker capture your domain information. The server will make the web service call once a hour, because some users use dynamic IP. Of cause, NeoRouter client will call the web service to resolve the domain name when you sign in.

I cannot use the NeoRouter DOMAIN NAME to log on to, but I can use the public IP address to log on, from a computer in my LAN, what happened?

It seems your router having the "media hairpin feature" issue. You can verify this by the following steps:

1. You can log on to your server from a computer INSIDE your home LAN using the private IP ADDRESS.

2. You can log on to your server from another computer OUTSIDE your home LAN using your DOMAIN NAME.

3. But you cannot log on to your server from a computer INSIDE your home LAN using the public IP ADDRESS or your DOMAIN NAME (like what you come cross right now)

If so, you may use your local IP address of the server from any computer in your LAN address but you can use the DOMAIN NAME from any computer outside your LAN.

Technically, there are two main reasons causing the issue:

- Many NAT gateways do not implement hairpin NAT. That is, they cannot support two endpoints inside the NAT who are attempting to communicate using the NAT's public IP address.

- Even if the NAT gateway supports hairpin NAT, the media path will be more optimal if the media path can be established directly between each other rather than through their NAT gateway.

Where are the configuration files stored?

NeoRouter stores some configuration files and database (server) in a main config folder.

The main config folder can be various for different OS.

On Windows Xp:
X:\Documents and Settings\All Users\Application Data\ZebraNetworkSystems\NeoRouter

On Vista+:
X:\Users\All Users\ZebraNetworkSystems\NeoRouter
On Linux and Mac OSX:
On in-a-box:

The installer(Windows) skips the domain setting step, how can I go to that wizard page?

The install wizard detects the existing database file when installing the server component. If it finds the database in the main configuration folder (see above), it will skip the step. In most cases, when users want to upgrade the server to the latest version, they don't need to setup the domain information again.

To reset the domain information, you can:

1. Use the uninstaller to uninstall the software. When the uninstaller asks you "If want to remove the files generated by the NeoRouter?" Choose "Yes" to clean up the files in the main configuration folder.

2. You can delete the main configuration folder manually before re-install.

Note: You can back the main configuration folder for later use.

Some confusion about "domain"?

The NeoRouter Domain is not a Internet domain. A NeoRouter Domain is a logical group of computers running versions of the NeoRouter Client that share a central directory database. Internally, it is similar to the Windows Domain concept, but from user's perspective, it is like a DDNS (Dynamic DNS, but contains more information. It's designed for simplifying the sign in process.

A NeoRouter Domain name is related to 1) the public IP of the NR Server; 2) the NR server listening port. So, when you sign in from a NRClient with a NeoRouter domain name, the NRClient can know the IP and port of your NRServer from it and connect to the NRserver. As most home routers can be assigned a DYNAMIC IP address from ISP and some users may want to change the NR server listening port, with NeoRouter domain, these users don't need to remember neither the IP address nor the port when log on, but a NeoRouter domain name ONLY.

Of cause, you can use a IP address or a Internet domain or a computer name directly when signing in. When sign in from Network Explorer or Configuration Explor, you can put the following values in the "log on to" field.

1. NeoRouter domain only:

For example: Log on to: nrtest

2. IP address of the server:

For example: Log on to: NR client will solve it as NRserver ( is listening at default port 32976

3. IP address + port:

For example: Log on to: use ":" to separate IP and port

4. Internet domain or Internet domain + port

For example: Log on to:

5. Blank

The blank in "log on to" field equals to ""

We have a server to solve and answer the NeoRouter domain queries from NRClient. On Windows, NeoRouter domain is mandatory; on Linux/Mac/in-a-box, users can choose use it or not.

NeoRouter Client

NeoRouter Network Explorer Portable vs. NeoRouter For USB

Both NeoRouter Network Explorer Portable and NeoRouter for USB are the portable version of NeoRouter client. They can run without installation and no admin permission is required. They do not install Tap driver on a computer and they will not generate any configuration files. The computer on which they are running will NOT be registered to your computer list. It is very convenient for you to use them at public places, such as library, airport, office and so on.

In most cases, you can use the NeoRouter Network Explorer Portable. You can either download it and run directly or copy it to your USB and run whenever you need.

NeoRouter for USB gives you an extra feature - AutoRun. Once you plug your USB drive into a computer, it will automatically connects to your NeoRouter server, sign in and run a specific application. You can use the configuration tool to define the automatic process and parameters.

I am trying to remote control my second PC. It looks like it is connected but it wants from me to log on the windows and when i try to log on with the my administrator users accounts used in the same PC it's says "Unable to log you on , because of account restriction".

This is most likely because the account you are using to connect with has a null (blank) password. You cannot establish Remote Desktop connections when you are using an account with a null password.

To work around this behavior so you can establish Remote Desktop connections, log on at the console of the computer, and then set a password for that user account so that it no longer has a null password.

Please see the document from Microsoft:

Error Message: Unable to Log You on Because of an Account Restriction

I am trying to remote control my second PC. It seems to be connected but the screen is black and I am not able to see anything.

Most users, who use home router, may hardly come cross this issue. But if it happens to you, please try the following solutions to work around.

1) It may be caused by "Bitmap Caching" in the Windows Remote Desktop. So you can simply check off the "Bitmap Caching" option in the Windows Remote Desktop configuration dialog box or replace the setting "bitmapcachepersistenable:i:1" with "bitmapcachepersistenable:i:0" by editing the file \My Documents\Default.rdp (it is a hidden file).

Please see the document from Microsoft:

A black screen may appear while logon by using remote desktop.
Configure bitmap caching

2) In some environments, too many network packets, especially UDP packets, may be lost, dropped or out-of-order and this make RDP session cannot create properly. In this case, you may want to force NeoRouter use either relay mode or TCP P2P connection instead of UDP P2P connection by default.

For NeoRouter 0.9.4 or later, you can setup the "Connection Type" from NeoRouter Configuration Explorer.

 a. Log on to the NeoRouter server using an administrator account

 b. Select "Connections" page

 c. Choose the "Client-to-Client Connection" option you want

 d. Click on "Apply" button. It will restart the NeoRouter Client service. 

 a. The changes won't take effect until the NeoRouter Client service 
 b. The settings defined in the file "Feature.ini" in the application 
    folder for previous version will be replaced by this option.

For NeoRouter 0.9.3 or older, you can setup the option manually.

 a. Create a file "Feature.ini" in the application folder.
    For example: "C:\Program Files\ZebraNetworkSystems\NeoRouter\Feature.ini"
 b. Put the following parameters to it:
 c. Restart the NeoRouter Client service.

3) Log off all users from the remote computer and run the remote desktop to connect to it again. Sometime, mstsc.exe may cache the information of the remote computer last time you logged in from the computer. When another computer uses the same IP address and you want to log on it, mstsc.exe may get confused. So, logging off all users from the remote computer first may help mstsc.exe to refresh the cache.

4) Change the "client-to-client connection" type to the relay mode on any side of the computers.

After installing NeoRouter, my original network does not work properly?

In most Windows, it should work properly without changing adapter binding order if you have multiple adapters installed on your computer. Though most software are smart enough to choose proper adapter, some software simple choose the first one in the connection list and use it as the default network connection automatically, for example: some games, RPC stack and so on.

By default, NeoRouter installs a virtual adapter (NeoRouter Connection) and put it in the last position of the connection list (NOTE: Before version, it put the NeoRouter Connection to the first position). It is good for some software that use NeoRouter virtual network, but it may effect other software, which is not smart enough to find the original adapter.

In this case, you may want to change the binding order manually.

Please see the document from Microsoft:

How to change the binding order of network adapters

Does it support proxy?

Yes. From, NeoRouter supports such proxy protocols HTTP 1.1 proxy, SOCKS4/SOCKS4A and SOCKS5. This allows you connect to your NeoRouter server from a network behind proxy servers.

HTTP Proxy is highly recommended and fully supported. If you have to use SOCKS4/4A/5, you may want to use your NeoRouter server's public IP address and listening port to log on, as NeoRouter domain resolution module support HTTP Proxy only.

For example, if you are behind a proxy server using SOCKS4/4A or SOCKS5, after setting up proxy settings, you have to log on like this:

User Name: (your user name)  james
Password:  (your password)   ********
Log on to: (IP:port)  

( is a sample IP address, you can get your server's 
 public IP by access website 32976 is the 
 default port number and you may use yours)

Can I use a public IP address or a DNS domain name instead of NeoRouter Domain?

Yes. You can use either the public IP address or the DNS domain name of your server to log on. When you log on, please use the following format:

Log on to: [public IP or DNS domain name]:[port]
Log on to: [public IP or DNS domain name]

If you don't specify port, it will use the default port 32976.

For example, if my server's public IP address is and my server is listening at port 443, I can log on to If I use the DDNS service and my server has a DNS name, I can log on to

How do I know my public IP address? I'm behind a NAT.

Click on this link, you will see your public IP address.

NeoRouter Portable cleans up all add-ons I added when the application closes. How can I keep these customized add-on settings?

By default, NeoRouter Portable will clean up all files it generated, as it's designed for users who use it on a public computer. But you can also force it to keep these files, including the add-ons you added, by the following steps.

1. Create a "Feature.ini" file under the AllUsers Application Data folder, for example: C:\Documents and Settings\All Users\Application Data\ZebraNetworkSystems\NeoRouter

2. Add following lines to the file


How can I create an add-on from the Network Explorer?

There are two methods:

1. Choose the menu item "File -> Add-ons..." from the Network Explorer; click on the [+] button on the toolbar; fill out all fields and click on "OK" button.

2. Choose the menu item "File -> Add-ons..." from the Network Explorer; drag and drop the application from the Windows File Explorer to the "Add-on manager" dialog box; change the parameters depending on your requirements and click on "OK" button.

How can I access the shared files on my Windows computer from the Network Explorer?

There are several methods: 1. For Windows remote desktop users: can map local drives to the remote computer, then you can exchange files between the two computers. To change the setting in mstsc, you can go to the "Local Resources" tab -> "Local devices and resource" section and click on "More..." button.

2. For VNC users: can use VNC client File Copy feature to exchange files

3. Install the "muCommander add-on" from , then you can use the built-in SMB client to access the remote shared folders.