Re: Make ipconfig.c work as a loadable module.

Russell King
2003-03-08T16:09:05Z

On Sat, Mar 08, 2003 at 09:07:11AM -0700, Eric W. Biederman wrote:
> With a good bootloader it does not much how big your initrd is. I
> totally agree that small is good and important. At the same time
> ipconfig.c is wrong. It is great during development and on systems
> with a single NIC. But the hard coded policies can be bad for
> production systems. Not that hard coded policies are bad in general
> just the kernel is the wrong place to put them.

With multi-NIC systems, it is perfectly possible to use ipconfig.c with
one specific interface.

/*
* Decode any IP configuration options in the "ip=" or "nfsaddrs=" kernel
* command line parameter. It consists of option fields separated by colons in
* the following order:
*
* <client-ip>:<server-ip>:<gw-ip>:<netmask>:<host name>:<device>:<PROTO>
*
* Any of the fields can be empty which means to use a default value:
* <client-ip> - address given by BOOTP or RARP
* <server-ip> - address of host returning BOOTP or RARP packet
* <gw-ip> - none, or the address returned by BOOTP
* <netmask> - automatically determined from <client-ip>, or the
* one returned by BOOTP
* <host name> - <client-ip> in ASCII notation, or the name returned
* by BOOTP
* <device> - use all available devices
* <PROTO>:
* off|none - don't do autoconfig at all (DEFAULT)
* on|any - use any configured protocol
* dhcp|bootp|rarp - use only the specified protocol
* both - use both BOOTP and RARP (not DHCP)
*/

ip=:::::eth0:dhcp

(I haven't actually tried this though.)

However, how do you configure your ramdisk via the boot loader to use
a specific NIC / mount a specific filesystem, etc?

--
Russell King (rmk@arm.linux.org.uk) The developer of ARM Linux