当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > IP Alias mini HOWTO 如何在 Linux 机器上设定 IP 别名

Unix/Linux
FreeBSD 数据转移办法
Freebsd 下运行QQ For Linux 的方法
FreeBSD, Debian, CentOS一个网卡绑定多个IP
freebsd下切换到root下 su: Sorry 的解决办法
Freebsd挂载光驱和软驱
FREEBSD下运行调试asterisk
一些 freebsd 的常用命令
笔记本上安装freebsd的小知识
FreeBSD系统下添加中文字体
FreeBSD挂载DOS分区,正确显示中文
FreeBSD挂载DOS分区时显示中文的方法
freebsd7.0安装系统图解(最新版)
服务器的时间同步设置方法
FreeBSD FTP 的架设教程
FreeBSD mpd VPN服务器安装步骤
更新FreeBSD Port Tree的几种方法小结
portupgrade 中文手册(翻译)
freebsd 服务器 ARP绑定脚本
在Ubuntu系统中定制 Compiz Fusion 特效
Ubuntu 7.10 绑定IP及MAC地址

Unix/Linux 中的 IP Alias mini HOWTO 如何在 Linux 机器上设定 IP 别名


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 185 ::
收藏到网摘: n/a

  原始文件:Linux IP Alias mini HOWTO
翻译日期:1997/10/23
翻译维护:[email protected]
----------------------------------------------------------------------------------------------

      本文最後修改日期: January 13th 1997.

    如何在 Linux 机器上设定 IP 别名(aliasing)

   GNU Copyleft 1996/1997 Harish Pillay ([email protected])

 原始站: http://home.pacific.net.sg/~harish/linuxipalias.html


摘要:

本文说明如何在 Linux 机器上设定并执行 IP 别名.除此之外,还有如何设定在 IP
别名上接收 e-mail.


我的设定:

* 最新的核心 (2.0.27 - 从 ftp://ftp.funet.fi/pub/Linux/kernel/src/v2.0 取得) -
  从 1.3.7x 以後就可以.
* 将 IP Alias 编译成可载入模组.你在用 "make config" 指令编译核心时,如果要
  把 IP Masq 编译成模组(Modules)应会被问到.查看 Modules HOWTO(如果有的话)
  或是查看 /usr/src/linux/Documentation/modules.txt 中的资讯.
* 我在已分配给我的 IP 之外还又要了两个额外的 IP.
* 一片 D-Link DE620 网路卡(不重要,任何 Linux 支援的网路卡都行).


指令:

* 首先载入 IP Alias 模组(如果你将它编译进核心可跳过此步骤):

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

* 再来,建立回绕(loopback)装置,以及 eth0 界面上以主 IP 号码为开头的所有 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 是别名.比较奇怪的地方是 eth0:x,
  其中 x=0, 1, 2, ... n 在每一不同的 IP 号码上.主 IP 号码不需要这个.

* 第三步是建立递送路径.首先,递送到回绕装置,然後是区域网路,最後是不同的 
  IP 号码及预设递送路径:

     /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

就这样了.

在上面的例子中,为了说明我用的是 RFC 1918 所定义的私用 IP 号码.用你正式或
私有的 IP 号码来取代它.

上面的例子只展示了三个 IP 号码.在 /usr/include/linux/net_alias.h 中定义的
最大值是 256.在一片网路卡上 256 个 IP 号码已经很多了 :-)!

我用 /sbin/ifconfig 看起来像这样:

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
          Interrupt: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  Metri