Differences between current version and previous revision of HowToPLIP.
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 3 | Last edited on Sunday, November 28, 2004 1:00:19 am | by AristotlePagaltzis | |
Older page: | version 2 | Last edited on Friday, June 7, 2002 1:07:15 am | by perry | Revert |
@@ -1,1873 +1 @@
-
-
-
-LINUX PLIP MINI-HOWTO
-
-
-
-----
-
-!!!LINUX PLIP MINI-HOWTO
-
-!!Andrea Controzzi, controzz@cli.di.unipi.itv2.1, 12 March 1998
-
-
-----
-''This HOWTO will hopefully let you build and use a Parallel Line Interface
-Protocol.''
-----
-
-
-
-
-; __NOTE__:
-
-This is a new release. There are many changes and lots of
-enhancements, but there will be still grammar and spelling errors
-(english is not my native language) and, unlikely but possible, some
-wrong or outdated info. PLEASE let me know about any errors to help me
-provide the correct information for everybody.
-
-
-The biggest changes in the release are:
-
-
-
-
-
-* SGML format
-*
-
-* a general answer to the "PLIP with win95" most asked question (the
-answer is negative, sorry)
-*
-
-* bigger and better FAQ section (thanks to the reports of countless
-users: many of them will find their comments there, as I promised!)
-*
-
-* removal of the Quick PLIP Installation files, that was useless and
-outdated.
-*
-
-* updated Dos-Linux PLIP link addendum
-*
-
-
-
-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. Sometimes I won't answer immediately, but I'll answer. If it
-happens that you don't receive anything from me after 2 weeks, this means
-that our mail system has trouble: do not hesitate to mail me again, it's
-my duty to help you. I can guarantee I'll solve your problems, but I'll
-try.
-If after many mails you don't receive answer, check your return address.
-Several times my answers did not arrive due to delivery problems, usually
-because the return address was root@myhost.
-
-
-Before sending mail read the FAQ, my answer to a question already present in
-the FAQ will not be better (but likely worse or less complete) than the
-answer you can already read.
-
-
-For questions about PLIP with DOS and Win95 please send mail to the
-authors of these chapters, I can't help you.
-
-
-First of all, a lot of technical 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. All the other info come from
-my personal experience and the help of many users that sent me comments
-and information.
-
-
-Read the net-2-HOWTO and the other docs for the general information about
-the network and the config files I suggest to change.
-
-
-
-
-
-
-
-
-!!1. Introduction: what is PLIP and why should I use it?
-
-
-
-
-!!2. Hardware required to use PLIP.
-
-
-
-
-!!3. Reconfigure the kernel.
-
-
-
-
-!!4. Kernel messages about the PLIP interface.
-
-
-
-
-!!5. Setting up the configuration files.
-
-
-
-
-!!6. Activate the PLIP link.
-
-
-
-
-!!7. FAQ.
-
-
-
-
-!!8. Patches to make PLIP and LP live together.
-
-
-*8.1 PLIP and LP together on the same port.
-
-*8.2 PLIP and LP on different ports.
-
-
-
-
-
-!!9. A PLIP link between DOS and Linux
-
-
-*9.1 DOS-Linux link.
-
-*9.2 A DOS-Linux PLIP link experience.
-
-
-
-
-
-!!10. PLIP between Linux and Windows 95.
-
-
-
-
-!!11. Questions? Comments? Send me feedback.
-
-
-
-
-!!12. Where to find new releases of this mini-howto.
-
-
-
-
-!!13. Credits.
-
-
-
-
-!!14. Copyright message.
-----
-
-!!1. 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, but uses the
-parallel 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 speed achieved depends completely on your hardware (CPU and parallel
-port) and system load, in general it may be from 5 Kb/sec up to even
-40 Kb/sec.
-
-
-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
-parallel ports it is impossible to print and use PLIP without using kernel
-modules.
-
-
-This disvantage can be also eliminated, if you have two or more parallel
-ports, applying a patch that you can find in this Mini-HOWTO.
-
-
-Finally I am now able to give a hopefully good way to set up a PLIP link
-between DOS and Linux.
-
-
-I won't stress it enough: so far nobody reported a successful link between
-Linux and Windows95.
-
-
-
-----
-
-!!2. 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. If you can configure it
-with your BIOS, set it at least as "bi-directional", but if possible in
-ECP or EPP mode.
-
-
-About the cable, this is what is written in the plip.c file, in the kernel
-2..33 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
-
-
-But I strongly advice you to read the /usr/src/linux/drivers/net/README1.PLIP
-and README2.PLIP files for more info about the cable.
-
-
-In my opinion you should avoid building 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.
-
-
-A final word about cable length: long cables (i.e. more than 10 feet or
-3 meters) may bring problems due to radio interference. If you need long
-cables you should use good and well shielded cables, but very long cables
-are not recommended: I think the maximal cable lenght should be 15 meters
-(50 feet).
-
-
-Anyway, someone mailed me that his/her 100 feet (30 meters) cable works
-fine; if someone really wants to try a PLIP connection between the
-office and his/her home (200 meters away), and has the money to spend,
-can try it, but is at his/her risk.
-
-
-
-----
-
-!!3. 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). Thanks to
-the cool work made by the kernel guys, recompiling the last kernels is a
-really easy jobs also for "common" people, so just do it. Anyway, for the
-sake of completeness, here is a quick summary of what you must do:
-
-
-__NOTE__: I suppose you are using the 2..xx kernel series. Now there is
-no need to keep the 1.2.xx kernels. There are no istructions about the
-2.1.xx kernel series, since they are for development.
-
-
-I will suppose that you use menuconfig to set up the kernel options, but
-the other tools are equivalent. I'll show how to do it with menuconfig:
-
-
-
-
-
-#make menuconfig
-
-
-
-
-I strongly advice to select
-
-
-
-
-
-Loadable module support --->
-
-
-
-
-and enable the
-
-
-
-
-
-
[[*
] Enable loadable module support
-
-
-
-
-and, if possible (i.e. you have modules.2..) the
-
-
-
-
-
-[[*] Kernel daemon support (e.g. autoload of modules)
-
-
-
-
-Then go back and choose
-
-
-
-
-
-Networking options --->
-
-
-
-
-where you should choose at least
-
-
-
-
-
-[[*] Network firewalls
-[[*] TCP/IP networking
-[[*] IP: forwarding/gatewaying
-
-
-
-
-The go back and choose at least
-
-
-
-
-
-[[*] Network device support
-<M> PLIP (parallel port) support
-
-
-
-
-If you use modules I definitely advice you to set up PLIP as a module. If
-you do so you can also, if you need to use a printer, go to
-
-
-
-
-
-Character devices --->
-
-
-
-
-and set up as a module the
-
-
-
-
-
-<M> Parallel printer support
-
-
-
-
-Now you have enabled the kernel support for PLIP. If it's the first time
-that you compile the kernel look at all the other options then save and
-exit.
-
-
-Finally compile with
-
-
-
-
-
-#make dep ; make clean
-#make zlilo
-
-
-
-
-And, if you use modules
-
-
-
-
-
-# make modules
-# make modules_install
-
-
-
-
-Now reboot your system.
-
-
-
-----
-
-!!4. Kernel messages about the PLIP interface.
-
-
-After you've reconfigured and compiled the kernel with PLIP support enabled,
-when you boot the system, if the kernel supports PLIP directly, or when you
-load (later, see below) the PLIP module if you compiled PLIP as modules, you
-should get something like this (numbers may differ):
-
-
-
-
-
-NET3 PLIP version 2.2 gniibe@mri.co.jp
-plip1: Parallel port at 0x378, using assigned IRQ 7.
-
-
-
-
-Depending upon your klogd and syslogd configuration the plip message could
-have been stored in your system log files: don't panic if you don't see the
-above message.
-If you compiled PLIP as a module and lsmod shows that the plip module is
-loaded, then it's enough.
-
-
-Please take notice of the interface name. Usually is plip1, but may be
-plip0 or even plip2, plip3, and so on. It depends on the IO Address.
-
-
-
-----
-
-!!5. Setting up the configuration files.
-
-
-__NOTE__: Some distributions, like Debian, use different config files.
-If you have a standard installation and you don't find the rc.inet* files, look
-for (different) config files in the /etc/init.d directory.
-
-
-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.
-
-
-If after this route command you get a message like this:
-
-
-
-
-
-SIOCADDRT: network unreachable
-
-
-
-
-then use this instead:
-
-
-
-----
-
-/sbin/route add -net ${NETWORK} netmask ${NETMASK} dev plip1
-
-----
-
-
-where, as usually, you'll have to use the interface name reported by
-the kernel messages (see above).
-
-
-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...1 and 200...2 respectively.
-In this case you can safely put NETWORK="200..." and NETMASK="255.255.255
-.". These are the example IPs that I use in my Quick PLIP Installation (see
-below).
-
-
-
-
-
-__NOTE__: 200...1 and 200...2 are only example IPs, I advice not to
-use these numbers definitively because they could be the addresses of real
-hosts on Internet!
-
-
-I strongly advice to choose your address between the "private address"
-intervals:
-
-
-
-
-
-10...0 - 10.255.255.255
-172.16..0 - 172.31.255.255
-192.168..0 - 192.168.255.255
-
-
-
-
-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...1 one # this is the "one" IP address
-200...2 two # this is the "two" IP address
-
-----
-
-
-Where one and two are the names you have chosen for 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)
-
-----
-
-
-For more informations about NFS, please read the specific documentation;
-don't report me problems with the NFS, I won't be able to help.
-
-
-Now reboot your system.
-
-
-
-----
-
-!!6. Activate the PLIP link.
-
-
-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).
-
-
-__NOTE__: If something unexpected happens, please doublecheck the cable
-and the spelling of the commands. If you followed the istructions correctly
-but the are still errors, read the FAQ paragraph, a lot of answers are
-already available.
-
-
-First of all confirm that there is no lp device present:
-
-
-
-
-
-# cat /proc/devices
-
-
-
-
-You mustn't see any reference to lp like this:
-
-
-
-
-
-6 lp
-
-
-
-
-If you see it, please remove (temporanely) the lp device before going on,
-if PLIP works then you can try it with lp later.
-To remove the lp device you'll have to use the rmmod if it's a module; if
-instead it's built in the kernel, you'll need to recompile the kernel with
-lp as a module (a much wiser idea).
-
-
-Again I use the name one and two, as example. On one you'll have to do
-the following steps.
-
-
-If you don't have the module automounter daemon and you compiled
-PLIP as a module, you must mount it:
-
-
-
-
-
-# insmod plip
-
-
-
-
-__NOTE__: if your parallel port is on an IRQ different from 7 and/or is
-on a IO Address different from 0x378, then you'll have to tell it to insmod.
-Find your real IRQ and IO Address (the DOS command MSD is likely to be ok,
-but don't trust it too much) and write something like this:
-
-
-
-
-
-# insmod plip io=0x278 irq=5
-
-
-
-
-Usually IRQ is 7 or 5, while IO Address is 0x378, 0x278 or 0x3bc. It is
-important that you check that the address and IRQ match the hardware settings
-(jumpers on old boards, BIOS on modern motherboards).
-
-
-If you are paranoic check that the module has been loaded with:
-
-
-
-
-
-# lsmod
-Module: #pages: Used by:
-plip 3
-
-
-
-
-Take notice of the interface name (plip0, plip1, and so on; for more details
-read the kernel messages chapter above), then set up the PLIP interface:
-
-
-
-
-
-# ifconfig plip1 one pointopoint two up
-
-
-
-
-__NOTE__: if your parallel port is on an IRQ different from 7 and/or is
-on a IO Address different from 0x378, then you'll have to tell it to ifconfig.
-Use the same IRQ and IO Address reported by the kernel messages and write
-something like this:
-
-
-
-
-
-# ifconfig plip1 irq 7
-# ifconfig plip1 io_addr 0x3bc
-
-
-
-
-Usually IRQ is 7 or 5, while IO Address is 0x378, 0x278 or 0x3bc.
-
-
-Now check that it worked...
-
-
-
-
-
-# ifconfig
-.....
-.....
-plip1 Link encap:10Mbps Ethernet HWaddr FC:FC:C8:00:00:01
-inet addr:200...1 P-t-P:200...2 Mask:255.255.255.
-UP POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
-RX packets:0 errors:0 dropped:0 overruns:
-TX packets:0 errors:0 dropped:0 overruns:
-Interrupt:7 Base address:0x378
-
-
-
-
-Add the route to two...
-
-
-
-
-
-# route add two plip1
-
-
-
-
-And, if you want also the NFS for two:
-
-
-
-
-
-# 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 and that machine is two, 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.
-
-
-Finally check with a
-
-
-
-
-
-# ping two
-
-
-
-
-from one and a
-
-
-
-
-
-# ping one
-
-
-
-
-from two to see that all is working.
-
-
-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.
-
-
-To tune your PLIP, you can use the plipconfig command, see the
-man page for more informations.
-
-
-To shutdown PLIP, you need only to do:
-
-
-
-
-
-# ifconfig plip1 down
-
-
-
-
-which removes also the route entries. If you don't have the automounter
-daemon, then remove also the module:
-
-
-
-
-
-# rmmod plip
-
-
-
-
-
-----
-
-!!7. FAQ.
-
-
-This section will (hopefully) solve your problems. If you have any other
-question, feel free to mail me anytime.
-
-
-
-
-
-*I get these messages at boot time (or when I load the plip module):
-
-
-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.
-***
-
-***You are addressing the wrong port, i.e. you wrote for instance plip1
-instead of plip0.
-***
-
-
-**
-
-
-*
-
-*Is there a way to support both PLIP and LP, beside modules, perhaps with
-two parallel ports?
-
-
-**Yes, so far there are two ways, described in the "Patches to make PLIP
-and LP live together":
-
-
-***You can apply a patch to make the kernel support both.
-***
-
-***You can apply another patch to make the kernel use a parallel port
-for PLIP and another for LP.
-***
-
-
-**
-
-
-*
-
-*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 NFS.
-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.
-***
-
-***A better solution would be for "two" to detect upon booting whether
-"one" is up, and mount the filesystem if it is. This can be
-accomplished by replacing the mount command in rc.d or whereever
-with something like the following:
-----
-
-if ping -c 5 one ; then
-mount one:/.....
-fi
-
-----
-
-***
-
-
-**
-
-
-*
-
-*My link is up, but ping fails. I receive the following message from the
-kernel:
-
-
-plip1: timed out (1, 89)
-
-
-or similar messages.
-
-
-**This means that the "your side of the link" is working, your machine
-sends the signal, but the "other side" isn't answering or your side is
-not waiting at the proper IRQ/IO Address.
-This is the most common problem and, alas, has a lot of possible reasons,
-usually bad cable or wrong IRQ and/or IO Address. The wrong IRQ is the
-source of over 60% of the problems, so it's very likely that changing it
-will remove the problem.
-Here is a detailed list of possible reasons:
-
-
-***The cable isn't plugged properly or is broken or is wrong. Check it, if
-possible, between two Linux hosts which already work with PLIP. If it
-is not possible, then at least test the cable with a tester. The fact
-that the cable worked/not worked with DOS/win95 is a good/bad omen
-but is not a proof.
-***
-
-***The "other side" machine has not PLIP up.
-***
-
-***You are linked with a notebook with a not proper parallel port, see
-below.
-***
-
-***You have a really cheap parallel port that is a simple "printer" port,
-so can send and not receive.
-***
-
-***Your parallel port is not set as (at least) bi-directional. Do it in
-the BIOS configuration. Advanced parallel port settings like EPP or
-ECP are ok.
-***
-
-***The parallel ports have different irq, so you have to load the plip
-module (or the lp module) with a different irq. Go back to the chapter
-"Activate the PLIP link" and choose a different irq.
-***
-
-***Some other device may have shared your irq (which usually is irq 7),
-it may be a sound card. Do not trust DOS programs like MSD, instead
-try to load the plip module with a different irq.
-***
-
-
-**
-
-
-*
-
-*I put the right IRQ and IO Address, but it still doesn't work. I got the
-addresses from the MSD command.
-
-
-**I got a report from MSD giving wrong port addresses. Try to use this
-program: http://www.cs.caltech.edu/ huny/para13.zip.
-**
-
-
-*
-
-*My link is up, and ping works. I sometimes receive the following message
-from the kernel:
-
-
-plip1: timed out (1, 89)
-
-
-or similar messages.
-
-
-** This means that the other side has not answered before the timeout.
-If all is working, you can ignore these messages: usually means that the
-other side is much slower than yours, either due to older hardware or more
-load. You can try to tune PLIP with the plipconfig command.
-**
-
-
-*
-
-*I have installed the PLIP connection but if I ping I get 100% data loss.
-I connected my desktop with a notebook.
-
-
-**Some notebook's parallel ports aren't good for PLIP, because they are
-only "printer ports", i.e. they can only transmit but not receive the
-data. So far I don't know if there is a way to make them work.
-The only hope is:
-
-
-***Look at your notebook setup, perhaps there is a way to configure
-the parallel port as a parallel port instead of a printer port. Usually
-is called "parallel enhanced mode".
-***
-
-***Try plip mode . Alas I don't know how to do it and/or if it works
-or is still available in the last kernels.
-***
-
-
-**
-
-
-*
-
-*What speeds can I achieve with PLIP?
-
-
-**This is an hard question to answer to, because there are MANY factors
-that can change deeply your performance:
-
-
-***The CPU speed on both the sides of the link.
-***
-
-***The parallel port type and settings.
-***
-
-***The system load.
-***
-
-***What do you use PLIP for.
-***
-
-Just to give a rough idea, you should achieve about 40Kbytes/sec, much
-faster than any serial rate and near to a low-level ethernet card.
-**
-
-
-*
-
-*What happens if I need to ifconfig up and ifconfig down many times plip1?
-
-
-**Seems that you need to add a -arp to the ifconfig command, except for
-the first time after each boot. I don't need, but perhaps someone does.
-**
-
-
-*
-
-*I have read the IP numbers reserved for private networks and your
-200...1 and 200...2 are not in these ranges. Shouldn't they be changed?
-
-
-**Yes, they should. But as I underline since the beginning I choose these
-IP addresses only because of their simplicity, you are free to change
-them as you wish. Here is a cut from the net-2-howto:
-
-
-RFC1597 has specifically reserved some IP addresses for private
-networks. You should use these as they prevent anything nasty
-happening if you accidentally get connected to the Internet. The
-addresses reserved are:
-10...0 - 10.255.255.255
-172.16..0 - 172.31.255.255
-192.168..0 - 192.168.255.255
-
-
-
-**
-
-
-*
-
-*Is there a way to fine tune PLIP parameters without editing the source
-code?
-
-
-**Yes, there is. Try the /sbin/plipconfig command. See the man page for
-more info.
-**
-
-
-*
-
-*I'm running Debian GNU/Linux, and under Debian, the files
-/etc/rc.d/rc.inet1 and 2 do not exist. Where must I write the plip
-configuration commands?
-
-
-**In Debian GNU/Linux you must edit /etc/init.d/network, where you have to
-put all the commands that should stay in rc.inet1 and 2.
-**
-
-
-*
-
-*I have some problems linking two hosts with PLIP. The first has the
-latest kernel, the second still uses the 1..x PLIP version: is this a problem?
-
-
-**Yes, it's much better, where is possible, to have the same PLIP
-version on both ends. In the plip.c is written that the actual PLIP cannot
-work with the 1..xx PLIP.
-**
-
-
-*
-
-*Right now PLIP works with 4 bits, what about the 8 bit PLIP I've read
-in the kernel docs? I think is called Mode 1.
-
-
-**This Mini-!HowTo is for configuration, for technical informations please
-read the /usr/src/linux/drivers/net/README*.PLIP files or contact the
-author. What I know is only this: the standard PLIP uses "null printer"
-cables and is the Mode 0 (don't confuse it with plip0, which is the
-interface name), which uses 4 bits; Mode 1 uses 8 bits and should be
-available already, but will need an handmade cable and will work only
-between 2 Linux hosts. I don't know, once you got the cable, how to set up
-the Mode 1 PLIP link; if somebody does, please let me know.
-**
-
-
-*
-
-
-
-
-----
-
-!!8. Patches to make PLIP and LP live together.
-
-
-The best way to make PLIP and LP live together is to use kernel modules: you
-can load plip.o and unload it when you need to print or vice versa.
-If you do really need to use both PLIP and LP, try the following patches.
-
-
-
-
-!!8.1 PLIP and LP together on the same port.
-
-
-
-If for some reason you wish PLIP and LP supported directly by the kernel,
-you can try these patches.
-
-
-You must modify the following pieces of code, but ''backup'' the files
-before:
-
-
-
-----
-
-******** modifications to linux/drivers/char/lp.c ***********************
-struct lp_struct lp_table[[] = {
-{ 0x3bc, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL,
-NULL, },
-/* { 0x378, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL,
-NULL, },
-{ 0x278, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL,
-NULL, },
-*/
-};
-#define LP_NO 1
-******** modifications to linux/drivers/net/Space.c ********************
-#if defined(PLIP) || defined(CONFIG_PLIP)
-extern int plip_init(struct device *);
-static struct device plip2_dev = {
-"plip2", , , , , 0x278, 2, , , , NEXT_DEV, plip_init, };
-static struct device plip1_dev = {
-"plip1", , , , , 0x378, 7, , , , &plip2_dev, plip_init, };
-/* static struct device plip0_dev = {
-"plip0", , , , , 0x3BC, 5, , , , &plip1_dev, plip_init, };
-*/
-# undef NEXT_DEV
-# define NEXT_DEV (&plip1_dev)
-#endif /* PLIP */
-
-----
-
-
-Of course there is the standard disclaimer: ''I received these patches and
-I put them "as I got them". This means that you try them at your own risk.''
-Anyway, your biggest trouble should be only restore the original files and
-recompile.
-
-
-
-
-!!8.2 PLIP and LP on different ports.
-
-
-
-If you have at least 2 parallel ports you can try these patches, that
-should allow you to use PLIP on a port and LP on the other.
-
-
-
-
-
-#Comment out one line in kernel source file, drivers/char/lp.c.
-----
-
-struct lp_struct lp_table[[] = {
-{ 0x3bc, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
-{ 0x378, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
-/* { 0x278, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, }, */
-};
-3 -> 2
-
-----
-
-#
-
-#Kernel configuration
-
-
-PLIP (parallel port) support (CONFIG_PLIP) [[n] y
-Parallel Printer support [[y] y
-
-
-
-#
-
-#Kernel message at startup
-
-
-lp1 at 0x0378, using polling driver
-.....
-NET3 PLIP version 2.0 gniibe@mri.co.jp
-plip2: Parallel port at 0x278, using assigned IRQ 5.
-
-
-
-#
-
-
-
-Again the standard disclaimer, like section 8.1.
-
-
-
-
-
-
-----
-
-!!9. A PLIP link between DOS and Linux
-
-
-After the first release of this Mini-!HowTo many people wrote for info about
-a link between Linux and DOS (or Windows) computer. The general interest
-lead me to add this chapter, I hope will be of help to everybody.
-
-
-This section comes from an article I've found on Linux Gazzette by James
-!McDuffie <mcduffie@scsn.net> . It covers the basic installation of a PLIP
-link between Linux and a DOS computer using Windows and Trumpet !WinSock
-and gives the address of a cool program that let's you run X-Windows
-programs on Windows.
-
-
-The last section is an addendum sent by James Vahn
-jvahn@short.circuit.com
-where he describes deeply how to set up this link and how to solve many
-problems.
-
-
-__For any questions about this chapter please contact him, not me.__
-
-
-
-
-!!9.1 DOS-Linux link.
-
-
-
-I suppose you have already set up properly the PLIP support on the Linux
-side and you have got the right cable, else go back to the previous chapters.
-
-
-Now, for the DOS side, you need first of all a packet driver. It can be
-found
here:
-
-
-
-ftp://ftp.crynwr.com/drivers/plip.zip
-
-The program runs under DOS and acts like a Ethernet Packet driver.
-If you want to use PLIP with Windows you need also Trumpet Winsock. This
-serves as the TCP/IP interface. Otherwise, you can probably find TCP/IP
-software for DOS.
-
-
-Now go back to the Linux computer and add the DOS computer address to
-/etc/hosts. If your DOS computer does not have a registered IP address
-you may choose any address (remember the warning of chapter 3 about IP
-addresses).
-
-
-Now let's suppose you chose the name linux for the Linux computer and dos
-for the DOS one. You have to type:
-
-
-
-
-
-ifconfig plip1 linux pointopoint dos arp up
-route add dos
-
-
-
-
-Of course if you want to have this done every time you boot the linux
-computer you may add these lines to the file /etc/rc.d/rc.inet1:
-
-
-
-----
-
-/sbin/ifconfig plip1 linux pointopoint dos arp up
-/sbin/route add dos
-
-----
-
-
-This sets up the interface and then adds a route to it. Of course if you
-are using the second parallel port you have to write plip2 instead.
-
-
-Go back to the DOS/Windows computer and edit autoexec.bat, you have to
-add the following lines.
-
-
-
-----
-
-c:\plip\plip.com 0x60
-c:\tcpip\winsock\winpkt.com 0x60
-
-----
-
-
-Of course I suppose you put plip.com (the packet driver) in the directory
-c:/plip and the winpkt.com in c:/tcpip, else you need to put the right path.
-
-
-This sets the plip.com program on packet vector 0x60 and then loads the
-winpkt.com program that comes with trumpet winsock on the same vector.
-If the cable is something other than lpt1 you will have to tell plip.com
-the irq number and io address. Also, winpkt.com needs to run to make the
-packet vector avaliable to Windows. From here we go to the actual setup
-under Trumpet Winsock. All you have to do is unselect SLIP or PPP and
-enter 60 into the box labeled Packet vector. Then tell it the IP address
-you gave it, the IP address of the Linux computer as the default gateway
-and the Name Server as either you computer's ip or your ISP's address
-for its nameservers if your going to connect it to the Internet (more on
-this later). Close the setup and re-run Winsock and you should have it!
-Put winsock in your startup group and you have everything setup automatically!
-
-
-If you want to access the Internet through the Linux computer on the Windows
-computer you will need to set up IP Masquerading, for info on this see the
-NET-2-HOWTO. This simply masquerades the Windows computer with your Linux
-computer's IP address.
-
-
-Also I have found a program that lets you run X-Windows programs under
-Windows! It is located at:
-
-
-
-http://www.tucows.com/
-
-Set it up according to directions and then all you have to do is telnet
-in from the Windows computer then set the display to the Windows computer
-(`DISPLAY=duncan:.` for instance) and run the program desired.
-There is nothing cooler than running xv under Windows! Hope all this helped.
-
-
-
-
-!!9.2 A DOS-Linux PLIP link experience.
-
-
-
-__NOTE:__ I received this document from James Vahn
-jvahn@short.circuit.com.
-I put it here unchanged. This means that __for any question about this
-section he's much better qualified than me so please mail to him than to
-me__.
-His experience with a PLIP connection of a floppy-only DOS computer to a
-Linux one is the perfect example of how to work-around common problems.
-
-
-__Last Update 11 July 1996__
-
-
-My floppy-only DOS box is networked via PLIP to the second printer port on
-the Linux machine. The first Linux printer port has a printer on it, both are
-permanently connected and the DOS box is telnet'd into Linux. These are my
-notes on what I did to accomplish this.
-
-
-When the kernel probes for printer ports, it will grab all of them unless you
-remove one from the probe. Otherwise PLIP will get nothing. One method is to
-load the drivers as modules when needed...
-
-
-<gniibe@mri.co.jp> writes:
-
-
-I keep recommending using PLIP/LP as kernel module, since
-
-
-*modules are flexible for change of configuration
-*
-
-*(re)compiling the kernel is not easy for novice users
-*
-
-*co-existing PLIP and LP is only feasible by the modules
-*
-
-
-
-With PLIP/LP as kernel module, you can specify which port is PLIP and
-which port is LP. Here is example:
-
-
-
-
-
-# insmod lp.o io=0x378
-# insmod plip.o io=0x278 irq=2
-
-
-
-
-Even you can use two parallel ports:
-
-
-
-
-
-# insmod plip.o io=0x278,0x3bc irq=2,5
-
-
-
-
-In the example above,
-
-
-plip0 is assigned on 0x278 and it's irq is 2,
-
-
-plip1 is assigned on 0x3bc and it's irq is 5, respectively.
-
-
-
-
-
-
-
-
-Using modules certainly sounds like the way to go. The following method shows
-how to patch the kernel to allow both a printer and PLIP on different ports,
-without modules. If you are unfamiliar with the module concept, you might
-find this quicker to set up.
-
-
-You will need to modify two files in the kernel source tree. I'm using kernel
-1.2.13 and found some changes were needed in ../linux/drivers/net/Space.c to
-accommodate my system. Look at around line 205 for the PLIP definitions to
-make sure your port and IRQ match, and make a note of which driver it will be
-(plip0, plip1, plip2). In my case port 0x278 uses IRQ 5 (the card is jumpered
-that way) but Space.c defined it with IRQ 2. I made the changes here, rather
-than opening up the box and changing jumpers. The alternative is to specify
-the IRQ through ifconfig later on, but the kernel will boot up with the wrong
-IRQ for PLIP and it may annoy you. It is a simple (single character) change.
-
-
-The next, and more difficult step:
-
-
-In .../drivers/char/lp.c you will find the following at around line 38:
-
-
-
-----
-
-struct lp_struct lp_table[[] = {
-{ 0x3bc, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
-{ 0x378, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
-/* { 0x278, , , LP_INIT_CHAR, LP_INIT_TIME, LP_INIT_WAIT, NULL, NULL, },
-* 0x278 reserved for plip1
-*
-* };
-* #define LP_NO 3
-*/
-};
-#define LP_NO 2
-
-----
-
-
-Notice the changes to make- one port is commented out, so now only 2 ports
-are defined. Port 0x3BC will probably not work for PLIP- the IRQ line is
-usually broken on these ports, as found on old monochrome adapters (MDA).
-
-
-You made backups of these file before you changed them, right? Now make a
-new kernel with printer, net, dummy, and plip support.
-
-
-Configure the system. This is my /etc/rc.d/rc.inet1 file:
-
-
-
-----
-
-#!/bin/bash
-#
-/sbin/ifconfig lo 127...1
-/sbin/route add -net 127...
-/sbin/ifconfig dummy 200...1
-/sbin/route add -net 200...0 netmask 255.255.255.
-/sbin/ifconfig plip1 arp 200...1 pointopoint 200...2 up
-/sbin/route add 200...2
-/sbin/ifconfig dummy down
-
-----
-
-
-Notice that arp is used for the DOS-to-Linux connection, apparently not used
-on Linux-to-Linux connections.
-
-
-And in /etc/hosts you can add these, just to give the two machines names:
-
-
-
-----
-
-200...1 console1
-200...2 console2
-
-----
-
-
-The DOS box is console2. Note Andrea's warning about these, better to use
-official numbering schemes.
-
-
-Reboot so all of these changes and the new kernel will take effect. During
-the boot sequence (or by running dmesg) if you made the patches, otherwise
-when the modules are loaded:
-
-
-lp0 at 0x03bc, using polling driver
-lp1 at 0x0378, using polling driver
-[[....]
-NET3 PLIP version 2.0 gniibe@mri.co.jp
-plip1: Parallel port at 0x278, using assigned IRQ 5.
-
-
-
-
-The "route" command shows this:
-
-
-
-
-
-Kernel routing table
-Destination Gateway Genmask Flags MSS Window Use Iface
-console2 * 255.255.255.255 UH 1436 0 136 plip1
-loopback * 255...0 U 1936 0 109 lo
-
-
-
-
-And "ifconfig plip1" shows:
-
-
-
-
-
-plip1 Link encap:10Mbps Ethernet HWaddr FC:FC:C8:00:00:01
-inet addr:200...1 P-t-P:200...2 Mask:255.255.255.
-UP POINTOPOINT RUNNING MTU:1500 Metric:1
-RX packets:132 errors:0 dropped:0 overruns:
-TX packets:136 errors:0 dropped:0 overruns:
-Interrupt:5 Base address:0x278
-
-
-
-
-Look at /etc/inetd.conf and see if telnet is enabled. You might want to read
-the man page for tcpd, and the use of /etc/hosts.allow (ALL: LOCAL) and
-/etc/hosts.deny (ALL: ALL). You should be able to "telnet localhost".
-
-
-Linux is done, now the DOS side. Again, be suspicious of port 0x3BC if one is
-present.
-
-
-I'm using NCSA's telnet and Crynwr's PLIP driver found at these sites:
-
-
-
-ftp://ftp.ncsa.uiuc.edu/Telnet/DOS/ncsa/tel2308b.zip
-
-
-ftp://ftp.crynwr.com/drivers/plip.zip
-
-Be sure to use NCSA's version 2.3.08 telnet and version 11.1 of Crynwr's
-PLIP driver. Please find and read Crynwr's SUPPORT.DOC located elswhere.
-
-
-The CONFIG.TEL file. Most of it is the default and to save some space
-I've tried to cut it back here to just the info you need (hopefully). The
-second port on this machine is setup as 0x278 on IRQ 5.
-
-
-
-----
-
-myip=200...2
-netmask=255.255.255.0 # subnetting mask
-hardware=packet # network adapter board (packet driver interface)
-interrupt=5 # IRQ which adapter is set to
-ioaddr=60 # software interrupt vector driver is using
-#
-#[[...lots unchanged...]
-#
-# at the end of the file, put this line:
-name=console1 ; hostip=200...1 ; nameserver=1 ; gateway=1
-
-----
-
-
-(console1 is the name of the Linux machine, you can use whatever you like)
-
-
-I made a 12 foot null cable between both machines, and (after initially
-finding it miswired) there have been no problems. A standard 11-wire null
-printer cable should work too. The Linux plip.c source shows the wiring.
-Although my cable has the 17-17 connection, I don't think it is used for
-anything and was not present on a ready-made cable.
-
-
-
-----
-
-@echo off
-plip.com 0x60 5 0x278
-telbin -s console1
-
-----
-
-
-That should connect you to the Linux box on /dev/ttyp. NCSA's telnet
-provides for 8 virtual screens and also acts as an ftp server. The PLIP
-interface provides a fair throughput, I'm getting 6.5K/s file transfers
-with my antiques. Let's hope you can do better. :-)
-
-
-
-----
-
-!!10. PLIP between Linux and Windows 95.
-
-
-This section is empty. I use windows 95 for nothing serious but games, so
-I don't try and don't care about a PLIP link with Linux.
-The questions about such a link have won the most asked question contest,
-so I give here a (so far) definitive answer.
-
-
-No, so far nobody reported me a successful link between Linux and Windows 95.
-if somebody succeds in setting up this link, please let me know immediately:
-thousand of PLIP users await these news!
-
-
-
-----
-
-!!11. 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 will have an even larger FAQ section, if you send
-questions and, of course, the answers if you find them by yourself.
-
-
-Please do not send questions already present in the FAQ.
-
-
-If you have to ask me for help, please be sure to let me know any information
-that can help me, at least: kernel version, commands used, error messages,
-the cable you used and any other system message related to PLIP.
-
-
-__Please remember not to send me any question about PLIP with
-DOS/Windows 3.1/Windows 95, I can't help you. These questions should be sent
-to James Vahn
-jvahn@short.circuit.com,
-who sent me the DOS addendum. Again: it's useless to ask him or me about
-PLIP with Windows 95.__
-
-
-
-----
-
-!!12. 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 (italian language)
-
-
-
-http://www.cli.di.unipi.it/~controzz/intro_e.html (english
-language)
-
-
-
-----
-
-!!13. Credits.
-
-
-Many thanks to:
-
-
-*Rick Lim <ricklim@freenet.vancouver.bc.ca> for the patches to
-make PLIP and LP live together.
-*
-
-*Takeshi Okazaki <GBA03552@niftyserve.or.jp> for the patches to
-use PLIP and LP on two different parallel ports.
-*
-
-*Jim Van Zandt <jrv@vanzandt.mv.com> for some advice on the
-"tutorial" part of this HOWTO.
-*
-
-*Fernando Molina <fmolina@nexo.es> for useful comments about IRQs
-and IO Addresses.
-*
-
-*James Vahn <jvahn@short.circuit.com> for the cool addendum on the
-PLIP between DOS and Linux chapter.
-*
-
-*To all the users that posted PLIP-related articles on the linux
-newsgroups and/or mailed me. The list of all the people that helped me with
-info and comments could be longer than the Mini-HOWTO itself: thank you all!
-*
-
-
-
-
-----
-
-!!14. 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
-linux-howto@sunsite.unc.edu via email
.
-----
+Describe
[HowToPLIP
] here.