233 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			233 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .TH SERIAL-IP 8
 | |
| .SH NAME
 | |
| serial-ip \- Serial IP (SLIP or PPP) setup
 | |
| .SH DESCRIPTION
 | |
| .de SP
 | |
| .if t .sp 0.4
 | |
| .if n .sp
 | |
| ..
 | |
| \-\-\-\-\-\-\-
 | |
| .br
 | |
| .B Note:
 | |
| This text and the serial IP code is not finished.  Code needs to be added to
 | |
| .B nonamed
 | |
| to allow it to be used both with and without a connection to the Internet,
 | |
| and by now there is a PPP program for standard Minix "out there" that will
 | |
| change everything that is said in this text.  So much to do, so little
 | |
| time...
 | |
| .br
 | |
| \-\-\-\-\-\-\-
 | |
| .PP
 | |
| This manual page describes the Minix network setup to use serial line IP.
 | |
| The serial IP protocol used can either be the older SLIP by means of the
 | |
| .BR slip (8)
 | |
| program, or PPP (Point-to-Point Protocol), the newer and better serial IP
 | |
| protocol implemented by the
 | |
| .BR ppp (8)
 | |
| program.  Alas standard Minix only supports SLIP.
 | |
| .PP
 | |
| In the following text all descriptions and examples will name SLIP or the
 | |
| .BR slip
 | |
| program, but one may just as well read PPP or
 | |
| .BR ppp .
 | |
| Where necessary the differences will be noted.
 | |
| .PP
 | |
| A typical use of the
 | |
| .B slip
 | |
| program is like this:
 | |
| .PP
 | |
| .RS
 | |
| .B "slip /dev/psip2 </dev/tty01 >/dev/tty01"
 | |
| .RE
 | |
| .PP
 | |
| The argument of the program, the
 | |
| .B /dev/psip2
 | |
| device, is one of the so-called "Pseudo IP" devices that the Minix TCP/IP
 | |
| driver
 | |
| .BR inet (8)
 | |
| offers to implement a virtual network on.  On an ethernet IP packets are
 | |
| received or transmitted by the ethernet card, but packets on a pseudo IP
 | |
| network are channeled back to or received from a program running in user
 | |
| space, such as
 | |
| .BR slip .
 | |
| Standard input and output are used by
 | |
| .B slip
 | |
| to exchange packets with another SLIP implementation.  This is normally
 | |
| through an RS-232 serial line like the second serial line
 | |
| .B /dev/tty01
 | |
| as used in the example above.
 | |
| .PP
 | |
| If we look at the flow of data over normal ethernet then this is what a TCP
 | |
| connection between two Minix machines,
 | |
| .B telnet
 | |
| for instance, looks like:
 | |
| .PP
 | |
| .in 0
 | |
| .ce 13
 | |
| [telnet]
 | |
| |
 | |
| /dev/tcp0
 | |
| |
 | |
| inet
 | |
| |
 | |
| [ethernet]
 | |
| |
 | |
| inet
 | |
| |
 | |
| /dev/tcp0
 | |
| |
 | |
| [in.telnetd]
 | |
| .PP
 | |
| One-half (!) of a SLIP connection would look like this:
 | |
| .PP
 | |
| .in 0
 | |
| .ce 12
 | |
| [telnet]
 | |
| |
 | |
| /dev/tcp2
 | |
| |
 | |
| inet
 | |
| |
 | |
| /dev/psip2
 | |
| |
 | |
| slip
 | |
| |
 | |
| [serial line]
 | |
| \&...
 | |
| .SS "Configuration for a SLIP network only"
 | |
| It is important to know that as far as
 | |
| .B inet
 | |
| is concerned the pseudo IP network is just another network, nothing special.
 | |
| So you have to convince
 | |
| .B inet
 | |
| that it has to send packets out over that network.  One does this by
 | |
| setting a default route that makes
 | |
| .B inet
 | |
| believe that there is a router somewhere on the pseudo-IP network.
 | |
| .PP
 | |
| Assume your machine has been given the IP address
 | |
| .B 192.168.0.13
 | |
| by your service provider.  Let's choose another address on that network,
 | |
| .B 192.168.0.1
 | |
| for instance.  (You can use the address of the SLIP gateway if you want
 | |
| to make it look pretty, but it doesn't really matter, anything "out there"
 | |
| is ok.)
 | |
| To make Minix aware of the situation you have to configure the pseudo IP
 | |
| network.  For Minix-vmd you need to look for the
 | |
| .B if-then-else-fi
 | |
