📄 00000015.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER>发信人: rudey (huihui), 信区: Linux <BR>标 题: IP别名mini-HowTo <BR>发信站: BBS 水木清华站 (Wed Sep 16 19:54:02 1998) <BR> <BR>IP别名mini-HowTo <BR>作者:Harish Pillay (<A HREF="mailto:h.pillar@ieee.org)">h.pillar@ieee.org)</A> <BR>翻译: <A HREF="mailto:rudey.bbs@bbs.cdit.edu.cn">rudey.bbs@bbs.cdit.edu.cn</A> (1998/09/10) <BR>摘要 <BR>Jan 13,1997 <BR>这是一个讲述如何用LINUX发布包运行IP别名的小书。也包括了如何设置使不同IP别名可 <BR>以收发电子邮件的步骤。 <BR> <BR>1 我的设置: <BR> <BR> 最新的核心(2.0.27-ftp.funet.fi:/pub/Linux/kernel/src/v2.0),从1.3.7x都支 <BR> 持。 <BR> 将IP别名功能编译成可装载模块。你可以使用“make config”来配置新的核心,将IP <BR> 转换功能编译成模块,请检查你的模块HOW-TO文档(假如有的话)或者看/usr/src/ <BR> linux/Documentation/modules.txt这个文件。 <BR> 我已经将两个新的IP加到了原有的IP地址上。 <BR> 一个D-LINK DE620袋式网卡(并不重要,任何LINUX支持的网卡都行)。 <BR>2 设置的步骤 <BR> <BR> 首先载入IP别名的模块(如果你已将这个功能编译进核心,就可以跳过这一步); <BR> /sbin/insmod /lib/modules/'uname -r' /ipv4/ip_alias.o <BR> 其次,设置你的回送地址、eth0和所有的IP别名的界面: <BR> /sbin/ifconfig lo 127.0.0.1 <BR> /sbin/ifconfig eth0 up <BR> /sbin/ifconfig eth0 172.16.3.1 <BR> /sbin/ifconfig eth0:0 172.16.3.10 <BR> /sbin/ifconfig eth0:1 172.16.3.100 <BR> 172.16.3.1是我原有的IP地址,而.10和.100是这个地址的别名。其中的奥妙是 <BR> eth0:x,x=0,1,2,...,n。n就是不同的别名。而eth0是不需要别名的。 <BR> 第三,设置路由。要设置回送地址的路由,网络的路由,从原始分配的那个IP开始的 <BR> 不同别名的路由: <BR> /sbin/route add -net 127.0.0.0 <BR> /sbin/route add -net 172.16.3.0 dev eth0 <BR> /sbin/route add -host 172.16.3.1 dev eth0 <BR> /sbin/route add -host 172.16.3.10 dev eth0:0 <BR> /sbin/route add -host 172.16.3.100 dev eth0:1 <BR> /sbin/route add default gw 172.16.3.200 <BR> 在上述的IP举例中,我使用了内部IP(RFC1918中定义)。请用你自己的IP做替换。 <BR>举例中仅仅有3个IP地址,在/usr/include/linux/net_alias.h中定义最大值为256。 <BR> 即可以使一块网卡最多有256个IP别名。太多了吧:)! <BR> 下边是我用/sbin/ifconfig显示的结果: <BR> lo Link encap:Local Loopback <BR> inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0 <BR> UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1 <BR> RX packets:4094 errors:0 dropped:0 overruns:0 frame:0 <BR> TX packets:4094 errors:0 dropped:0 overruns:0 carrier:0 coll:0 <BR> <BR> eth0 Link encap:Ethernet HWaddr 00:00:21:77:27:02 <BR> inet addr:172.16.3.1 Bcast:172.16.3.255 Mask:255.255.255.0 <BR> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <BR> RX packets:412771 errors:0 dropped:0 overruns:0 frame:0 <BR> TX packets:234328 errors:0 dropped:0 overruns:0 carrier:0 coll:2239 <BR> Interrupt:3 Base address:0x320 <BR> <BR> eth0:0 Link encap:Ethernet HWaddr 00:00:21:77:27:02 <BR> inet addr:172.16.3.1 Bcast:172.16.3.255 Mask:255.255.255.0 <BR> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <BR> RX packets:0 errors:0 dropped:0 overruns:0 frame:0 <BR> TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 coll:2239 <BR> <BR> eth0:1 Link encap:Ethernet HWaddr 00:00:21:77:27:02 <BR> inet addr:172.16.3.1 Bcast:172.16.3.255 Mask:255.255.255.0 <BR> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <BR> RX packets:1 errors:0 dropped:0 overruns:0 frame:0 <BR> TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 coll:2239 <BR> <BR> 在/proc/net/alias下: <BR>device family address <BR>eth0:0 2 172.16.3.10 <BR>eth0:1 2 172.16.3.100 <BR> <BR> 在/proc/net/alias_types下: <BR>type name n_attach <BR>2 ip 2 <BR> <BR> 当然哪,这些文件的内容都是ifconfig自动生成的,可用不着你来手工的编辑! <BR> <BR> 问题:如何在重新启动机器后保留这些设置? <BR> 答案:不论你使用BSD还是SysV(比如Redhat)风格的LINUX启动,都可以将这些设置 <BR> 保存在/etc/rc.d/rc.local文件中。下面的是我的SysV风格启动例子(Redhat 3.03 <BR> 和4.0): <BR> 我的 /etc/rc.d/rc.local: (为了显示一般的情况,作了适当修改) <BR> <BR>#setting up IP alias interfaces <BR>echo "Setting 172.16.3.1,172.16.3.10,172.16.3.100 IP Aliasing ..." <BR>/sbin/ifconfig lo 127.0.0.1 <BR>/sbin/ifconfig eth0 up <BR>/sbin/ifconfig eth0 172.16.3.1 <BR>/sbin/ifconfig eth0:0 172.16.3.10 <BR>/sbin/ifconfig eth0:1 172.16.3.100 <BR>#Setting up the routes <BR>echo "Setting IP routes ..." <BR>/sbin/route add -net 127.0.0.0 <BR>/sbin/route add -net 172.16.3.0 dev eth0 <BR>/sbin/route add -host 172.16.3.1 dev eth0 <BR>/sbin/route add -host 172.16.3.10 dev eth0:0 <BR>/sbin/route add -host 172.16.3.100 dev eth0:1 <BR>/sbin/route add default gw 172.16.3.200 <BR># <BR> <BR> 问题:(使用sendmail)怎样设置,才能使这些IP别名也能接收电子邮件? <BR> 答案:创建一个文件,名字可以是/etc/mynames.cw。未必放在这个目录下,也未必取 <BR> <BR> 在这个文件中,写入这些别名IP的域名。如果这些IP不拥有域名,可以直接写上这个 <BR> IP地址。 <BR> /etc/mynames.cw: <BR># /etc/mynames.cw - 包括了本机器所有的别名 <BR># is a comment (# 是注释) <BR>domain.one.net <BR>domain.two.com <BR>domain.three.org <BR>4.5.6.7 <BR> <BR> 在你的系统sendmail.cf文件中,有一个定义文件Fw的宏,加入如下行: <BR> <BR>. <BR>. <BR>. <BR>############## <BR># local info # <BR>############## <BR>. <BR>. <BR># file containing names of hosts for which we receive email <BR>Fw/etc/mynames.cw <BR> <BR>. <BR>. <BR>############## <BR># local info # <BR>############## <BR>. <BR>. <BR># file containing names of hosts for which we receive email <BR>.w/etc/mynames.cw <BR>. <BR> (wait I setup it,and print the result here-yf) <BR> 你现在就设定好了。 <BR> <BR> 希望这篇文章对一些人有用。 <BR> 感谢对LINUX和IP别名作出巨大工作的人们。特别感谢Juan Jose Ciarlante 给问题 <BR> 归类,感谢那些提出建议的人们! <BR> 如果你觉得这篇文档还有些用,或者有改进的建议,一定发给我一封信哦: <BR> <A HREF="mailto:h.pillay@ieee.org。">h.pillay@ieee.org。</A> <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -