[Background] [Installation]
[FAQs] [Status Pages]
Background
EchoLink is a peer-to-peer system, by design. This means that
when your node is connected to another node over the Internet, the voice and
text signals are sent directly from one node to the other, rather than going
through some central server. This helps ensure that the system is
scalable and reliable.
Unfortunately, there are certain situations in which peer-to-peer
connections such as these are difficult to establish. A growing number of
Internet providers are offering "one-way" access to the Internet —
allowing your computer to initiate a connection, but not to accept
one. These include wireless community networks, or hotspots.
An example is the wireless Internet service now being provided by many hotels
to their guests. Guests with wireless-enabled laptop computers can check
their e-mail and surf the Web from their rooms. The hotel uses a router
with a fast Internet connection and a single public address (or a small pool of
addresses) shared amongst all guests. This arrangement does not work with
EchoLink, because the guests' computers are not reachable from the Internet.
A Solution
A solution to this problem is to split the EchoLink software into two
pieces — one that runs on your laptop, and the
other that runs on a PC in some other location with good Internet access.
With this arrangement, the laptop need only establish a single, outbound
Internet connection to the PC. Then, the EchoLink software on the laptop
"tunnels" all traffic through this connection to the remote PC, and the PC in
turn establishes all of the necessary peer-to-peer connections to other
EchoLink nodes. In this scenario, the PC is acting as a proxy on
behalf of the laptop.
EchoLink now offers special software to make this possible. The
proxy software, which is designed specifically for use with EchoLink, is called EchoLink
Proxy. The diagram below illustrates how EchoLink Proxy can be
used.
Is EchoLink Proxy
For You?
Consider setting up EchoLink Proxy only if both of the
following are true:
-
You have a fast, true, dedicated Internet connection at your home or
office, or at some other place to which you have access to a PC, and
-
You have "one-way" Internet service at some other location, or you
often travel to such a place, such as an airport lounge, coffee shop, or hotel
room.
Note that EchoLink Proxy will not help if you are simply
having trouble connecting to other stations from your home PC. In fact,
you must first ensure that EchoLink works correctly on the machine on which the
proxy will be installed.
Also, note that a given EchoLink Proxy can be used by only one
EchoLink client machine at a time, since each logged-in EchoLink node (or its
proxy) must still have a unique public IP address. You can run more than
one instance of EchoLink Proxy on a PC only if the PC has multiple public
Internet addresses, which is uncommon.
Finally, the proxy PC must be reachable through a static public
Internet address, or a dynamic public address that can easily be determined
remotely.
Disadvantages
There are two key disadvantages to using EchoLink Proxy versus the
regular EchoLink software:
-
Voice messages are being transferred between the client and proxy
over TCP, rather than UDP. TCP is not designed to handle this type of
data, and tends to magnify any problems with congestion along the path.
-
Two computers (and Internet connections) are required, rather than
just one. It is necessary to run the Proxy software continuously on some
remote server.
Installation
Overview
Here are the overall steps for installing and using the EchoLink
Proxy. For detailed information, see the section that follows.
-
If the proxy PC runs Windows, verify that the ordinary EchoLink
software works correctly on it, and can connect to other stations.
Resolve any firewall issues.
-
Be sure the PC has the Java Runtime Environment 1.4 (or above)
installed.
-
Download and install the Proxy software on that PC.
-
Choose a port and password for the proxy, and edit the proxy
configuration file.
-
Start up the proxy software.
-
If necessary, configure the router and/or firewall to allow the PC
to accept inbound TCP connections on the proxy port (e.g. 8100).
-
On the client computer (e.g. the laptop), download and install
Version 1.9 of the EchoLink software. This version of the software has a
Proxy option.
-
Configure the EchoLink software to connect to the new Proxy
server. You must enter the hostname or address of the proxy PC, the port
number (e.g. 8100), and the chosen password.
-
When the EchoLink software starts, it will try to connect to the
Proxy PC. If successful, the program will look and act exactly as it
normally does. When you exit EchoLink, it automatically disconnects from
the Proxy server.
Installation
Details
The EchoLink Proxy software can run on any OS that supports Java,
such as Windows, MacOS, Linux, Solaris, or FreeBSD.
To verify whether the Java Runtime Environment is installed, and what
version it is, type this command at a command prompt:
java -version
If the command fails, or returns a version lower than 1.4, you will
need to download and install the latest Java Runtime Environment (JRE).
Follow the instructions at:
www.java.com
Download the EchoLink Proxy software. The download is a ZIP
archive that contains two files. The software is in a file called
EchoLinkProxy.jar, and the sample configuration file is
EchoLinkProxy.conf. Copy both of these files to some
convenient directory or folder on the PC.
Choose a password and a port number for the EchoLink Proxy. The
default port number is 8100. The port number you choose must be a TCP
port that your home ISP allows for incoming connections, and that the remote
ISP allows for outgoing connections. If you are using security software
on your home PC, you might need to configure it to allow java.exe to accept
connections on this port. Also, if you have a home-networking router, you
will need to configure it to "forward" incoming connections on this TCP port to
the PC on which EchoLink Proxy will be running.
Using a text editor such as Windows Notepad, edit
EchoLinkProxy.conf to reflect your choices.
You must also ensure that the proxy PC can accept UDP ports 5198 and
5199, and outbound TCP port 5200. See Firewall
Solutions for details.
To start the EchoLink Proxy software, open a command prompt, change
to the directory or folder that contains EchoLinkProxy.jar, and type this
command:
java -jar EchoLinkProxy.jar
When the program starts, it will display the message "Ready for new
client connection." Leave the command-prompt window open to allow the
program to keep running.
On the remote PC (e.g., the laptop), download and install version 1.9
(or above) of the EchoLink software. Start up EchoLink as usual, but go
to Tools-->Setup, and click the Servers tab. Check the box marked "Use
proxy", and enter the hostname (or IP address) of the proxy PC, along with the
chosen password and port number. Note that the hostname (or IP address)
must be the external address of the proxy PC, not the internal address.
Click OK and then re-start EchoLink for the changes to take effect.
After re-starting EchoLink, if it displays a message about problems
connecting to the proxy, verify that the host name is correct and that no
firewall or router issues are interfering with the TCP connection between
EchoLink and the proxy. (This connection uses only the single TCP
port you selected.)
If the list of stations appears as usual, but you are unable to
connect to other stations, check the firewall/router setup on the proxy
PC. In effect, the proxy PC is the PC from which EchoLink connections are
established, so all of the information on the Firewall
Solutions page applies to the proxy PC.
To shut down the proxy, switch to its window and hit Ctrl+C.
Frequently
Asked Questions
Q: What version of the EchoLink software will work with
EchoLink Proxy?
A: Version 1.9 or above. The new proxy settings appear
on the Servers tab under Tools-->Setup.
Q: I have a home network with a PC and a laptop, and I've been
having trouble getting EchoLink to work on the laptop. Will this Proxy
thing help?
A: It might, but you are probably better off troubleshooting
the laptop problem, since the proxy has certain disadvantages compared to a
direct EchoLink connection.
Q: I have broadband Internet access, but my computer's public
IP address changes from time to time. How will I know what its address is
when I am 1,000 miles away?
A: There are two solutions (choose one or the other):
-
Subscribe to a "dynamic DNS" service such as
DNS2Go. With the help of special software installed on the PC,
your PC will be assigned a fixed hostname, even though its IP address may
change from time to time.
-
Enable the RegistrationName feature in the proxy configuration
file. This will cause the proxy to periodically post a message to the
EchoLink server advising it of your current IP address. You can then find
out the IP address from a special web page, which
you can bring up each time you need to connect to the proxy.
Q: I run a full-time EchoLink Sysop node at home, on my
broadband Internet connection. Can I also run the EchoLink Proxy software
at home, either on the same computer, or on a different one?
A: Probably not. The reason is that each EchoLink node
(including the proxy) must have a different public IP address; on most home
networks, a single public Internet address is shared by all computers on the
network. You can do this only if you have made special arrangements with
your ISP to have multiple public Internet addresses.
Q: If I use EchoLink (via the proxy) from a public "hotspot",
such as an airport lounge, is there a security risk since others might "sniff"
the information going to and from my laptop?
A: This is an important issue that is often overlooked by
users of wireless networks. EchoLink (version 1.8 and above) uses
public-key cryptography to encrypt your login information, and EchoLink Proxy
uses a challenge-response digest-based authentication mechanism.
Passwords are never sent "in the clear". These features help ensure
security over a shared public network.
Q: I've tried using the Proxy and it seems to work, except
that I can't connect to any other stations. What is the problem?
A: Most likely, it's a firewall or router problem at the proxy
PC (not the EchoLink PC). See Firewall
Solutions for assistance.
Q: If my Internet connection is dropped while I'm using the
proxy, can I re-connect?
A: In most cases, EchoLink Proxy will detect the dropped
connection and re-set itself right away. In other cases, it may take up
to 10 minutes for the proxy to re-set itself and prepare for a new connection.
Q: Can more than one EchoLink user work through my proxy at
the same time?
A: No; each instance of the proxy supports only one client at
a time. This is because each logged-on EchoLink user must have a
different public IP address. However, two (or more) users can take turns
using your proxy at different times.
Q: When connected through the proxy, will EchoLink support
conferencing?
A: Yes, but it is less efficient, since the EchoLink client is
hosting the conference, not the proxy. When calculating the maximum
number of connections you can support, you must consider both the proxy's
upstream Internet connection and the EchoLink client's upstream Internet
connection, and use the lesser of the two; divide the result (in kbps) by
18. Also, keep in mind that the proxy uses equal amounts of upstream and
downstream bandwidth.
Q: Can I set up an EchoLink Proxy for others to use, besides
myself?
A: Yes, but you must agree not to charge a fee for access to
it. Note that the Proxy configuration file allows
you to set an accept/deny list of callsigns if you want to restrict access to a
specific group of users.
In fact, there is an option in the Proxy configuration file that
allows you to "advertise" the server as a "public" proxy, and have it
automatically be listed on a special page on the
EchoLink Web site.
Q: Instead of setting up and running my own EchoLink Proxy,
can I simply connect to someone else's?
A: Yes, but you would need to know the address and password of
the proxy, and you would need the owner's permission to use it; or, use a
"public" proxy (see list). If you decide to
use a public proxy, please be considerate; it is a shared resource, and should
be used only for brief time periods. If you have a need for long-term
access to a proxy, please make arrangements to set up a private proxy for
yourself.
Q: I have a home network with two computers that share a DSL
connection to the Internet. I run a full-time EchoLink Sysop node on one
of them. Can I run another copy of EchoLink on the second computer by
pointing it to a proxy at some other location?
A: Yes; this will work, because your Sysop node and the
distant proxy server would have two different IP addresses. However,
please be considerate about the use of "public" proxies; use them only for
short periods. If you require long-term access to a proxy, please make
arrangements to use a private proxy, or set one up yourself at some other site
that has Internet access.
Q: With EchoLink Proxy, will I be able to run EchoLink on a
computer on a private network that has no gateway to the Internet at all?
A: The proxy arrangement still requires that the EchoLink
client software perform DNS lookups for certain Internet hosts (namely, the
addressing servers). If you run the EchoLink client software on a private
network and connect through a proxy as the gateway, you would also need a
caching DNS resolver accessible from the EchoLink client.
Q: Is there any way to use EchoLink Proxy with an EchoLink
client that is behind an HTTP proxy?
A: Yes, as long as the HTTP proxy supports "tunneling" via the
CONNECT command, and the EchoLink Proxy is running on a port to which the HTTP
proxy allows tunneled connections, such as 443. It also requires that the
HTTP proxy's inactivity timer be no shorter than 6 minutes, or that the
EchoLink client remain connected to another station at all times. To use
this feature, put a slash after the EchoLink Proxy hostname, and then the IP
address and port number of the HTTP proxy, separated by a colon.
Q: On a Windows computer, how can I set up the proxy so
that it starts automatically each time Windows is re-started?
A: On Windows NT/2000 or above, you can set up the proxy to
run as a Windows Service, using a freeware utility called JavaService (http://forge.objectweb.org/projects/javaservice/).
Assuming you have put EchoLinkProxy in C:\EchoLinkProxy, and you are running
the Sun 1.4.2 JRE, a typical command to install the service might be (all on
one line):
javaservice
-install "EchoLinkProxy"
"C:\Program Files\Java\j2re1.4.2\bin\client\jvm.dll"
-Djava.class.path=C:\EchoLinkProxy\EchoLinkProxy.jar
-start org.echolink.proxy.ELProxy
-out C:\EchoLinkProxy\stdout.txt
-current c:\EchoLinkProxy
Status Pages
List of Public EchoLink Proxies
This page displays the address and current status of each EchoLink
Proxy Server that welcomes access from any EchoLink user.
EchoLink Proxy Lookup
Looks up the current Internet address of any proxy server (public or
private) that has registered itself using the RegistrationName option.
See the comments in the EchoLink Proxy configuration file for details.
|