mirror of https://github.com/tLDP/LDP
1003 lines
37 KiB
Plaintext
1003 lines
37 KiB
Plaintext
<!doctype linuxdoc system>
|
|
<!--
|
|
|
|
************************** begin comment *****************************
|
|
The following is the HOW-TO for setting up Modem to Dial-Up
|
|
Networking the Remote Access Server like NT RAS or Linux RAS.
|
|
This document is in the SGML format. You must use sgml package to
|
|
process this document
|
|
************************* end of comment *****************************
|
|
|
|
-->
|
|
<!--
|
|
************************** SGML USER GUIDE *****************************
|
|
The SGML user guide on linux is located at /usr/doc/sgml-tools
|
|
Read the example.sgml and guide.html documents.
|
|
Usage:
|
|
HTML sgml2html foo (Do not give extension .sgml here!!)
|
|
Text sgml2txt foo.sgml
|
|
Latex sgml2latex foo.sgml
|
|
|
|
Note: Use 2 dashes - before language, error while compiling
|
|
Postscript sgml2latex -language=english -o ps foo.sgml
|
|
DVI sgml2latex -d foo.sgml
|
|
Lyx sgml2lyx foo.sgml
|
|
Richtext sgml2rtf foo.sgml
|
|
gnuinfo sgml2info foo.sgml
|
|
man sgml2txt -man foo.sgml
|
|
SGML sgmlcheck foo.sgml
|
|
************************* end of comment *****************************
|
|
-->
|
|
|
|
<article>
|
|
|
|
<!-- Title information -->
|
|
|
|
<title>Modem-Dialup-NT HOW-TO
|
|
|
|
<!-- chapt change
|
|
Modem-Dialup-NT HOW-TO
|
|
|
|
|
|
|
|
-->
|
|
<author>Al Dev (Alavoor Vasudevan)
|
|
<htmlurl url="mailto:
|
|
alavoor[AT]yahoo.com"
|
|
name="
|
|
alavoor[AT]yahoo.com">
|
|
<date>v1.7, 22 June 2002
|
|
<abstract>
|
|
This document will help you to setup the Modem to do
|
|
Dial-up Networking with remote server like Windows NT RAS or
|
|
Linux RAS (Remote Access Server). You can use the Modem to
|
|
do Dial-Up Networking on Linux very similar to that of MS Windows dialup networking.
|
|
</abstract>
|
|
|
|
<!-- Table of contents -->
|
|
<toc>
|
|
|
|
<!-- Begin the document -->
|
|
|
|
<sect>Introduction
|
|
<p>
|
|
<bf>
|
|
(The latest version of this document is
|
|
at <url url="http://www.milkywaygalaxy.freeservers.com">. You may
|
|
want to check there for changes).
|
|
</bf>
|
|
|
|
Most of the companies in USA and Europe provide "Remote Access Servers" (RAS), so
|
|
that their employees can dial-in from remote locations either from home or from field.
|
|
RAS servers are generally Linux RAS servers or MS Windows NT RAS servers.
|
|
|
|
Nowadays, Virtual Private Network (VPN) is becoming quite popular because it supports
|
|
broadband and may eventually replace dial-up networking which is very slow running at 56KB/sec.
|
|
See the
|
|
<url name="VPN HOWTO" url="http://linuxdoc.org/HOWTO/VPN-HOWTO.html">
|
|
and
|
|
<url name="VPN-Masquerade howto" url="http://linuxdoc.org/HOWTO/VPN-Masquerade-HOWTO.html">
|
|
and java based
|
|
<url name="MindTerm-SSH-HOWTO" url="http://linuxdoc.org/HOWTO/MindTerm-SSH-HOWTO/index.html">.
|
|
|
|
Configuring a dial-up connection on Linux is about as simple as it is in Windows.
|
|
We will use PPP.
|
|
|
|
<bf>Definition: <it>PPP ('Point to Point Protocol') is a protocol,
|
|
that makes it possible to make IP-Links (Internet Protocol) between two
|
|
computers with a modem. </it> </bf>
|
|
|
|
|
|
The operating system Linux has this protocol in the kernel (If you compiled it into the kernel). For a ppp-link you need to start a daemon called pppd.
|
|
|
|
With PPP you can make a link between two hosts which understand the protocol. A link between a Linux host, acting as client and a Windows NT server, acting as server, is called a (Microsoft term)
|
|
<bf>'Remote Access Service'</bf> (RAS) link.
|
|
|
|
First, see if your modem is supported by linux.
|
|
Internal Modems (WinModems) may work with Linux because they need extra
|
|
software drivers to make it work with Linux.
|
|
Test your WinModem to see if it works under Linux.
|
|
Some WinModems require special tweaking to make it work in Linux.
|
|
<sect1> Preparations <label id="preparations">
|
|
<p>
|
|
Check if you have all the needed hardware, software and data and hand:
|
|
|
|
<itemize>
|
|
<item> A modem supported by Linux. Some modems, like most internal PCI modems or some external USB modems are so-called WinModems. Which means
|
|
that they rely on Windows-only software to work.
|
|
Read
|
|
<url name="Winmodems are not modems" url="http://www.idir.net/~gromitkc/winmodem.html">
|
|
for more information and a compability list and check out
|
|
<url name="Linmodems.org" url="http://linmodems.org">
|
|
for (a few) drivers.
|
|
|
|
<p>
|
|
<item> The modem's init-string. GNU/Linux does not have an equivalent to the Windows hardware information file (.inf) mechanism. You may have to find out
|
|
the init-string for your modem yourself. It should(TM) be listed in your hardware's documentation or in the modem's INF file, but there are also online
|
|
sources like this
|
|
<url name="list of modem init-strings" url="http://www.spy.net/~dustin/modem/">
|
|
. If you have no clue at all, use ATZ, that works with many modems.
|
|
|
|
<p>
|
|
<item> Provider data. You'll need your login name, password and the telephone number. DNS addresses would be fine, too, but are optional for recent
|
|
versions of pppd.
|
|
<p>
|
|
<item> Check if your modem is connected correctly to the system or properly recognized by it.
|
|
With an external modem, that's pretty easy. As 'root' do <bf>echo >/dev/ttyS0</bf>
|
|
and watch the modem LEDs. You should see them flicker for a moment. If not, try
|
|
<bf>echo >/dev/ttyS1</bf> in case your modem is connected to the second serial port.
|
|
With an internal modem, use HardDrake to check if the system sees the modem. Or use this command to query the PCI list directly: <bf>cat /proc/pci</bf>. If it's an
|
|
ISA bus modem, check '/etc/isapnp.conf' if it is listed there. If you don't have that file, you'll have to generate it. Read isapnpfaq.txt in the isapnptools doc
|
|
directory or <bf>man isapnp</bf> or <bf>man isapnp.conf</bf>.
|
|
</itemize>
|
|
|
|
|
|
|
|
<sect> Dial-up ISP Internet Connection
|
|
<p>
|
|
Follow these steps to connect to your ISP via dial-up modem:
|
|
<itemize>
|
|
<item> You should have installed the packages kdenetwork-ppp*.rpm and ppp*.rpm
|
|
<item> At bash prompt type '/usr/bin/kppp'. This will bring up the KPPP dialog boxes.
|
|
<item> On 'Accounts' tab setup the 'New Connection', and click the following tabs:
|
|
<enum>
|
|
<item> On 'Dial' tab use Authentication='PAP/CHAP', yes to 'Store Password'
|
|
<item> On 'IP' tab select 'Dyanamic IP Address' and uncheck 'Auto-configure hostname'
|
|
<item> On 'Gateway' tab select 'Default Gateway' and check 'Assign the Default Route'
|
|
<item> On 'DNS' tab select 'Configuration Automatic' and check 'Disable existing DNS'
|
|
<item> On 'Login Script' tab - do nothing here
|
|
<item> On 'Execute' tab - do nothing here
|
|
<item> On 'Accounting' tab - do nothing here
|
|
</enum>
|
|
<item> On 'Device' tab select the proper modem device like ttyS1(com1), ttyS2 (com2)
|
|
<item> On 'Modem' tab 'Query Modem' to see the results. If no results come up, go to device
|
|
tab and pick the proper device.
|
|
<item> Enter login ID and password and connect.
|
|
</itemize>
|
|
After doing the above steps, you would have connected to internet. To test do:
|
|
<code>
|
|
bash$ ping www.yahoo.com
|
|
PING www.yahoo.com(66.218.71.83) from 64.152.245.119 : 56(84) bytes of data.
|
|
64 bytes from www.yahoo.com (66.218.71.83): icmp_seq=0 ttl=58 time=236.931 msec
|
|
64 bytes from www.yahoo.com (66.218.71.83): icmp_seq=1 ttl=58 time=229.074 msec
|
|
|
|
bash$ ping www.google.com
|
|
|
|
bash$ su - root
|
|
# ifconfig
|
|
lo Link encap:Local Loopback
|
|
inet addr:127.0.0.1 Mask:255.0.0.0
|
|
ppp0 Link encap:Point-to-Point Protocol
|
|
inet addr:64.158.37.63 P-t-P:209.244.43.188 Mask:255.255.255.255
|
|
|
|
# netstat -nr
|
|
Kernel IP routing table
|
|
Destination Gateway Genmask Flags MSS Window irtt Iface
|
|
209.244.43.183 0.0.0.0 255.255.255.255 UH 40 0 0 ppp0
|
|
127.0.0.0 0.0.0.0 255.0.0.0 U 40 0 0 lo
|
|
0.0.0.0 209.244.43.183 0.0.0.0 UG 40 0 0 ppp0
|
|
</code>
|
|
You will see the listing like above. If you are not able to do 'ping www.yahoo.com' or
|
|
'ping www.google.com' then there is some trouble. See the next section 'Troubleshooting'
|
|
|
|
<sect1> Troubleshooting ISP Connection
|
|
<p>
|
|
If you are getting the connection and getting the local IP address and Remote IP address
|
|
from KPPP dialer but you are not able to do ping on a remote host like 'ping www.yahoo.com'
|
|
then do:
|
|
<code>
|
|
bash$ su - root
|
|
# ifconfig
|
|
|
|
See the listing above and temporarily disable other interfaces like eth0, eth1
|
|
# ifconfig eth0 down
|
|
# ifconfig eth1 down
|
|
# ifconfig eth2 down
|
|
|
|
# ifconfig
|
|
This should list only ppp0 and lo
|
|
</code>
|
|
Once other interfaces like eth0, eth1, eth2 are disabled, now disconnect and reconnect
|
|
with KPPP dialer. After the connection to internet is successful, you can re-enable
|
|
other interfaces as below:
|
|
<code>
|
|
bash$ ping www.yahoo.com
|
|
If connection is okay, then do:
|
|
bash$ su - root
|
|
# ifconfig eth0 up
|
|
# ifconfig eth1 up
|
|
# ifconfig eth2 up
|
|
# ifconfig
|
|
</code>
|
|
|
|
If you still have problems then refer to the KPPP user guides and FAQs as below:
|
|
<code>
|
|
$ rpm -ql kdenetwork-ppp
|
|
$ cd /usr/share/doc/HTML/en/kppp
|
|
$ docbook2html kppp-faq.docbook 1> kppp-faq.html
|
|
$ docbook2html index.docbook 1> index.html
|
|
</code>
|
|
|
|
|
|
<sect> Quick Steps to Dialup Networking
|
|
<p>
|
|
These quick steps will enable you to setup dial-up networking on Linux in just five minutes.
|
|
|
|
You need the following packages:
|
|
<itemize>
|
|
<item> wvdial*.rpm
|
|
<item> ppp*.rpm
|
|
</itemize>
|
|
You can check with <bf>rpm -qa | grep -i wvdial</bf> for
|
|
the installed packages on redhat linux. Use equivalent package commands in case of
|
|
other distributions like Debian or Slackware.
|
|
|
|
The steps below are for MS Windows NT RAS server. The NT RAS requires
|
|
<bf>noauth</bf> in wvdial file. The Linux RAS may need different settings.
|
|
In the sample example given below, you should replace username <bf>john</bf> with the
|
|
user ID given to you to login into remote RAS server.
|
|
|
|
<enum>
|
|
<item> Edit the file /etc/wvdial.conf and insert lines like
|
|
<code>
|
|
[Dialer myconnection]
|
|
Username = john
|
|
Password = passwordofjohn
|
|
Phone = 982 1956
|
|
Area Code = 713
|
|
Inherits = Dialer Defaults
|
|
Stupid mode = 1
|
|
</code>
|
|
Change john with whatever.
|
|
|
|
<p>
|
|
<item> Edit /etc/ppp/pap-secrets and insert lines like
|
|
<code>
|
|
# Secrets for authentication using PAP
|
|
# client server secret IP addresses
|
|
john ppp0 passwordofjohn
|
|
john * passwordofjohn
|
|
</code>
|
|
Change john with whatever.
|
|
|
|
<p>
|
|
<item> Edit /etc/ppp/chap-secrets and insert lines like
|
|
<code>
|
|
# Secrets for authentication using CHAP
|
|
# client server secret IP addresses
|
|
john ppp0 passwordofjohn
|
|
john * passwordofjohn
|
|
</code>
|
|
Change john with whatever.
|
|
|
|
<p>
|
|
<item> Edit /etc/ppp/options and insert lines like
|
|
<code>
|
|
lock
|
|
defaultroute
|
|
noipdefault
|
|
idle 1200
|
|
usepeerdns
|
|
proxyarp
|
|
</code>
|
|
|
|
<p>
|
|
<item> Create a new file /etc/ppp/ip-up and insert lines like
|
|
<code>
|
|
#!/bin/bash
|
|
|
|
# This file /etc/ppp/ip-up should not be modified -- make local changes to
|
|
# /etc/ppp/ip-up.local instead
|
|
|
|
LOGDEVICE=$6
|
|
REALDEVICE=$1
|
|
|
|
export PATH=/sbin:/usr/sbin:/bin:/usr/bin
|
|
|
|
[ -f /etc/sysconfig/network-scripts/ifcfg-${LOGDEVICE} ] && /etc/sysconfig/network-scripts/ifup-post ifcfg-${LOGDEVICE}
|
|
|
|
[ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@"
|
|
|
|
exit 0
|
|
</code>
|
|
|
|
<p>
|
|
<item> Create a new file /etc/ppp/ip-up.local and insert lines like
|
|
<code>
|
|
#!/bin/sh
|
|
|
|
echo " "
|
|
echo "Before doing route add......"
|
|
echo "Output from netstat -nr is : "
|
|
netstat -nr
|
|
echo " "
|
|
|
|
echo " Doing route add now.... "
|
|
# You should change the lines below and add the networks where
|
|
# your remote machines are ...
|
|
route add -net 156.15.24.0 netmask 255.255.255.0 dev ppp0
|
|
route add -net 172.28.36.0 netmask 255.255.255.0 dev ppp0
|
|
route add -net 172.28.39.0 netmask 255.255.255.0 dev ppp0
|
|
route add -net 172.28.26.0 netmask 255.255.255.0 dev ppp0
|
|
|
|
echo "After doing route add......"
|
|
echo "Output from netstat -nr is : "
|
|
netstat -nr
|
|
|
|
echo " "
|
|
</code>
|
|
When <bf>wvdial</bf> is started it automatically starts the <bf>pppd</bf>
|
|
which automatically calls this script to
|
|
add route to your remote networks via the PPP link.
|
|
See 'man pppd'.
|
|
In the example above I have to connect to remote networks 156.15.24, 172.28.36,
|
|
172.28.39 via the PPP link. You should replace these with your settings.
|
|
|
|
You can also manually add or delete the route after starting the PPP.
|
|
<code>
|
|
bash$ su - root
|
|
bash# route add -net 172.28.26.0 netmask 255.255.255.0 dev ppp0
|
|
bash# route del -net 172.23.2.0 netmask 255.255.255.0 dev ppp0
|
|
</code>
|
|
|
|
<p>
|
|
<item> Create a new file /etc/ppp/ip-down and insert lines like
|
|
<code>
|
|
#!/bin/bash
|
|
|
|
# This file /etc/ppp/ip-down should not be modified -- make local changes to
|
|
# /etc/ppp/ip-down.local instead
|
|
|
|
LOGDEVICE=$6
|
|
REALDEVICE=$1
|
|
|
|
export PATH=/sbin:/usr/sbin:/bin:/usr/bin
|
|
|
|
[ -x /etc/ppp/ip-down.local ] && /etc/ppp/ip-down.local "$@"
|
|
|
|
/etc/sysconfig/network-scripts/ifdown-post ifcfg-${LOGDEVICE}
|
|
|
|
exit 0
|
|
</code>
|
|
|
|
<p>
|
|
<item> Create a new file /etc/ppp/ip-down.local and insert lines like
|
|
<code>
|
|
#!/bin/sh
|
|
|
|
echo " "
|
|
echo "Before doing route delete ......"
|
|
echo "Output from netstat -nr is : "
|
|
netstat -nr
|
|
echo " "
|
|
|
|
echo " Doing route delete now.... "
|
|
# Lines below should be same as in ip-up.local but with delete
|
|
route del -net 156.15.24.0 netmask 255.255.255.0 dev ppp0
|
|
route del -net 172.28.36.0 netmask 255.255.255.0 dev ppp0
|
|
route del -net 172.23.2.0 netmask 255.255.255.0 dev ppp0
|
|
|
|
echo "After doing route delete ......"
|
|
echo "Output from netstat -nr is : "
|
|
netstat -nr
|
|
|
|
echo " "
|
|
</code>
|
|
When <bf>pppd</bf> is stopped it automatically calls this script to clean up
|
|
whatever ip-up script did.
|
|
See 'man pppd'.
|
|
|
|
<p>
|
|
<item> Edit /etc/ppp/peers/wvdial and insert lines like
|
|
<code>
|
|
noauth user john
|
|
name wvdial
|
|
</code>
|
|
Change john with whatever.
|
|
|
|
<p>
|
|
<item> If you have an external modem, then just before dialing,
|
|
switch off/on the power to modem to reset it.
|
|
<code>
|
|
bash$ su - root
|
|
bash# tail -f /var/log/messages
|
|
|
|
Bring up another xterm shell window and
|
|
bash$ su - root
|
|
bash# man pppd
|
|
bash# man wvdial
|
|
bash# cd /etc/ppp
|
|
bash# nohup wvdial myconnection &
|
|
bash# tail -f nohup.out
|
|
|
|
Bring up another xterm shell window and
|
|
bash$ su - root
|
|
bash# ifconfig -a
|
|
And you should see ppp device listed and up and running.
|
|
bash# netstat -nr
|
|
And you should see ppp device listed along with other interfaces.
|
|
</code>
|
|
|
|
<p>
|
|
<item> By this step the <bf>pppd</bf> should have established the routes
|
|
to remote networks with ip-up.local script. Also <bf>pppd</bf> should
|
|
have created the /etc/ppp/resolv.conf for DNS servers. Now, try connect to remote host
|
|
and verify connections.
|
|
<code>
|
|
bash$ su - root
|
|
bash# tail -100 /var/log/messages | less
|
|
bash# cat /etc/ppp/resolv.conf
|
|
bash# ifconfig -a
|
|
bash# netstat -nr
|
|
I looked for route to network 156.15.24.0 (You should see your
|
|
network as per /etc/ppp/ip-up.local)
|
|
bash# ping 156.15.24.68
|
|
bash# telnet 156.15.24.68
|
|
|
|
You can also edit /etc/hosts and add these hosts
|
|
156.15.24.64 starship
|
|
172.28.36.131 gemstone
|
|
bash# ping starship
|
|
bash# ping gemstone
|
|
bash# telnet gemstone
|
|
bash# ftp gemstone
|
|
</code>
|
|
|
|
<p>
|
|
<item> To stop the PPP :
|
|
<code>
|
|
bash$ su - root
|
|
bash# killall wvdial
|
|
bash# killall pppd
|
|
bash# man killall
|
|
</code>
|
|
|
|
<p>
|
|
<item> Now enable non-root user to do dial-up networking with PPP.
|
|
Make sure that the user belongs to the groups `uucp' and `dialout'.
|
|
<code>
|
|
bash$ su - root
|
|
bash# su - someuser
|
|
bash$ id
|
|
uid=501(someuser) gid=501(maingid) groups=501(maingid),503(staroffice),505(staff)
|
|
This shows the groups 'someuser' belongs.
|
|
|
|
bash$ exit
|
|
bash# usermod --help
|
|
bash# usermod -g maingid -G staroffice,staff,uucp,dialout someuser
|
|
bash# chgrp -R uucp /etc/ppp
|
|
bash# chmod -R ug+r /etc/ppp
|
|
bash# chmod -R o-rwx /etc/ppp
|
|
bash# chmod go-rwx /etc/ppp/*secrets
|
|
bash# chmod u+s /usr/sbin/pppd
|
|
bash# su - someuser
|
|
bash$ id
|
|
This will display groups someuser belongs and you should see uucp.
|
|
bash$ nohup wvdial myconnection &
|
|
bash$ tail -f nohup.out
|
|
</code>
|
|
It is very strongly recommended that you use wvdial as `normal' user, and make
|
|
sure that the user belongs to the groups `uucp' and `dialout'.
|
|
|
|
<p>
|
|
<item> See also the frontend tool for wvdial at <url name="X-wvdial" url="http://console-newsletter.hypermart.net/x-wvdial">.
|
|
|
|
<p>
|
|
<item> If you do not have any other interface ethernet cards for Cable modem or
|
|
DSL modem then you can setup telephone dial-up modem as the default route for all outside
|
|
conections to internet. Assuming you only have modem connection via POTS (Plain Old Telephone
|
|
System) you can do -
|
|
<code>
|
|
bash$ su - root
|
|
bash# man route
|
|
bash# ifconfig -a
|
|
And look for the IP address of the ppp device, and use it below
|
|
bash# route add default gw IP_of_ppp_device
|
|
For example -
|
|
bash# route add default gw 172.28.36.3
|
|
</code>
|
|
|
|
</enum>
|
|
<sect1> Troubleshooting<label id="troubleshoot">
|
|
<p>
|
|
In case you have problems:
|
|
<code>
|
|
bash$ su - root
|
|
bash# tail -f /var/log/messages
|
|
And then start myconnection in /etc/wvdial.conf
|
|
bash# wvdial myconnection
|
|
|
|
bash# ifconfig -a
|
|
Should list ppp
|
|
|
|
bash# netstat -nr
|
|
Should list ppp
|
|
|
|
If you have multiple interfaces, like ethernet cards to DSL or Cable modem,
|
|
to check which route is being used, do:
|
|
bash# traceroute www.yahoo.com
|
|
bash# traceroute remotehostname
|
|
</code>
|
|
<sect1> Graphical Tools <label id="graphictools">
|
|
<p>
|
|
Preference should be given the console line commands as in previous section, but
|
|
some people prefer GUI interface.
|
|
You can use graphical tools like Linuxconf, KPPP, GnomePPP and many others.
|
|
|
|
<it><bf>Note: I very strongly recommend using command-line console
|
|
commands 'wvdial' as demonstrated
|
|
in previous sections, as they are lot simpler and easy to use.
|
|
</bf></it>
|
|
|
|
<code>
|
|
bash$ su - root
|
|
bash# linuxconf &
|
|
And select Networking->Client Tasks->Routing & Gateways->Set Other Routes to networks->Add network
|
|
. Also select Networking->PPP
|
|
|
|
bash# rp3 &
|
|
bash# rp3-config &
|
|
</code>
|
|
|
|
|
|
|
|
|
|
<sect> Remote connection with VNC
|
|
<p>
|
|
Once you have connection through PPP to remote machines,
|
|
you can use the VNC to display remote machines on your local display.
|
|
<itemize>
|
|
<item> The VNC is at <url url="http://www.uk.research.att.com/vnc">
|
|
<p>
|
|
<item> Get VNC rpms from <url name="rpmfind" url="http://rpmfind.net/linux/rpm2html/search.php?query=vnc">.
|
|
<p>
|
|
<item> The best Window manager for VNC is QVWM which is like MS Windows 98/NT/2000 interface, get
|
|
it from <url url="http://www.qvwm.org">.
|
|
<p>
|
|
<item> After starting vncserver, you can start the <bf>vncviewer</bf> program on clients
|
|
like MS Windows, Mac or Linux.
|
|
<p>
|
|
<item> See also the
|
|
<url name="List of X11 Windows Managers" url="http://www.dlhoffman.com/publiclibrary/RPM/X11_Window_Managers.html">.
|
|
</itemize>
|
|
|
|
<bf>Compiling qvwm on Solaris : </bf>
|
|
On Solaris you should install the following packages which you can get
|
|
from <url url="http://sun.freeware.com"> - xpm, imlib, jpeg, libungif, giflib, libpng, tiff.
|
|
And you can download the binary package for solaris from
|
|
<url url="http://www.qvwm.org">.
|
|
|
|
Or you can download the qvwm source for solaris from
|
|
<url url="http://www.qvwm.org"> and compile it using gcc.
|
|
|
|
Troubleshooting compile:
|
|
You should put unsigned long before arg in usleep()
|
|
usleep((unsigned long) 10000)
|
|
<sect1> Microsoft "MS Outlook" Email from PPP <label id="msoutlook">
|
|
<p>
|
|
Method 1 :
|
|
<enum>
|
|
<item> At office, start VNC server on your Windows NT/2000 desktop.
|
|
<item> Connect from home using modem via PPP.
|
|
<item> Once the PPP is established, you can start the <bf>vncviewer</bf> program.
|
|
Just type <it>/usr/bin/vncviewer</it>.
|
|
<item> Enter your office Windows NT/2000 desktop's hostname and vnc password
|
|
<item> The entire desktop of your remote office Windows NT/2000 is displayed.
|
|
Now you can read your MS Outlook email.
|
|
</enum>
|
|
|
|
Method 2 :
|
|
<itemize>
|
|
<item><url url="http://www.bynari.net" name="Bynari InsightClient"> Go here click
|
|
on products->Insight Connector Outlook. Client for MS Exchange server and MS Outlook,
|
|
<item><url url="http://www.codeweavers.com/products/office" name="CrossOver Office"> has MS Outlook,
|
|
<item><url url="http://www.ximian.com/products/connector" name="Ximian Connector"> for MS Outlook/Exchange,
|
|
<item><url url="http://www.ximian.com" name="Ximian Evolution"> MS Outlook killer,
|
|
<item><url url="http://mahogany.sourceforge.net/index.html" name="Mahogany"> rated best
|
|
<item><url url="http://www.balsa.net/main.html" name="GNOME Balsa"> mail client rated 2nd best
|
|
<item><url url="http://devel-home.kde.org/~kmail" name="KDE KMail"> rated 3rd best
|
|
<item><url url="http://www.washington.edu/pine" name="PINE"> rated 4th
|
|
</itemize>
|
|
|
|
Method 3 : Web based
|
|
<itemize>
|
|
<item><url url="http://www.trlinux.com" name="POSTACI"> rated best
|
|
<item><url url="http://www.squirrelmail.org" name="SquirrelMail"> rated 2nd best
|
|
<item><url url="http://www.horde.org/imp" name="IMP Horde"> rated 3rd best
|
|
(<url url="http://rpmfind.net/linux/rpm2html/search.php?query=horde" name="horde rpm"> rated 4th best
|
|
<item><url url="http://rpmfind.net/linux/rpm2html/search.php?query=imp" name="imp rpm">)
|
|
<item><url url="http://sixxmailer.sourceforge.net" name="6XMailer">
|
|
<item><url url="http://www.netmania.org" name="Netmania mail">
|
|
<item><url url="http://nocc.sourceforge.net" name="NOCC">
|
|
</itemize>
|
|
|
|
|
|
|
|
|
|
<sect>Setup RAS server
|
|
<p>
|
|
For details on RAS please see <url url="http://www.cyclades.com/solutions/techtalk/techtalk03.php" name="RAS Buyer's Guide">
|
|
and the RAS product <url url="http://www.cyclades.com/products/stdalone/pr4000.php" name="Cyclades PR4000">
|
|
|
|
A Remote Access Server (RAS) is a network box that connects remote dialup clients to a Local Area Network (LAN. RAS are used by
|
|
Internet Service Providers (ISP) and Corporate Network Managers to allow home users, small offices, and telecommuters to connect to
|
|
the Internet or the corporate LAN from remote sites using analog phone lines or ISDN lines.
|
|
|
|
Since the mid-90's, with the popularization of the Internet, the demand for dialup remote access has been growing exponentially. Until
|
|
faster options are broadly available, analog phone lines and ISDN lines are the more common media to remotely connect personal
|
|
computers or home offices to the LAN or to the Internet.
|
|
|
|
A RAS is a box that attaches to the LAN at the central site and provides connection to dialup lines. It allows remote clients to access the
|
|
LAN (and possibly the Internet) by using modems or ISDN terminal adapters.
|
|
|
|
In the past, RS-232 Terminal Servers were used to provide remote access. A server-based or stand-alone box would attach to the LAN
|
|
and provide multiple RS-232 serial interfaces. Those serial ports were connected to a modem bank, which on its turn, connected to the
|
|
analog phone lines coming into the building.
|
|
|
|
With the crescent demand, the number of required phone lines started to grow to a point where it was impractical to increase their number
|
|
at the central site. The phone company, instead of delivering individual phone lines to you, bundle 23 or 30 channels in one T1 or E1
|
|
ISDN-PRI line.
|
|
|
|
Typically, a RAS will have one or more Ethernet ports for connection to the LAN and one or more T1/E1/ISDN-PRI ports for the incoming
|
|
calls (a T1/ISDN-PRI line is equivalent to 23 phone lines, while an E1/ISDN-PRI line is equivalent to 30 phone lines).
|
|
|
|
A RAS will typically have internal digital modems and will be able to terminate both analog and digital calls and connect to remote clients
|
|
using Point-to-Point (PPP) protocol.
|
|
<sect1>
|
|
Stand-alone or Server-Based ?
|
|
<p>
|
|
Traditionally, RAS are stand-alone, integrated and self-contained boxes running an Internetworking Operating System on a proprietary
|
|
hardware specifically designed for Remote Access. They connect to the LAN and to the income dialup lines and all you need to do is to
|
|
configure them properly to get them working.
|
|
|
|
But there is also the possibility of building a RAS using standard server hardware (usually a PC) with a Networking Operating System
|
|
(typically, Linux or Windows). The user installs PCI RAS adapter (with digital modems and ISDN-PRI interfaces) in a PC server, install
|
|
the OS and the proper device drivers and configure the system to work as a Remote Access Server.
|
|
|
|
So, maybe the first question you face when selecting a RAS solution is this: Stand-alone or server-based?
|
|
|
|
In general, stand-alone solutions are better for the average user because of the following factors:
|
|
|
|
Integration:
|
|
The RAS solution is complete and there is no need for software or hardware integration. That eliminates the possibility of hardware and
|
|
software incompatibilities and installation problems and gives you a single point of contact for technical support and problem solving.
|
|
|
|
Reliability:
|
|
Stand-alone solutions run on hardware and software that was specifically designed for remote access. They are more integrated, more
|
|
compact, dissipate less power, and, because of that, are more reliable than a solution based on general-purpose components.
|
|
|
|
Cost:
|
|
Usually, commodity PC hardware and open source software tend to drive costs down, making server-based solutions attractive for
|
|
technical users who already have the PC and are willing to face the potential problems of integrating the solution from standard
|
|
components. But, the PCI adapters for RAS available in the market today still carry a price tag that makes it difficult to justify a
|
|
server-based solution.
|
|
|
|
|
|
|
|
|
|
|
|
<sect>Related URLs
|
|
<p>
|
|
<itemize>
|
|
<item> The <bf>best document</bf> is : <url name="Mandrake Dial up networking" url="http://www.mandrakeuser.org/docs/connect/cppp.html">
|
|
<item> <url name="Suse PPP wvdial document" url="http://sdb.suse.de/sdb/en/html/daniel_wvdial.html"> and <url name="PPP categories" url="http://sdb.suse.de/sdb/en/html/katlist.INETPPP.html">
|
|
<p>
|
|
<item> <url name="PPP HOWTO" url="http://www.linuxdoc.org/HOWTO/PPP-HOWTO/index.html">
|
|
<item> <url name="PPP-NT-HOWTO" url="http://www.van-dijk.net/PPP-NT-HOWTO/PPP-NT-HOWTO.html">
|
|
<item> <url name="Modem HOWTO" url="http://www.linuxdoc.org/HOWTO/Modem-HOWTO/index.html">
|
|
<item> <url name="ISP Hookup HOWTO: Chapter 6" url="http://www.linuxdoc.org/HOWTO/ISP-Hookup-HOWTO-6.html">
|
|
<item> Simple RAS server to provide internet connectivity <url url="http://simpleras.sourceforge.net">
|
|
<p>
|
|
<item> <url name="Linux PPP FAQ" url="http://sunsite.unc.edu/pub/Linux/docs/faqs/PPP-FAQ/PPP-FAQ">
|
|
<item> <url name="PPP Design & Debugging" url="http://people.ne.mediaone.net/carlson/ppp/index.html">
|
|
<item> <url name="Suomeksi PPP page" url="http://oh3tr.ele.tut.fi/~oh3fg/index.html">
|
|
<item> <url name="Unix Serial Port Resources" url="http://www.stokely.com/unix.serial.port.resources/ppp.slip.html">
|
|
<item> <url name="Linux Dial-in server" url="http://www.swcp.com/~jgentry/dialin2.html"> - Setup guide.
|
|
<p>
|
|
<item> <url name="List of PPP utilities" url="http://freshmeat.net/search.php3?query=ppp">
|
|
go here and type "ppp" in the search box.
|
|
<item> <url name="General PPP and IPX over PPP" url="http://www.tartu.customs.ee/linux/index.shtml">
|
|
<p>
|
|
<item> <url name="VPN HOWTO" url="http://linuxdoc.org/HOWTO/VPN-HOWTO.html">
|
|
<item> <url name="VPN-Masquerade howto" url="http://linuxdoc.org/HOWTO/VPN-Masquerade-HOWTO.html">
|
|
<item> Java based <url name="MindTerm-SSH-HOWTO" url="http://linuxdoc.org/HOWTO/MindTerm-SSH-HOWTO/index.html">
|
|
</itemize>
|
|
|
|
<p>
|
|
Linux goodies main site is at <url url="http://24.221.230.253">
|
|
and secondary site at <url url="http://www.milkywaygalaxy.freeservers.com">
|
|
Mirror sites are at -
|
|
<url name="angelfire" url="http://www.angelfire.com/country/aldev0">,
|
|
<url name="geocities" url="http://www.geocities.com/alavoor/index.html">,
|
|
<url name="virtualave" url="http://aldev0.virtualave.net">,
|
|
<url name="Fortunecity" url="http://members.fortunecity.com/aldev">,
|
|
<url name="Freewebsites" url="http://aldev.freewebsites.com">,
|
|
<url name="Tripod" url="http://members.tripod.lycos.com/aldev">,
|
|
<url name="101xs" url="http://www.101xs.com/101xs/aldev">,
|
|
<url name="50megs" url="http://aldev0.50megs.com">,
|
|
|
|
|
|
|
|
|
|
<sect> Other Formats of this Document
|
|
<p>
|
|
This document is published in 14 different formats namely: DVI, Postscript,
|
|
Latex, Adobe Acrobat PDF,
|
|
LyX, GNU-info, HTML, RTF(Rich Text Format), Plain-text, Unix man pages, single
|
|
HTML file, SGML (Linuxdoc format), SGML (Docbook format), and MS WinHelp format.
|
|
|
|
This howto document is located at:
|
|
<itemize>
|
|
<item> <url url="http://www.linuxdoc.org"> and click on HOWTOs and search
|
|
for the howto document name using CTRL+f or ALT+f within the web-browser.
|
|
</itemize>
|
|
|
|
You can also find this document at the following mirrors sites:
|
|
<itemize>
|
|
<item> <url url="http://www.caldera.com/LDP/HOWTO">
|
|
<item> <url url="http://www.linux.ucla.edu/LDP">
|
|
<item> <url url="http://www.cc.gatech.edu/linux/LDP">
|
|
<item> <url url="http://www.redhat.com/mirrors/LDP">
|
|
|
|
<item> Other mirror sites near you (network-address-wise) can be found at
|
|
<url url="http://www.linuxdoc.org/mirrors.html">
|
|
select a site and go to directory /LDP/HOWTO/xxxxx-HOWTO.html
|
|
</itemize>
|
|
|
|
|
|
<itemize>
|
|
<item>
|
|
You can get this HOWTO document as a single file tar ball in HTML, DVI,
|
|
Postscript or SGML formats from -
|
|
<url url="ftp://www.linuxdoc.org/pub/Linux/docs/HOWTO/other-formats/">
|
|
and <url url="http://www.linuxdoc.org/docs.html#howto">
|
|
<p>
|
|
<item>Plain text format is in: <url url="ftp://www.linuxdoc.org/pub/Linux/docs/HOWTO">
|
|
and <url url="http://www.linuxdoc.org/docs.html#howto">
|
|
<p>
|
|
<item>Single HTML file format is in:
|
|
<url url="http://www.linuxdoc.org/docs.html#howto">
|
|
<p> A single HTML file can be created with the command (see man sgml2html) -
|
|
sgml2html -split 0 xxxxhowto.sgml
|
|
<p>
|
|
<item>Translations to other languages like French, German, Spanish,
|
|
Chinese, and Japanese are in
|
|
<url url="ftp://www.linuxdoc.org/pub/Linux/docs/HOWTO">
|
|
and <url url="http://www.linuxdoc.org/docs.html#howto">
|
|
Any help from you to translate to other languages is welcome.
|
|
</itemize>
|
|
The document is written using a tool called "SGML-Tools" which can be got from:
|
|
<url url="http://www.sgmltools.org">
|
|
Compiling the source you will get the following commands like:
|
|
<itemize>
|
|
<item>sgml2html xxxxhowto.sgml (to generate html file)
|
|
<item>sgml2html -split 0 xxxxhowto.sgml (to generate a single page html file)
|
|
<item>sgml2rtf xxxxhowto.sgml (to generate RTF file)
|
|
<item>sgml2latex xxxxhowto.sgml (to generate latex file)
|
|
</itemize>
|
|
<sect1> Acrobat PDF format <label id="acrobatpdf">
|
|
<p>
|
|
A PDF file can be generated from postscript file using
|
|
either acrobat <bf>distill</bf> or <bf>Ghostscript</bf>.
|
|
And a postscript file is generated
|
|
from DVI which in turn is generated from a LaTex file.
|
|
You can download distill software from <url url="http://www.adobe.com">
|
|
and from <url name="unix" url="http://www.adobe.com/support/downloads/acdunix.htm">
|
|
and from <url name="windows" url="http://www.adobe.com:80/support/downloads/acdwin.htm">
|
|
. Given below
|
|
is a sample session:
|
|
<code>
|
|
bash$ man sgml2latex
|
|
bash$ sgml2latex filename.sgml
|
|
bash$ man dvips
|
|
bash$ dvips -o filename.ps filename.dvi
|
|
bash$ distill filename.ps
|
|
bash$ man ghostscript
|
|
bash$ man ps2pdf
|
|
bash$ ps2pdf input.ps output.pdf
|
|
bash$ acroread output.pdf &
|
|
</code>
|
|
Or you can use the Ghostscript command <bf>ps2pdf</bf>.
|
|
ps2pdf is a work-alike for nearly all the functionality of
|
|
Adobe's Acrobat Distiller product: it
|
|
converts PostScript files to Portable Document Format (PDF) files.
|
|
<bf>ps2pdf</bf> is implemented as a very small command script
|
|
(batch file) that invokes Ghostscript, selecting a special "output device"
|
|
called <bf>pdfwrite</bf>. In order to use ps2pdf, the pdfwrite
|
|
device must be included in the makefile when Ghostscript was compiled;
|
|
see the documentation on building Ghostscript for details.
|
|
<sect1> Convert Linuxdoc to Docbook format <label id="linuxdoc2docbook">
|
|
<p>
|
|
This document is written in linuxdoc SGML format. The Docbook SGML format
|
|
supercedes the linuxdoc format and has a lot more features than linuxdoc.
|
|
The linuxdoc is very simple and easy to use. To convert linuxdoc SGML
|
|
file to Docbook SGML use the program <bf>ld2db.sh</bf> and some Perl scripts.
|
|
The ld2db output is not 100% clean and you need to use the <bf>clean_ld2db.pl</bf>
|
|
Perl script. You may need to manually correct a few lines in the document.
|
|
<itemize>
|
|
<item> Download the ld2db program from <url url="http://www.dcs.gla.ac.uk/~rrt/docbook.html">
|
|
or from <url name="Milkyway Galaxy site" url="http://www.milkywaygalaxy.freeservers.com">
|
|
<item> Download the cleanup_ld2db.pl perl script from
|
|
from <url name="Milkyway Galaxy site" url="http://www.milkywaygalaxy.freeservers.com">
|
|
</itemize>
|
|
The ld2db.sh is not 100% clean, so you will get some errors when you run it.
|
|
<code>
|
|
bash$ ld2db.sh file-linuxdoc.sgml db.sgml
|
|
bash$ cleanup.pl db.sgml > db_clean.sgml
|
|
bash$ gvim db_clean.sgml
|
|
bash$ docbook2html db.sgml
|
|
</code>
|
|
And you may have to manually edit some of the minor errors after
|
|
running the Perl script. For example you may need to put closing tag <
|
|
/Para> for each <
|
|
Listitem>
|
|
<sect1> Convert to MS WinHelp format <label id="mswinhelp">
|
|
<p>
|
|
You can convert the SGML howto document to a Microsoft Windows Help file,
|
|
First convert the sgml to html using:
|
|
<code>
|
|
bash$ sgml2html xxxxhowto.sgml (to generate html file)
|
|
bash$ sgml2html -split 0 xxxxhowto.sgml (to generate a single page html file)
|
|
</code>
|
|
Then use the tool <url name="HtmlToHlp" url="http://javadocs.planetmirror.com/htmltohlpe.html">.
|
|
You can also use sgml2rtf and then use the RTF files for generating winhelp files.
|
|
<sect1> Reading various formats <label id="readformats">
|
|
<p>
|
|
In order to view the document in dvi format, use the xdvi program. The xdvi
|
|
program is located in tetex-xdvi*.rpm package in Redhat Linux which can be
|
|
located through ControlPanel | Applications | Publishing | TeX menu buttons.
|
|
To read a dvi document give the command:
|
|
<tscreen><verb>
|
|
xdvi -geometry 80x90 howto.dvi
|
|
man xdvi
|
|
</verb></tscreen>
|
|
And resize the window with the mouse.
|
|
To navigate use Arrow keys, Page Up, Page Down keys, also
|
|
you can use 'f', 'd', 'u', 'c', 'l', 'r', 'p', 'n' letter
|
|
keys to move up, down, center, next page, previous page etc.
|
|
To turn off expert menu press 'x'.
|
|
|
|
You can read a postscript file using the program 'gv' (ghostview) or
|
|
'ghostscript'.
|
|
The ghostscript program is in the ghostscript*.rpm package and the gv
|
|
program is in the gv*.rpm package in Redhat Linux
|
|
which can be located through ControlPanel | Applications | Graphics menu
|
|
buttons. The gv program is much more user friendly than ghostscript.
|
|
Also ghostscript and gv are available on other platforms like OS/2,
|
|
Windows 95 and NT. You can view this document even on those platforms.
|
|
|
|
<itemize>
|
|
<item>Get ghostscript for Windows 95, OS/2, and for
|
|
all OSes from <url url="http://www.cs.wisc.edu/~ghost">
|
|
</itemize>
|
|
|
|
To read a postscript document give the command:
|
|
<tscreen><verb>
|
|
gv howto.ps
|
|
ghostscript howto.ps
|
|
</verb></tscreen>
|
|
|
|
You can read an HTML format document using Netscape Navigator, Microsoft Internet
|
|
explorer, Redhat Baron Web browser or any of the 10 other web browsers.
|
|
|
|
You can read the latex, LyX output using LyX an X Window front end to LaTex.
|
|
<sect1> Convert HTML to SGML html2sgml <label id="html2sgml">
|
|
<p>
|
|
To convert any HTML document to Linuxdoc SGML use the tool 'html2sgml'
|
|
from <url url="http://www.abc.se/~m9339/prog/html2sgml.html">.
|
|
|
|
|
|
|
|
|
|
<sect> Copyright
|
|
<p>
|
|
Copyright policy is GNU/GPL as per LDP (Linux Documentation project).
|
|
LDP is a GNU/GPL project.
|
|
Additional restrictions are - you must retain the author's name, email address
|
|
and this copyright notice on all the copies. If you make any changes
|
|
or additions to this document then you should
|
|
intimate all the authors of this document.
|
|
|
|
|
|
|
|
|
|
<sect> Appendix A Connecting Linux + PPP < -- > NT + RAS...
|
|
<p>
|
|
This section is written by
|
|
John Newbigin, Email:
|
|
<htmlurl url="mailto:
|
|
jn@it.swin.edu.au"
|
|
name="
|
|
jn@it.swin.edu.au">
|
|
Below is extract from
|
|
<url url="http://uranus.it.swin.edu.au/~jn/linux/ppp/linuxppp.htm">
|
|
|
|
See also
|
|
<url name="PPP HOWTO" url="http://www.linuxdoc.org/HOWTO/PPP-HOWTO/index.html">
|
|
|
|
<itemize>
|
|
<item> <bf>Part 1... The easy bit : </bf>
|
|
Use minicom or your favourite terminal program to dial the NT RAS
|
|
Server. Once you have a connection you
|
|
can proceed to Part 2. Make sure you can quit your terminal without resetting the modem.
|
|
|
|
<p>
|
|
<item> <bf>Part 2... The harder bit : </bf>
|
|
Setting up the /etc/ppp/options file may be a bit tricky. The important things to do are...
|
|
Make sure you do not have any of the following entries:
|
|
<itemize>
|
|
<item>auth #This will demand that the NT machine authenticate it's self to your machine, this is generally not
|
|
possible, or needed
|
|
|
|
<p>
|
|
<item>+pap #This will demand that the NT machine authenticates it's self using PAP, see above
|
|
|
|
<p>
|
|
<item>-pap #This says that you won't agree to use PAP
|
|
|
|
<p>
|
|
<item>+chap #This will demand that the NT machine authenticates it's self using CHAP, see above
|
|
<p>
|
|
</itemize>
|
|
Make sure the RAS server will accept plain text passwords. You need this to use PAP authentication. This can be
|
|
set by going to Control Panel -> Network -> Services -> Remote Access Service -> Properties. Select the
|
|
modem or dial up device, go to Network -> Server Settings -> Encryption Settings and select "allow any
|
|
authentication including plain text". Then hit OK, Save etc. to close it all.
|
|
|
|
<p>
|
|
<item> <bf>Part 3... The hardest bit (without this document) : </bf>
|
|
NOTE: If you use my pppd patch, you will not have to do this
|
|
|
|
In the /etc/ppp/pap-secretes file, add the following lines:
|
|
|
|
<code>
|
|
"" * ""
|
|
"jn" * "MyPassword"
|
|
</code>
|
|
|
|
Where jn is your user name on the NT machine. But what if you are a member of a
|
|
domain? Then use this instead (where csse-mm is replaced with your domain name)
|
|
<code>
|
|
"" * ""
|
|
"csse-mm\\jn" * "MyPassword"
|
|
</code>
|
|
|
|
Note that you must escape the "\" character as "\\". then, back
|
|
to the /etc/ppp/options file and add the following line:
|
|
|
|
<code>
|
|
name "jn"
|
|
or
|
|
name "csse-mm\\jn"
|
|
</code>
|
|
|
|
depending what you put in the pap-secretes file.
|
|
|
|
<p>
|
|
<item> <bf>Part 4... Another easy bit : </bf>
|
|
Dial in to the server, like in step one, or using your
|
|
custom script. Start ppp with the following line:
|
|
|
|
pppd 115200 /dev/cua1
|
|
|
|
or whatever your settings might be.
|
|
|
|
You may want to enable debug information if something does not
|
|
work, but everything should.
|
|
|
|
Run "ifconfig" and you should see an entry for ppp0. If you do then you
|
|
are cooking with gas. Restart pppd
|
|
using the "defaultroute" option and start surfing the internet.
|
|
|
|
If you are still having trouble, or can't understand any of
|
|
these instructions, drop me an e-mail
|
|
|
|
John Newbigin (
|
|
<htmlurl url="mailto:
|
|
jn@it.swin.edu.au"
|
|
name="
|
|
jn@it.swin.edu.au">
|
|
).
|
|
</itemize>
|
|
</article>
|