
IP-Aliasing:
============

IP-aliases are additional IP-addresses/masks hooked up to a base 
interface by adding a colon and a string when running ifconfig. 
This string is usually numeric, but this is not a must.

IP-Aliases are avail if CONFIG_INET (`standard' IPv4 networking) 
is configured in the kernel.


o Alias creation.
  Alias creation is done by 'magic' interface naming: eg. to create a
  200.1.1.1 alias for eth0 ...
  
    # ifconfig eth0:0 200.1.1.1  etc,etc....
                   ~~ -> request alias #0 creation (if not yet exists) for eth0

    The corresponding route is also set up by this command. 
    Please note: The route always points to the base interface.
	

o Alias deletion.
  The alias is removed by shutting the alias down:

    # ifconfig eth0:0 down
                 ~~~~~~~~~~ -> will delete alias

  		   		   
o Alias (re-)configuring

  Aliases are not real devices, but programs should be able to configure and
  refer to them as usual (ifconfig, route, etc).


o Relationship with main device

  If the base device is shut down the added aliases will be deleted 
  too.


Contact
-------
Please finger or e-mail me:
   Juan Jose Ciarlante <jjciarla@raiz.uncu.edu.ar>

Updated by Erik Schoenfelder <schoenfr@gaertner.DE>

; local variables:
; mode: indented-text
; mode: auto-fill
; end:
