<title>Synchronet Version 3 and TCP/IP: Answers to Frequently Asked Questions</title>
</head>
<body>
<fontface="Arial","Helvetica">
<h1align="center">Synchronet Version 3 and TCP/IP<br><i>Answers to Frequently Asked Questions</i></h1>
<hr>
<p>
<h2>Table of Contents:</h2>
<ul>
<li><ahref="#ports">What inbound ports do I need to open in my firewall?</a>
<li><ahref="#private_ip">How come my friends can't connect to my BBS at my <b>192.168.x.x</b>, <b>172.[16-31].x.x</b>, or <b>10.x.x.x</b> IP address?</a>
<li><ahref="#public_ip">So what is my <b>public</b> IP address?</a>
<li><ahref="#port25">Why can't my BBS receive Internet e-mail or inter-BBS instant messages?</a>
<li><ahref="#ftp_connect">Why can't users connect to my FTP server?</a>
<li><ahref="#ftp_nat">Why do FTP clients lock-up when listing directories or downloading files from my FTP server?</a>
<li><ahref="#socket_io">Why do external programs that use socket I/O (e.g. Synchronet Blackjack, Synchronet BBS List, DoorMUD) hang on my Windows BBS?</a>
</ul>
<aname="ports"><hr></a>
<p>
<b>Question:</b><br>
<i>What inbound ports do I need to open in my firewall?</i>
<p>
<b>Answer:</b>
<br>Depends on which Synchronet servers and services you wish to make available
to Internet clients and which ports you have configured those servers and services to listen on.
<p>The default Synchronet installation enables servers and services on the following ports:
Clients on the Internet must use the IP address of your router/firewall device's public/WAN port
to connect to your BBS. This IP address <b>will not</b> begin with <i>192.168</i>, <i>172.[16-31]</i>, or <i>10</i>.
</p>
<aname="public_ip"><hr></a>
<p>
<b>Question:</b><br>
<i>So what is my <b>public</b> IP address?</i>
<p>
<b>Answer:</b>
<br>If you need to know your public IP address, you can usually query your router/firewall device using it's configuration interface
(typically via telnet or HTTP to its private/LAN port) or access <ahref=http://www.whatismyipaddress.com/>any</a>
<ahref=http://checkip.dyndns.org/>one</a> of <ahref=http://www.whatismyip.com/>many</a>
public web-sites that can tell you what your public IP address is. However, it is usually much better to advertise a <b>hostname</b>
(e.g. <i>vert.synchro.net</i>) rather than an hard-to-remember IP address (e.g. <i>69.104.209.209</i>).
<p>
If you use a <i><ahref=dyndns.txt>Dynamic DNS</a></i> service to get hostname for your BBS,
they can usually correctly determine your public IP address automatically, even if your IP address changes.
So you don't <b>need</b> to necessarily know what it is.
</p>
<aname="port25"><hr></a>
<p>
<b>Question:</b><br>
<i>Why can't my BBS receive Internet e-mail or inter-BBS instant messages?</i>
<p>
<b>Answer:</b>
<br>You must have the Synchronet SMTP (mail) server running and listening for incoming connections on TCP port 25 (the standard SMTP port).
You (or a friend) can test this basic connectivity by attempting to telnet to port 25 (instead of port 23) at your BBS's hostname or
public IP address from
a remote location on the Internet. The remote telnet client should see a successful connection and a text message similar to the following:</p>
<tt>220 bbs.synchro.net Synchronet SMTP Server 1.362-Win32 Ready</tt>
<p>You should also see evidence of the successful SMTP connection to the server in your Synchronet Mail Server window/log output.
If you do not, then its likely that your firewall or Internet Service Provider is blocking incoming connections to TCP port 25.
Before concluding this is the case, verify that the remote telnet client can connect to other SMTP servers first (e.g. <i>vert.synchro.net</i>, TCP port 25).
If it cannot, then this remote client probably has restrictions on which (if any) connections he can make to TCP port 25. Try using a different
(less restrictive) remote Internet connection for your test.
<p>
If your firewall or Internet Service Provider is blocking incoming connections to TCP port 25 (many consumer-class ISPs do),
then you won't be able to receive Internet e-mail on your BBS. Fixing your firewall configuration is rather simple, but
changing ISPs is often not. One possible work-around is having a mail proxy (3rd party server) receive the e-mail for you and forward it
to a non-standard (non-blocked) SMTP port. Many Dynamic DNS services offer this <ahref=http://www.dyndns.org/services/mailhop/relay.html>service</a>
for a fee. Or fellow sysops may be able to do perform this service for your for free.
</p>
<aname="ftp_connect"><hr></a>
<p>
<b>Question:</b><br>
<i>Why can't users connect to my FTP server?</i>
<p>
<b>Answer:</b>
<br>You must have the Synchronet FTP server running and listen for incoming connections on TCP port 21 (the standard FTP port).
See the previous answer about methods of testing this basic connectivity using a remote telnet client.
<p>If your FTP server window/log indicates an accepted FTP connection, then it's not a connectivity problem and probably a login failure.
<p>FTP sessions require a <b>login</b>. If you have not created a <i>Guest</i> account for your BBS, then the FTP server will
not allow <i>Annonymous</i> logins (most web browsers, for example, will attempt to login anonymously by default). If this is the problem,
then either create a <i>Guest</i> account (preferably using the <tt>exec/makeguest.js</tt> module) or tell your FTP users that they
must login with a valid BBS user account in order to use the FTP server.
</p>
<aname="ftp_nat"><hr></a>
<p>
<b>Question:</b><br>
<i>Why do FTP clients lock-up when listing directories or downloading files from my FTP server?</i>
<p>
<b>Answer:</b><br>
Your BBS computer is probably behind a <i>Network Address Translator</i> (<ahref=http://www.faqs.org/rfcs/rfc1631.html>NAT</a>).
NAT functionality is typically built into router/firewall devices.
If your NAT device supports active and passive FTP servers "behind" the NAT, then you should have no problems. Unfortunately, this is
not always the case (some cheaper consumer-level firewalls do not handle FTP server connections correctly).
Sometimes <b>passive</b> (PASV) transfers work fine (most web browsers use passive FTP transfers by default), but
<b>active</b> (PORT) transfers do not (the Windows command-line FTP client for example, <b>only</b> supports active transfers). This
<ahref=http://www.ncftpd.com/ncftpd/doc/misc/ftp_and_firewalls.html>document</a> contains the technical details about how and why and recommended
solutions.
</p>
<aname="socket_io"><hr></a>
<p>
<b>Question:</b><br>
<i>Why do external programs that use socket I/O (e.g. Synchronet Blackjack, Synchronet BBS List, DoorMUD) hang on my Windows BBS?</i>
<p>
<b>Answer:</b><br>
Some software firewall and anti-virus programs interfere with the inheritance of socket descriptors between processes. I don't know if this is
an intentional security "feature" or a design flaw. One such program is the <b><i>ZoneAlarm Security Suite</i></b>. If you have this
(or similar) software installed, it most be completely un-installed for socket inheritance to work.