    IP Aliasing ϱ mini HOWTO
  Harish Pillay, <h.pillay@ieee.org>
  0.?, 1997 1 13

  ̱ ڽ  IP aliasing  ϰ  
   ̴. , Alias  IP E-mail   ֵ 
       ִ.  Primary site:
  <http://home.pacific.net.sg/~harish/linuxipalias.html>
  ______________________________________________________________________

  

  1.  ȯ
  2.   
  3.  亯
     3.1 ýÿ  ȯ漳 ų  ִ°?
     3.2 IP aliased  e-mail ¾

  4.   ´.

  ______________________________________________________________________

  1.   ȯ

     Ŀ 2.0.27 (from ftp.funet.fi:/pub/Linux/kernel/src/v2.0)

    IP Alias εҼ ִ  ϵǾ.  IP Masq
       ϰ ʹٸ, Ŀ Ͻ "make config"  
     ִ. Modules HOWTO оų,
     /usr/src/linux/Documentation/modules.txt Ȯ  ִ.

     ΰ IP   ̰  ΰ ̹  ο ̴.

    D-Link DE620 Ĺ ƴŸ(  ƴŸ  ߿
     ʴ.)

  2.    

  ù° IP Alias   Ѵ. (̸  Ŀη  ,
   ܰ踦 پѾ ȴ.)

            /sbin/insmod /lib/modules/`uname -r`/ipv4/ip_alias.o

  ι°,   eth0  ٸ IPѹ eth0
  ̽ ؼ  IPѹ ۵Ǿ Ѵ.

            /sbin/ifconfig lo 127.0.0.1
            /sbin/ifconfig eth0 up
            /sbin/ifconfig eth0 172.16.3.1
            /sbin/ifconfig eth0:0 172.16.3.10
            /sbin/ifconfig eth0:1 172.16.3.100

  172.16.3.1  IPѹ̰ .10 .100 Alias IPѹ̴. ٸ
   ѹ ؼ eth0:x 0,1,2...n ϴ  ̴. 
  IP ѹ ˸ƽ ʿ䰡 .

  ° Ʈ  Ѵ.  ù° ƮŰ net  
   ׸  ⺻ ( ޾Ҵ) ۵Ǵ
   ѹ ¾Ѵ.

            /sbin/route add -net 127.0.0.0
            /sbin/route add -net 172.16.3.0 dev eth0
            /sbin/route add -host 172.16.3.1 dev eth0
            /sbin/route add -host 172.16.3.10 dev eth0:0
            /sbin/route add -host 172.16.3.100 dev eth0:1
            /sbin/route add default gw 172.16.3.200

  ̰ ̴.

     ǳѹ Private IPѹ(RFC 1918)  
  Ǵ  ߴ.   ǳѹ ̶̰ üؼ
  .

  3  ѹ ؼ  . ִġ 256
  /usr/include/linux/net_alias.h ǵǾִ.  ī忡 256
  IPѹ  ̴.

  ⿡  /sbin/infconfig ִ  ִ.

       lo       Link encap:Local Loopback
                 inet addr:127.0.0.1  Bcast:127.255.255.255  Mask:255.0.0.0
                 UP BROADCAST LOOPBACK RUNNING  MTU:3584  Metric:1
                 RX packets:5088 errors:0 dropped:0 overruns:0
                 TX packets:5088 errors:0 dropped:0 overruns:0

       eth0      Link encap:10Mbps Ethernet  HWaddr 00:8E:B8:83:19:20
                 inet addr:172.16.3.1  Bcast:172.16.3.255  Mask:255.255.255.0
                 UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
                 RX packets:334036 errors:0 dropped:0 overruns:0
                 TX packets:11605 errors:0 dropped:0 overruns:0
                 Interrut:7 Base address:0x378

       eth0:0    Link encap:10Mbps Ethernet  HWaddr 00:8E:B8:83:19:20
                 inet addr:172.16.3.10  Bcast:172.16.3.255  Mask:255.255.255.0
                 UP BROADCAST RUNNING  MTU:1500  Metric:1
                 RX packets:0 errors:0 dropped:0 overruns:0
                 TX packets:0 errors:0 dropped:0 overruns:0

       eth0:1    Link encap:10Mbps Ethernet  HWaddr 00:8E:B8:83:19:20
                 inet addr:172.16.3.100  Bcast:172.16.3.255  Mask:255.255.255.0
                 UP BROADCAST RUNNING  MTU:1500  Metric:1
                 RX packets:1 errors:0 dropped:0 overruns:0
                 TX packets:0 rrors:0 dropped:0 overruns:0

  ׸ /proc/netaliase:

  device           family address
  eth0:0           2      172.16.3.10
  eth0:1           2      172.16.3.100

   /proc/net/alias_types  ̴.

       type    name            n_attach
       2       ip              2

  , /proc/net ִ ̷͵ ifconfig ɿ ؼ 
  

   ۾ ƴϴ!!

  3.   亯

  3.1.  ýÿ  ȯ漳 ų  ִ°?

   BSDŸ̳ SysVŸ(:) init  
  /etc/rc.d/rc.local װ   ִ. Ʒ   SysV
  init ̴.( 3.0.3 or 4.0)

   /etc/rc.d/rc.local (edited to show the relevant portions)

       #setting up IP alias interfaces
       echo "Setting 172.16.3.1, 172.16.3.10, 172.16.3.100 IP Aliases ..."
       /sbin/ifconfig lo 127.0.0.1
       /sbin/ifconfig eth0 up
       /sbin/ifconfig eth0 172.16.3.1
       /sbin/fconfig eth0:0 172.16.3.10
       /sbin/ifconigfeth0:1 172.16.3.100
       #setting up the routes
       echo "Setting IP routes ..."
       /sbin/route add -net 127.0.0.0
       /sbin/route add -net 172.16.3.0 dev eth0
       /sbin/route add -host 172.16.3.1 eth0
       /sbin/route add -host 172.16.3.10 eth0:0
       /sbin/route add -host 172.16.3.100 eth0:1
       /sbin/route add default gw 172.16.3.200

  3.2.  IP aliased  e-mail ¾

  :  簢 alias  ѹ IP aliased 
  e-mail ް ¾Ҽ ֽϱ?(sendmail  )

  /etc/mynames.cw  °Ͱ   (װ
   ʴ´ٸ) װ ̰Ͱ  ̸ ƴϰų /etc丮
   ִ. (: 򿡼 sendmail.cf  cw  Ѵٰ
  ǵ ִ./etc/sendmail.cw  Ѵ.)   Ͽ alias
  ǳѹ   ´.  ˸ƽ ǰ
  γ Ȱ 쿡 ǳѹ ü ټ ִ.

  ______________________________________________________________________
  /etc/mynames.cw:
  ----------------
  # /etc/mynames.cw -    ˸ƽ ̸  ´.
  #  ̴ּ.

  domain.one.net
  domain.two.com
  domain.three.org
  4.5.6.7
  ______________________________________________________________________

   sendmial.cf ȭϿ  Ŭ ũ Fw ϴ κп
   ߰Ѵ.

  ______________________________________________________________________
  ##################
  #   local info   #
  ##################
  .
  .
  # 츮 - ޱ  ȣƮ ̸ ִ 
  Fw/etc/mynames.cw
  .
  .
  .
  ______________________________________________________________________

  ̰  غ Ѵ. ο  ׽Ʈϱ ؼ ׽Ʈ
    Ѵ.  (:  ׵  غ ٶ. sendmail
    ް    ߿ ̴. ణ Ǽ 
   ް ȴٸ?)

  ganymede$ /usr/lib/sendmail -bt
  ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
  Enter < ruleset> < address>
  > 0 me@4.5.6.7
  rewrite: ruleset  0   input: me @ 4 . 5 . 6 . 7
  rewrite: ruleset 98   input: me @ 4 . 5 . 6 . 7
  rewrite: ruleset 98 returns: me @ 4 . 5 . 6 . 7
  rewrite: ruleset 97   input: me @ 4 . 5 . 6 . 7
  rewrite: ruleset  3   input: me @ 4 . 5 . 6 . 7
  rewrite: ruleset 96   input: me < @ 4 . 5 . 6 . 7 >
  rewrite: ruleset 96 returns: me < @ 4 . 5 . 6 . 7 . >
  rewrite: ruleset  3 returns: me < @ 4 . 5 . 6 . 7 . >
  rewrite: ruleset  0   input: me < @ 4 . 5 . 6 . 7 . >
  rewrite: ruleset 98   input: me < @ 4 . 5 . 6 . 7 . >
  rewrite: ruleset 98 returns: me < @ 4 . 5 . 6 . 7 . >
  rewrite: ruleset  0 returns: $# local $: me
  rewrite: ruleset 97 returns: $# local $: me
  rewrite: ruleset  0 returns: $# local $: me
  > 0 me@4.5.6.8
  rewrite: ruleset  0   input: me @ 4 . 5 . 6 . 8
  rewrite: ruleset 98   input: me @ 4 . 5 . 6 . 8
  rewrite: ruleset 98 returns: me @ 4 . 5 . 6 . 8
  rewrite: ruleset 97   input: me @ 4 . 5 . 6 . 8
  rewrite: ruleset  3   input: me @ 4 . 5 . 6 . 8
  rewrite: ruleset 96   input: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset 96 returns: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset  3 returns: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset  0   input: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset 98   input: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset 98 returns: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset 95   input: < > me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset 95 returns: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset  0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset 97 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me < @ 4 . 5 . 6 . 8 >
  rewrite: ruleset  0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me < @ 4 . 5 . 6 . 8 >
  >

   me@4.5.6.7 ׽Ʈ ؼ. װ me@4.5.6.8
  smtp mailer ؼ    Į ӽ  ´.

  4.    ´.

  ռ ߴ   ڴ.    ˸ƽ̿ 
  ϵ鿡 ߴ  ̵鿡 帰.

      ϰų ,  Ұ ְų 
  ؾ  ߰ϸ <h.pillay@ieee.org> E-mail  ޶.

