Modem-Dialup-NT HOW-TO
alavoor[AT?yahoo.comv1.5, 01 June 2002
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.
(The latest version of this document is
at
http://www.milkywaygalaxy.freeservers.com. You may
want to check there for changes).
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 VPN HOWTO and VPN-Masquerade howto and java based
Configuring a dial-up connection on Linux is about as simple as it is in Windows. We will use PPP.
Definition: PPP ('Point to Point Protocol') is a protocol, that makes it possible to make IP-Links (Internet Protocol) between two computers with a modem.
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) 'Remote Access Service' (RAS) link.
First, see if your modem is supported by linux. Internal Modems (!WinModems?) do not work with linux. Some !WinModems? require special tweaking to make it work in linux.
Check if you have all the needed hardware, software and data and hand:
that they rely on Windows-only software to work. Read Winmodems are not modems for more information and a compability list and check out Linmodems.org for (a few) drivers.
*
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 list of modem init-strings . If you have no clue at all, use ATZ, that works with many modems.
*
versions of pppd.
*
With an external modem, that's pretty easy. As 'root' do echo >/dev/ttyS0 and watch the modem LEDs. You should see them flicker for a moment. If not, try echo >/dev/ttyS1 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: cat /proc/pci. 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 man isapnp or man isapnp.conf. *
These quick steps will enable you to setup dial-up networking on Linux in just five minutes.
You need the following packages:
*
*
You can check with rpm -qa | grep -i wvdial 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 noauth in wvdial file. The Linux RAS may need different settings. In the sample example given below, you should replace username john with the user ID given to you to login into remote RAS server.
[Dialer myconnection? Username = john Password = passwordofjohn Phone = 982 1956 Area Code = 713 Inherits = Dialer Defaults Stupid mode = 1
Change john with whatever.
#
john ppp0 passwordofjohn john * passwordofjohn
Change john with whatever.
#
john ppp0 passwordofjohn john * passwordofjohn
Change john with whatever.
#
lock defaultroute noipdefault idle 1200 usepeerdns proxyarp
#
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
#
echo " " echo "Before doing route add......" echo "Output from netstat -nr is : " netstat -nr echo " " echo " Doing route add now.... "
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 " "
When wvdial is started it automatically starts the pppd 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.
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
#
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
#
echo " " echo "Before doing route delete ......" echo "Output from netstat -nr is : " netstat -nr echo " " echo " Doing route delete now.... "
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 " "
When pppd is stopped it automatically calls this script to clean up whatever ip-up script did. See 'man pppd'.
#
noauth user john name wvdial
Change john with whatever.
#
switch off/on the power to modem to reset it.
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.
#
to remote networks with ip-up.local script. Also pppd should have created the /etc/ppp/resolv.conf for DNS servers. Now, try connect to remote host and verify connections.
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
#
bash$ su - root bash# killall wvdial bash# killall pppd bash# man killall
#
Make sure that the user belongs to the groups `uucp' and `dialout'.
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
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'.
#
X-wvdial.
#
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 -
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
#
In case you have problems:
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
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.
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.
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 &
Once you have connection through PPP to remote machines, you can use the VNC to display remote machines on your local display.
http://www.uk.research.att.com/vnc
*
rpmfind.
*
it from
http://www.qvwm.org.
*
like MS Windows, Mac or Linux.
*
List of X11 Windows Managers. *
Compiling qvwm on Solaris :
On Solaris you should install the following packages which you can get
from
http://sun.freeware.com - xpm, imlib, jpeg, libungif, giflib, libpng, tiff.
And you can download the binary package for solaris from
http://www.qvwm.org.
Or you can download the qvwm source for solaris from
http://www.qvwm.org and compile it using gcc.
Troubleshooting compile: You should put unsigned long before arg in usleep() usleep((unsigned long) 10000)
Method 1 :
#
#
Just type /usr/bin/vncviewer. #
#
Now you can read your MS Outlook email. #
Method 2 :
* Bynari !InsightClient? Go here click on products->Insight Connector Outlook. Client for MS Exchange server and MS Outlook, *
*
*
* Ximian Connector for MS Outlook/Exchange, *
* Ximian Evolution MS Outlook killer, *
* Mahogany rated best *
* GNOME Balsa mail client rated 2nd best *
* KDE KMail rated 3rd best *
* PINE rated 4th *
Method 3 : Web based
* POSTACI rated best *
*
*
* IMP Horde rated 3rd best ( horde rpm rated 4th best *
* imp rpm) *
* 6XMailer *
* Netmania mail *
* NOCC *
For details on RAS please see RAS Buyer's Guide and the RAS product 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.
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.
Mandrake Dial up networking *
* Suse PPP wvdial document and PPP categories
*
* PPP HOWTO *
* PPP-NT-HOWTO *
* Modem HOWTO *
* ISP Hookup HOWTO: Chapter 6 *
http://simpleras.sourceforge.net
*
* Linux PPP FAQ *
* PPP Design & Debugging *
* Suomeksi PPP page *
* Unix Serial Port Resources *
* Linux Dial-in server - Setup guide.
*
* List of PPP utilities go here and type "ppp" in the search box. *
* General PPP and IPX over PPP
*
* VPN HOWTO *
* VPN-Masquerade howto *
*
Linux goodies main site is at
http://24.221.230.253
and secondary site at
http://www.milkywaygalaxy.freeservers.com
Mirror sites are at -
angelfire,
geocities,
virtualave,
Fortunecity,
Freewebsites,
Tripod,
101xs,
50megs,
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:
*
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.
*
You can also find this document at the following mirrors sites:
*
http://www.caldera.com/LDP/HOWTO
*
*
http://www.linux.ucla.edu/LDP
*
*
http://www.cc.gatech.edu/linux/LDP
*
*
http://www.redhat.com/mirrors/LDP
*
http://www.linuxdoc.org/mirrors.html
select a site and go to directory /LDP/HOWTO/xxxxx-HOWTO.html
*
Postscript or SGML formats from -
ftp://www.linuxdoc.org/pub/Linux/docs/HOWTO/other-formats/
and
http://www.linuxdoc.org/docs.html#howto
*
ftp://www.linuxdoc.org/pub/Linux/docs/HOWTO
and
http://www.linuxdoc.org/docs.html#howto
*
http://www.linuxdoc.org/docs.html#howto
A single HTML file can be created with the command (see man sgml2html) -
sgml2html -split 0 xxxxhowto.sgml
*
Chinese, and Japanese are in
ftp://www.linuxdoc.org/pub/Linux/docs/HOWTO
and
http://www.linuxdoc.org/docs.html#howto
Any help from you to translate to other languages is welcome.
*
The document is written using a tool called "SGML-Tools" which can be got from:
http://www.sgmltools.org
Compiling the source you will get the following commands like:
*
*
*
*
A PDF file can be generated from postscript file using
either acrobat distill or Ghostscript.
And a postscript file is generated
from DVI which in turn is generated from a !LaTex? file.
You can download distill software from
http://www.adobe.com
and from
unix
and from
windows
. Given below
is a sample session:
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 &
Or you can use the Ghostscript command ps2pdf. 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. ps2pdf is implemented as a very small command script (batch file) that invokes Ghostscript, selecting a special "output device" called pdfwrite. 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.
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 ld2db.sh and some Perl scripts. The ld2db output is not 100% clean and you need to use the clean_ld2db.pl Perl script. You may need to manually correct a few lines in the document.
http://www.dcs.gla.ac.uk/rrt/docbook.html
or from
Milkyway Galaxy site
*
from Milkyway Galaxy site *
The ld2db.sh is not 100% clean, so you will get some errors when you run it.
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
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>
You can convert the SGML howto document to a Microsoft Windows Help file, First convert the sgml to html using:
bash$ sgml2html xxxxhowto.sgml (to generate html file) bash$ sgml2html -split 0 xxxxhowto.sgml (to generate a single page html file)
Then use the tool
You can also use sgml2rtf and then use the RTF files for generating winhelp files.
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:
xdvi -geometry 80x90 howto.dvi man xdvi
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.
all OSes from
http://www.cs.wisc.edu/ghost
*
To read a postscript document give the command:
gv howto.ps ghostscript howto.ps
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?.
To convert any HTML document to Linuxdoc SGML use the tool 'html2sgml'
from
http://www.abc.se/m9339/prog/html2sgml.html.
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.
This section is written by
Below is extract from
http://uranus.it.swin.edu.au/jn/linux/ppp/linuxppp.htm
See also PPP HOWTO
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.
*
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:
possible, or needed
*
*
*
*
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.
*
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:
"" * "" "jn" * "!MyPassword?"
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)
"" * "" "csse-mm\\jn" * "!MyPassword?"
Note that you must escape the "\" character as "\\". then, back to the /etc/ppp/options file and add the following line:
name "jn" or name "csse-mm\\jn"
depending what you put in the pap-secretes file.
*
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 (
jn@it.swin.edu.au
). *
No other page links to HowToModemDialupNTHOWTO yet.