home *** CD-ROM | disk | FTP | other *** search
- LINUX PLIP MINI-HOWTO
-
- Last Update: 08/01/1996 (dd/mm/yyyy date format)
- Copyright: 1996 by Andrea Controzzi <controzz@cli.di.unipi.it>
- See the copyright message below.
-
- This HOWTO will hopefully let you build and use a Parallel Line Interface
- Protocol.
- For any question, error correction, comment and/or suggestion, my E-Mail
- address is: controzz@cli.di.unipi.it. Feel free to mail me any time you
- need help.
- First of all, most of these information come from the net-2-HOWTO, by
- Terry Dawson. This mini-HOWTO is not supposed to cover other aspects and/or
- replace the net-2-HOWTO: my goal is to give you a way to install a PLIP
- permanent connection quickly, *ONLY* this.
- Read the net-2-HOWTO and the other docs for the general information about
- the network and the config files I suggest to change.
- Last, but not least, look at my quick PLIP installation paragraph.
- The following is the index of the contents; you can quickly find the right
- paragraph searching for the string __nn__ where nn is the paragraph number.
-
- INDEX
- =====
-
- 0) Introduction: what is PLIP and why should I use it?
- 1) Hardware required to use PLIP.
- 2) Reconfigure the kernel.
- 3) Setting up the configuration files.
- 4) Kernel messages at boot time.
- 5) Common troubles.
- 6) A quick PLIP installation.
- 7) Questions? Comments? Send me feedback.
- 8) Where to find new releases of this mini-howto.
- 9) Copyright message.
-
-
- __0__ INTRODUCTION: WHAT IS PLIP AND WHY SHOULD I USE IT?
-
- There are many ways to create a connection between multiple hosts. PLIP,
- like SLIP, allow a local connection between two machines via the parallel
- ports.
- A PLIP connection is very similar to the SLIP (with a leased cable) one,
- but uses parallel ports instead of the serial ports. Parallel ports
- transfer more than one bit at a time, this means it is possible to
- achieve higher speeds than with a serial interface.
- The PLIP interface is fast enough to allow some decent tcp/ip
- functions, like NFS. So, you may have a computer with all your Linux stuff
- and another with only the minimal system, where you can mount all the rest
- from the main machine.
- The disadvantage is that most users have only one parallel port, this means
- that you won't be able to print and use PLIP together. Even with two or more
- parallel ports, using PLIP and the printer is impossible without using
- the kernel modules. Indeed, to use PLIP you must *NOT* have a kernel with
- printer support enabled (see the kernel section for more info).
- In order to use printer, you must create a printer module.
-
-
- __1__ HARDWARE REQUIRED TO USE PLIP
-
- The hardware required to set up a PLIP interface is (obviously) a free
- parallel port in both the machines and the cable.
- About the cable, this is what is written in the plip.c file, in the kernel
- 1.2.13 source:
-
- The cable used is a de facto standard parallel null cable -- sold as
- a "LapLink" cable by various places. You'll need a 12-conductor cable to
- make one yourself. The wiring is:
- SLCTIN 17 - 17
- GROUND 25 - 25
- D0->ERROR 2 - 15 15 - 2
- D1->SLCT 3 - 13 13 - 3
- D2->PAPOUT 4 - 12 12 - 4
- D3->ACK 5 - 10 10 - 5
- D4->BUSY 6 - 11 11 - 6
- Do not connect the other pins. They are
- D5,D6,D7 are 7,8,9
- STROBE is 1, FEED is 14, INIT is 16
- extra grounds are 18,19,20,21,22,23,24
-
- In my opinion you should avoid to build your own parallel null cable. A
- self-made cable may save very little money, but can add lots of headaches.
- If you wish to build your parallel cable, remember that you're doing it at
- your own risk, I reported exactly what is written in plip.c but I don't give
- warranties.
-
-
- __2__ RECONFIGURE THE KERNEL
-
- You're supposed to already know how to configure and compile the kernel,
- otherwise you must get some doc (kernel-howto or other guides).
- Anyway, for the sake of completeness, here is a quick summary of what you
- must do:
-
- NOTE: This is true for the kernel 1.2.13, the configuration may change in
- the 1.3.xx kernel series.
-
- Cd to the directory where there are the kernel sources
-
- #cd /usr/src/linux
-
- And start the configuration
-
- #make config
-
- During the configuration, make sure to answer y *at least* to the following
- questions:
-
- Networking support (CONFIG_NET) [y] y
- TCP/IP networking (CONFIG_INET) [y] y
- Network device support? (CONFIG_NETDEVICES) [y] y
- PLIP (parallel port) support (CONFIG_PLIP) [n] y
-
- You may want to answer yes also to the following questions:
-
- IP forwarding/gatewaying (CONFIG_IP_FORWARD) [n]
- IP multicasting (CONFIG_IP_MULTICAST) [n]
- IP firewalling (CONFIG_IP_FIREWALL) [n]
- IP accounting (CONFIG_IP_ACCT) [n]
- NFS filesystem support (CONFIG_NFS_FS) [y]
-
- You MUST finally answer no to the following question:
-
- Parallel printer support? [y] n
-
- Finally compile with
-
- #make dep ; make clean
- #make zlilo
-
- This will make your printer unusable, but you can still use the kernel
- modules. Please refer to the kernel guides and the kernel-HOWTO.
-
-
- __3__ SETTING UP THE CONFIGURATION FILES
-
- First of all remember to backup all the files you will change,
-
- #cp rc.inet1 rc.inet1.BACKUP
-
- may be a good idea.
- Now, if you don't have it done already, you must choose the IP addresses of
- the two machines.
- In my examples I'll use a couple of example IPs for the IPs that you'll write,
- in the standard xxx.xxx.xxx.xxx format.
-
- In the /etc/rc.d/inet1.rc file of both the machines add this (better if in
- the last part of the file):
-
- /sbin/route add -net ${NETWORK} netmask ${NETMASK}
-
- Where NETWORK and NETMASK should be set up previously. If you don't know how
- to do it, please read the NET-2-HOWTO.
- You may safely ignore these variables only in the following case.
- If you only want to connect two machines on a standalone network, you may
- pick-up any IP address, say 200.0.0.1 and 200.0.0.2 respectively.
- In this case you can safely put NETWORK="200.0.0.0" and NETMASK="255.255.255
- .0". These are the example IPs that I use in my Quick PLIP Installation (see
- below).
-
- In the file /etc/hosts of both the machines you should add the entries with
- the IP of the machines that you connect via PLIP. In my example, the entries
- are:
-
- 200.0.0.1 one # this is the "one" IP address
- 200.0.0.2 two # this is the "two" IP address
-
- Where one and two are the names of the two hosts.
-
- If you want to activate the NFS, beside answering yes during the kernel
- configuration, you must add in /etc/exports the entries that describe the
- directories that you wish to export. In my example, to be able to mount
- the directory /usr, you should add this entry:
-
- /usr two (ro)
-
- Finally, these are the commands, that must be executed with root rights,
- that activate the PLIP interface (of course the cable must be already plugged
- correctly).
- Again I use the name one and two, as example. On "one" you must type:
-
- #ifconfig plip1 one pointopoint two up
- #route add two
-
- And, if you want also the NFS:
-
- #rpc.portmap
- #rpc.mountd
- #rpc.nfsd
-
- On "two" the commands are the same, but you must write one instead of two
- and vice versa.
- One of your machines is likely to have only the PLIP connection, if this is
- true, you may also type:
-
- #route add default gw one
-
- on that machine. In my example above, two is a laptop with only a PLIP
- connection with one, so I type the above line on two.
-
- Of course you may want to have all these commands automatically done
- by a script or at boot time. You must only create a script that execute these
- commands: now you may invoke it as root when you need, or you may add a
- command (in /etc/rc.d/rc.inet2) that calls it at boot time.
- If you want to use my Quick PLIP Installation, you will find all the config
- files and the script.
-
- __4__ KERNEL MESSAGES AT BOOT TIME
-
- After you've reconfigured and compiled the kernel with PLIP support enabled,
- examine the messages with the dmesg (8) command.
- You should get something like this:
-
- NET3 PLIP version 2.0 gniibe@mri.co.jp
- plip1: Parallel port at 0x378, using assigned IRQ 7.
-
- You *must not* get a message like:
-
- lp_init: lp1 exists, using polling driver
-
- This means that you compiled the kernel with printer support enabled.
-
-
- __5__ COMMON TROUBLES
-
- So far this section is incomplete, since I'm lucky enough not to have many
- problem with PLIP. This section will be (hopefully) filled with *your*
- problems that I may solve.
-
- List of common troubles
- ------------------------
-
- The trouble is listed with a =, the solution(s) with a -
-
- = I get these messages at boot time:
- SIOCSIFADDR: No such device
- SIOCADDRT: Network is unreachable
- and when I try to set up the link as written above, I get again error
- messages like:
- SIOCSIFADDR: No such device
- SIOCSIFDSTADDR: No such device
- SIOCADDRT: Network is unreachable
- mount clntudp_create: RPC: Port Mapper failure - RPC: Unable to send
- - The kernel, for some reason, hasn't PLIP support enabled. This could be
- due to:
- . You didn't answer yes to "PLIP support? " during kernel configuration.
- . You answered yes to "Printer support? " during kernel configuration.
- . You compiled PLIP as a module, so you must load it.
-
- = I have created the script that connects my 2 computers. I set up the
- link automatically in my rc.inet2, where I call a script that creates
- the link and enables VFS.
- My "two" hosts mounts some "one"'s directories; I have added the
- correct entries in "two"'s /etc/fstab.
- If I boot "two" when "one" is down, "two" halts for some minutes
- on the "mounting remote file systems...".
- - This happens because "two" waits to mount the "one" filesystems, but
- if "one" is down you must wait until "two" is bored of waiting.
- To avoid this, you may:
- . Comment out in rc.inet2 the command that mounts the remote filesystems
- . Remove the entry in "two"'s /etc/fstab and mount the remote filesystems
- manually when and if you need.
-
-
- __6__ A QUICK PLIP INSTALLATION
-
- Before doing this mini-HOWTO, I created a quick PLIP installation set of
- files.
- In few minutes, beside compiling the kernel, you should be able to set up
- a PLIP interface.
- The tarred and gzipped set of files may be found on my Home Page, at
-
- http://www.cli.di.unipi.it/~controzz/intro.html
-
- Perhaps someone will let my files available at some ftp site.
-
-
- __7__ QUESTIONS? COMMENTS? SEND ME FEEDBACK
-
- For any questions and comments you can find me via e-mail at the address
- controzz@cli.di.unipi.it
- Feedback is welcome, any error report is precious.
- The next release should have a (your) FAQ section. So far I have put
- only a common troubles section.
-
-
- __8__ WHERE TO FIND NEW RELEASES OF THIS MINI-HOWTO
-
- This mini-HOWTO is maintained by the HOWTO coordinators and is posted
- monthly on comp.os.linux.answers and can be found in the HOWTO directory
- at sunsite and at sunsite's mirrors.
-
- Another way to find the mini-HOWTO (and to contact me) is on my Home Page,
-
- http://www.cli.di.unipi.it/~controzz/intro.html
-
-
- __9__ COPYRIGHT MESSAGE
-
- Unless otherwise stated, Linux HOWTO documents are copyrighted by
- their respective authors. Linux HOWTO documents may be reproduced and
- distributed in whole or in part, in any medium physical or electronic,
- as long as this copyright notice is retained on all copies. Commercial
- redistribution is allowed and encouraged; however, the author would
- like to be notified of any such distributions.
-
- All translations, derivative works, or aggregate works incorporating
- any Linux HOWTO documents must be covered under this copyright notice.
- That is, you may not produce a derivative work from a HOWTO and impose
- additional restrictions on its distribution. Exceptions to these rules
- may be granted under certain conditions; please contact the Linux
- HOWTO coordinator at the address given below.
-
- In short, we wish to promote dissemination of this information through
- as many channels as possible. However, we do wish to retain copyright
- on the HOWTO documents, and would like to be notified of any plans to
- redistribute the HOWTOs.
-
- If you have questions, please contact Greg Hankins, the Linux HOWTO
- coordinator, at
- gregh@sunsite.unc.edu via email, or at +1 404 853 9989.
-
- --- END ---
-