This directory contains the source distribution of Mobile IP mobility agent for Solaris and Linux. This distribution was developed at Sun Microsystems Laboratories, Sun Microsystems, Inc as a research prototype. Visit the following URL to get the latest information on this distribution. http://playground.sun.com/pub/mobile-ip/ This URL also describes how to obtain and install pre-compiled binary packages for Solaris Mobile IP (both SPARC and x86). For most users, this is the easiest way to use this software. If you are interested in the Linux port or would like to compile your own Solaris packages from source (either because you wish to make enhancements to the code or the binary package you obtained is based on older source*), read on. * Warning: the x86 package at the above URL may not correspond to the latest source. NOTE: You need root access in order to execute the Mobile IP software. Consult the documentation in the doc/ directory to learn more about this distribution. ======================================================================= For Solaris users (both SPARC and x86) Creating binary packages from source is a simple two-step process. 1. Find out the hardware platform (either sparc or x86) for your Solaris system by executing the command: /bin/uname -p Set the ARCH attribute in Makefile.solaris and pkg-src/pkginfo to this value. Change the CC attribute in Makefile.solaris if you are using a C compiler other than cc. [If you've made any changes to the source and would like the new version to be easily identifed, you should edit the MIPAGENT_VERSION string in mip.h. This string is printed by mipagent at startup time. You may also wish to edit the VERSION and PRODVERS attributes in pkg-src/pkginfo so pkginfo will display the new version information for your updated package.] 2. Copy the file Makefile.solaris to Makefile (or create a symbolic link called Makefile that points to Makefile.solaris) and issue the commands make clean followed by make all followed by make pkg (you need to be logged in as root for make pkg). If you see warnings related to the redefinition of u32 or u16, they can be ignored -- this will be fixed in a later revision. cp Makefile.solaris Makefile make clean make all make pkg or ln -s Makefile.solaris Makefile make clean make all make pkg These steps will create either SUNWmipma-sparc.Z or SUNWmipma-x86.Z (depending on your platform) in the pkg/ directory. Follow the package installation instructions at http://playground.sun.com/pub/mobile-ip/ [This is typically as simple as executing -- chdir pkg; uncompress SUNWmipma-.Z; pkgadd -d SUNWmipma-] ======================================================================= For Linux users: Make sure your Linux kernel was compiled with the appropriate feature set required by this Mobile IP distribution by executing the shell script linux-check-prereq. This software is known to work on the newer 2.0 kernels. In particular, it has been used with a Slackware distribution based on 2.0.30 and Redhat 5.1 (which uses 2.0.34). The IPinIP tunneling code has changed in the latest 2.1 kernels and this code will not work without suitable alterations to mipmodlinux.c. 1. Edit the CC attribute in Makefile.linux to correspond to your C compiler. Also edit the CFLAGS attribute depending on whether you are using the older C libraries or the newer glibc library (used by Redhat 5.1). [If you've made any changes to the source and would like the new version to be easily identifed, you should edit the MIPAGENT_VERSION string in mip.h. This string is printed by mipagent at startup time.] 2. Copy the file Makefile.linux to Makefile (or create a symbolic link called Makefile that points to Makefile.linux) and issue the commands make clean followed by make all. This will create an executable image called mipagent. 3. Copy the configuration file doc/mipagent.conf-sample to /etc/opt/SUNWmipma/mipagent.conf. Edit its contents to match your network environemt (see doc/mipagent.conf.4.txt, if needed) and start up the Mobile IP mobility agent by executing mipagent as root. # mipagent =======================================================================