| code in
 | |
| .B /usr/etc/rc
 | |
| that tests if
 | |
| .B /etc/rc.net
 | |
| should be run.  Copy the lines in the
 | |
| .B else
 | |
| clause that starts network daemons to
 | |
| .B /etc/rc.net
 | |
| and add the following lines to make it look like this:
 | |
| .PP
 | |
| .RS
 | |
| .nf
 | |
| # My SLIP interface address.
 | |
| ifconfig -h 192.168.0.13 -n 255.255.255.0
 | |
| .SP
 | |
| # Standard network daemons.
 | |
| daemonize rarpd $named irdpd rip inetd
 | |
| .SP
 | |
| # Default route to the outside world.
 | |
| add_route -g 192.168.0.1
 | |
| .fi
 | |
| .RE
 | |
| .PP
 | |
| For standard Minix one has to edit
 | |
| .B /etc/rc
 | |
| instead at the point of the XXX comments.  The
 | |
| .B ifconfig
 | |
| goes at the first XXX, the
 | |
| .B add_route
 | |
| at the second XXX.  The result is conceptually the same as the example
 | |
| above.  The important thing is the order: Configuration, Daemons, Routes.
 | |
| (First give addresses to the networks, let the daemons meditate over the
 | |
| results and possibly configure more networks (rarpd), then add routes to
 | |
| the configured networks.)
 | |
| .PP
 | |
| Just one thing left to do.  The system uses the first ethernet network
 | |
| .RB ( eth0 ,
 | |
| .BR ip0 ,
 | |
| .BR tcp0 ,
 | |
| and
 | |
| .BR udp0 )
 | |
| as the default network.  With the program
 | |
| .BR netdefault (8)
 | |
| you have to change the links to the default devices
 | |
| .RB ( eth / psip ,
 | |
| .BR ip ,
 | |
| .BR tcp ,
 | |
| and
 | |
| .BR udp )
 | |
| to point to the first pseudo IP network
 | |
| .RB ( psip2 ,
 | |
| .BR ip2 ,
 | |
| .BR tcp2 ,
 | |
| and
 | |
| .BR udp2 ):
 | |
| .PP
 | |
| .RS
 | |
| .B "netdefault psip2"
 | |
| .RE
 | |
| .PP
 | |
| In
 | |
| .B /etc/hosts
 | |
| list at least
 | |
| .B localhost
 | |
| and the name of your machine with its SLIP address.  This way your machine
 | |
| will boot and know its own name.  Now you need to find a way to let your
 | |
| system know the addresses of other machines.  There are three ways:
 | |
| .PP
 | |
| .RS
 | |
| List the names and addresses of any other machine you wish to talk
 | |
| to in
 | |
| .BR /etc/hosts .
 | |
| Drawback: This will quickly become a pretty long list.
 | |
| .SP
 | |
| Create an
 | |
| .B /etc/resolv.conf
 | |
| that lists a nameserver at your ISP and
 | |
| .B 127.0.0.1
 | |
| (localhost).  Drawback:  With the SLIP link down it takes 5 to 10 seconds for
 | |
| a name lookup to time out on the remote name server before the local name
 | |
| server is tried.
 | |
| .SP
 | |
| Install the above
 | |
| .B /etc/resolv.conf
 | |
| when
 | |
| .B slip
 | |
| is started, and remove it when
 | |
| .B slip
 | |
| exits.  Drawback: Long running programs only read
 | |
| .B /etc/resolv.conf
 | |
| at startup, so they don't notice it changing.
 | |
| .SP
 | |
| Run a real Internet name daemon from the
 | |
| .B named
 | |
| package.  Drawback: Nontrivial to set up.
 | |
| .SS "Configuration for a SLIP - Ethernet router (simple case)"
 | |
| XXX
 | |
| .SS "Configuration for a SLIP - Ethernet router (complex case)"
 | |
| XXX
 | |
| .SH FILES
 | |
| .TP \w'/dev/psip*'u+5n
 | |
| .B /dev/psip*
 | |
| Pseudo-IP devices for use by
 | |
| .BR slip
 | |
| and
 | |
| .BR ppp .
 | |
| .SH "SEE ALSO"
 | |
| .BR boot (8),
 | |
| .BR inet (8),
 | |
| .BR netdefault (8),
 | |
| .BR term (1),
 | |
| .BR chat (1).
 | |
| .SH BUGS
 | |
| .SH AUTHOR
 | |
| Kees J. Bot (kjb@cs.vu.nl)
 | 
