Linuxdoc Linux Questions
Click here to ask our community of linux experts!
Custom Search
Next Previous Contents

10. PLIP on the Source side

This section describes how to set up the plip interface in the source server. If you run into trouble, I suggest that you read the PLIP MINI-HOWTO.

Check that your lp device is not set. You should not have this entry:

     $ cat /proc/devices 
     Character devices:
     ...
     6 lp
     ...
    

If you do have it, kill the lpd daemon and remove the lp module:

     $ /etc/rc.d/init.d/lpd.init stop
     Shutting down lpd: lpd

     $ rmmod lp
    

If you can't remove the lp module then you have to recompile the kernel with lp service as a module.

Now, the "6 lp" line has disappeared from the /proc/devices file, which is a reflection of the kernel capabilities.

You are not obliged to eliminate the lp device : the scheme may work with lp. Without guarantee (it works for me). Check it yourself.

Check that your parallel port is handled:

     $ ls /proc/parport/
     0/
     
     $ cat /proc/parport/0/hardware 
     base:   0x378
     irq:    7
     dma:    none
     modes:  SPP,ECP,ECPEPP,ECPPS2
    

If you don't have any directory under /proc/parport/ then you have to load the parport and parport_pc modules:

     $ insmod parport
     $ insmod parport_pc
    

You should see this new entry in /var/log/messages:

     Oct  9 20:50:47 louloutte kernel:
     parport0: PC-style at 0x378 [SPP,ECP,ECPEPP,ECPPS2]

     Oct  9 20:50:47 louloutte kernel: 
     parport0: detected irq 7; 
     use procfs to enable interrupt-driven operation.
    

I repeat the message "detected irq 7, use procfs to enable interrupt-driven operation", so:

     $ echo 7 >  /proc/parport/0/irq
    

Using a kernel 2.4 the last command is no longer available. Use instead:

        $ insmod parport
        $ insmod parport_pc io=0x378 irq=7

Check that plip module is loaded:

     $ lsmod |grep plip
    

If plip module is not loaded, then load it:

     $ insmod plip
    

You should see something like this in /var/log/messages

     ==> /var/log/messages <==
     Oct  8 16:34:12 louloutte kernel:
     NET3 PLIP version 2.3-parport gniibe@mri.co.jp
    
     Oct  8 16:34:12 louloutte kernel: 
     plip0: Parallel port at 0x378, using IRQ 7
     

If you can't load the plip module then you have to recompile the kernel with plip service as a module.

The syslog message says the module is loaded on the plip0 interface. Configure the plip0 interface:

     $ ifconfig plip0 source pointopoint target netmask 255.255.255.255 up
    

Check that everything is okay.

     $ ifconfig plip0
     plip0     Link encap:10Mbps Ethernet  HWaddr FC:FC:C0:A8:00:02
          inet addr:192.168.0.2  P-t-P:192.168.0.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0
          TX packets:0 errors:0 dropped:0 overruns:0
          Interrupt:7 Base address:0x378 
    

Now you can ping locally the source server:

     $ ping source
     PING source (192.168.0.2): 56 data bytes
     64 bytes from 192.168.0.2: icmp_seq=0 ttl=255 time=0.3 ms
     64 bytes from 192.168.0.2: icmp_seq=1 ttl=255 time=0.2 ms
     
     --- source ping statistics ---
     2 packets transmitted, 2 packets received, 0% packet loss
     round-trip min/avg/max = 0.2/0.2/0.3 ms
    

Verify that the route to target exists:

     $ route
     Kernel IP routing table
     Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
     target          *               255.255.255.255 UH    0      0        0 plip0
    

If the route doesn't exist, add it:

     $ route add -host  192.168.0.1  dev plip0
    

When the target is configured you will be able to do a ping test:

     $ ping target
     PING 192.168.0.1 (192.168.0.1): 56 data bytes
     64 bytes from 192.168.0.1: icmp_seq=0 ttl=64 time=4.5 ms
     64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=4.3 ms
     
     --- 192.168.0.1 ping statistics ---
     2 packets transmitted, 2 packets received, 0% packet loss
     round-trip min/avg/max = 4.3/4.4/4.5 ms
    

But if you try it now you should have:

     $ ping target
     PING target (192.168.0.1): 56 data bytes
     
     --- target ping statistics ---
     5 packets transmitted, 0 packets received, 100% packet loss
    

Now, the server network is ready to work. Congratulations.


Next Previous Contents