
          Question List (Last updated 03-05-96):

               Q1. What is SOCKS?
               Q2. What is SOCKS5 different from SOCKS4?
               Q3. Is SOCKS5 interoperable with SOCKS4?
               Q4. Where can I get it?
               Q5. Are there any SOCKS related mailing lists?
               Q6. Are there binaries available?
               Q7. How about Windows? Can they use SOCKS?
               Q8. How about the Mac?
               Q9. What do I have to do to modify programs to
               use SOCKS?
               Q10. Does SOCKS handle UDP?
               Q11. How does SOCKS interact with DNS?
               Q12. What is a single-homed and multi-homed
               firewall?
               Q13. Is there an RFC for SOCKS?
               Q14. What does SOCKS stand for?
               Q15. Why does the password echo when I run
               rftp from SOCKS?
               Q16. How do you traverse multiple firewalls
               (socksified SOCKS server?)

          --------------------------------------------------------

          Q1. What is SOCKS?

               SOCKS is a networking proxy mechanism that enables
               hosts in one side of SOCKS server to gain full
               access to hosts in the other side of the SOCKS
               server without requiring direct IP reachability. It
               works by redirecting connection requests from hosts
               in one side to hosts in the other side to a SOCKS
               server, who authenticates and authorizes the
               requests, establishes a proxy connection and passes
               data back and forth. It has been typically used as
               a network firewall which enables hosts behind a
               SOCKS server to gain full access to the Internet
               while protects unauthorized access from the
               Internet to the internal hosts.

               There are two major versions of SOCKS, SOCKS4 and
               SOCKS5. David Koblas is the original author.

               More information about SOCKS can be found at
               http://www.socks.nec.com/.
               Question List

          Q2. What is SOCKS5 different from SOCKS4?

               The main differences between SOCKS5 and SOCKS4 are:

                    1. SOCKS4 doesn't support authentication while
                    SOCKS5 has the built-in mechanism to support a
                    variety of authentications methods.

                    2. SOCKS4 doesn't support UDP proxy while
                    SOCKS5 does.

                    3. SOCKS4 clients require full support of DNS
                    while SOCKS5 clients can rely on SOCKS5 server
                    to perform the DNS lookup.

               More details can be found in Introduction to SOCKS.

               Question List

          Q3. Is SOCKS5 interoperable with SOCKS4?

               SOCKS5 protocol doesn't include any provision for
               supporting SOCKS4 protocol. However, it is a simple
               matter of implementation. The SOCKS5 implementation
               from NWSL of NEC USA does support the SOCKS4
               protocol. The server supports both V5 and V4
               clients and can communicate with other V5 and V4
               servers.
               Question List

          Q4. Where can I get it?

               Both SOCKS4 and SOCKS5 sources are available via
               anonymous ftp at ftp.nec.com in /pub/socks They are
               also available via http at
               http://www.socks.nec.com/

               Both packages include basic clients for telnet,
               ftp, finger, and whois. In addition, NEC's SOCKS5
               implementation includes archie, ping and
               traceroute.

               The standard NCSA distribution of X Mosaic comes
               with SOCKS4 support as an enableable option
               (available from ftp.ncsa.uiuc.edu in /Mosaic). The
               standard httpd distribution in
               info.cern.ch:/pub/www/src contains SOCKS4 hooks.
               Also, Netscape's web browsers come with SOCKS4
               support.

               Several other clients are available in the same
               directory at ftp.nec.com as well as in
               http://www.socks.nec.com/
               Question List

          Q5. Are there any SOCKS related mailing lists?

               Yes, there are three SOCKS related mailing lists,
               the original SOCKS mailing list and the new SOCKS5
               and SocksCap mailing lists. To join the SOCKS
               mailing list, send email to:

                     majordomo@socks.nec.com
                          with
                     subscribe socks your@email.address
                          in the body.

               to join the SOCKS5 mailing list, send email to:

                     majordomo@socks.nec.com
                          with
                     subscribe socks5 your@email.address
                          in the body.

               and to join the SocksCap mailing list, send email
               to:

                     majordomo@socks.nec.com
                          with
                     subscribe sockscap your@email.address
                          in the body.

               All these mailing lists are archived at
               http://www.socks.nec.com/
               Question List

          Q6. Are there binaries available?

               Typically not. The SOCKS5 package from NEC USA uses
               "autoconf" so that the installation of the software
               is straightforward. Nevertheless, the installation
               of SOCKS4 will need to modify some configuration
               information that is hard-coded into the library for
               additional security. There are some binaries for
               some SOCKS clients for Windows (see next question).

               Question List

          Q7. How about Windows? Can they use SOCKS?

               Yes. There are SOCKSified clients known as the PC
               SOCKS Pack available via anonymous FTP at
               ftp.nec.com in /pub/socks/socks4/PC_Socks_Pack

               Networking Systems Lab. (NWSL) of NEC USA provides
               a DLL called SocksCap which can SOCKSify many
               commercial and public WinSock stacks enabling
               WinSock based applications to use SOCKS. You can
               download the SocksCap from
               http://www.socks.nec.com/download.html or ftp it
               from ftp://ftp.nec.com/pub/socks/sockscap/

               More information about SocksCap can be found at
               http://www.socks.nec.com/sockscap.html.

               Netscape's web browser for Windows comes with
               SOCKS4 support. NCSA's Mosaic for Windows can also
               use SOCKS4 by working via a proxy CERN httpd daemon
               that has SOCKS4 enabled.

               Another options is Peter Tattam's SOCKSified
               Trumpet Winsock (currently in beta).
               http://www.trumpet.com.au/wsk/winsock.htm.
               Question List

          Q8. How about the Mac?

               Netscape's web browser for Mac supports SOCKS and
               the newest Mosaic for Mac (in beta now) will also
               support SOCKS. [has anyone tried?]
               Question List

          Q9. What do I have to do to modify programs to use
          SOCKS?

               The specific details of SOCKSification can be found
               at http://www.socks.nec.com/how2socksify.html.
               Basically, you need to recompile the sources with a
               few pre-processor directives to intercept the
               regular calls to things like bind(). SOCKS5 library
               can SOCKSify both TCP and UDP applications while
               SOCKS4 library can only SOCKSify TCP based
               programs.

               NWSL of NEC USA provides a set of tools that can
               dynamically SOCKSify programs without modifying nor
               recompiling them. One is SOCKS5 shared library for
               certain UNIX platforms and the other is SocksCap
               for MS-Windows. Datails can be found at
               http://www.socks.nec.com.
               Question List

          Q10. Does SOCKS handle UDP?

               Yes and no. SOCKS5 protocol includes support of UDP
               but SOCKS4 does not deal with UDP. The SOCKS5
               package from NWSL of NEC USA includes a socksified
               archie client program which is an UDP application.
               Question List

          Q11. How does SOCKS interact with DNS?

               In a SOCKS4 environment, SOCKS clients are required
               to be able to resolve IP address of remote hosts no
               matter whether they are local hosts or internet
               hosts. Therefore DNS must be configured in such a
               way that SOCKS clients' resolver is able to do so.
               Special arrangement needs to be made when more than
               one DNS servers are being used (such as dual DNS
               environment).

               In a SOCKS5 environment, the above requirement is
               no longer necessary. SOCKS clients can passing the
               un-resolvable host names to SOCKS servers and the
               servers will try to resolve those names. As a
               result, so long as one of the resolvers used by
               either SOCKS clients or SOCKS servers is able to
               resolve a given host, SOCKS will work OK.
               Question List

          Q12. What is a single-homed and multi-homed firewall?

               Multi-homed means that the firewall has multiple
               network interfaces and that the firewall does not
               forward packets. This is highly recommended.
               Single-homed firewalls only have one network
               interface card. This can be useful if a choke (like
               a router) can filter packets not coming from the
               firewall, since SOCKS will cause the connections to
               appear as though they are coming from the firewall.

               Question List

          Q13. Is there an RFC for SOCKS?

               Although there is no 'official' RFC, there is a
               document describing SOCKS4's protocol. In addition,
               a working group of the IETF is currently reviewing
               a draft for SOCKS5 protocol, also known as
               Authenticated Firewall Traversal (AFT). It is
               currently a Proposed Standard. It was submitted by
               Marcus Leech <mleech@bnr.ca>. The draft can be
               ftp'ed from ds.internic.net in
               /internet-drafts/draft-ietf-aft-socks-protocol-v5-05.txt

               Question List

          Q14. What does SOCKS stand for?

               SOCK-et-S; it was one of those "development names"
               that never left.
               Question List

          Q15. Why does the password echo when I run "rftp" from
          SOCKS4?

               The password only echoes for the username
               anonymous. Since this really isn't a password
               anyways, this is considered a feature.
               Question List

          Q16. How do you traverse multiple firewalls (socksified
          SOCKS server?)

               The 'standard' SOCKS4 server program, sockd, has
               not been socksified. An older (v3) sockd is
               available for HP-UX as-is, on: ftp.cup.hp.com in
               /dist/socks/socks.tar.gz

               The SOCKS5 implementation from NWSL of NEC USA
               comes with the support of multiple firewalls
               traverse. Datails can be found at
               http://www.socks.nec.com.
               Question List

          --------------------------------------------------------

          Contributors:

             * rk@Unify.Com - Ron Kuris, Unify Corporation
             * steve@syl.dl.nec.com - Steven Lass, NEC USA
             * wlu@syl.dl.nec.com - Wei Lu, NEC USA
