ZEROCONF是什么

有一台CentOS 5.5的server(网段是172.21.73.0),查看它的路由表是发现一个奇怪的项目:

  1. [shengkui@APP-SERVER ~]$ route
  2. Kernel IP routing table
  3. Destination Gateway Genmask Flags Metric Ref Use Iface
  4. 172.21.73.0 * 255.255.255.0 U 0 0 0 eth0
  5. 169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
  6. default 172.21.73.253 0.0.0.0 UG 0 0 0 eth0

居然有一个 169.254.0.0 的项目,这个路由表项是干什么的,从哪里来?

经过查找资料,终于明白了,这个项目是: Zero Configuration Network (ZEROCONF)。ZEROCONF又被叫做 IPv4 Link-Local (IPv4LL)和 Automatic Private IP Addressing (APIPA)。它是一个动态配置协议,系统可以通过它来连接到网络。

很多Linux发行版都默认安装该服务,当系统无法连接DHCP server的时候,就会尝试通过ZEROCONF来获取IP。

在CentOS5.x中,ZEROCONF的路由项是在下面的启动脚本被添加到路由表的。
/etc/init.d/network会调用 /etc/sysconfig/network-scripts/ifup-eth 脚本,ifup-eth 脚本会添加ZEROCONF路由项,代码如下:

  1. # Add Zeroconf route.
  2. if [ -z "${NOZEROCONF}" -a "${ISALIAS}" = "no" -a "${REALDEVICE}" != "lo" ]; then
  3. ip route replace 169.254.0.0/16 dev ${REALDEVICE}
  4. fi

那有没有办法禁用ZEROCONF呢?
可以通过在 "/etc/sysconfig/network" 文件中增加一行“NOZEROCONF=yes”来达到这个目的。
其实,给 NOZEROCONF 赋任意值都是同样的效果,从上面的代码就可以看出,它只检测 NOZEROCONF 是否为空。
当然,修改完 "/etc/sysconfig/network" 之后,必须重启网络才能生效:/etc/init.d/network restart

在Linux下面还有一个daemon与Zeroconf相关,就是 AVAHI,详细信息参考:http://avahi.org。

关于 ZEROCONF的更多资料可以在下面的网站找到:
http://www.zeroconf.org/

http://dgz.dyndns.org/mediawiki/index.php/HOWTO_Disable_the_zeroconf_route_%28169.254.0.0/255.255.0.0%29

转:http://blog.chinaunix.net/uid-20644632-id-2172223.html

展开阅读全文

继承是什么和应该是什么

07-18

fixopen() 09:32:22rn继承,类不变性之间的关系是不是很亲密?rn继承仅仅表达为增加特有的属性是不是不够完善?是不是还要有对已有的属性进行限制的能力才完善?类不变性可以非常自然的为heir增加parent原有属性的限制。rn考虑多边形与矩形的继承关系。矩形就是边数为4,相邻边正交的多边形。可惜的是,如果没有对多边形原有属性的限制,很难表达这种继承关系,也导致了很少有人这样使用继承,非常自然和直观的继承。 rn狐狸发 () 09:37:22rn有的时候最好不要用继承来描述普遍-特例这样的关系 rn一棵大白菜() 09:38:12rnwhy?这是抽象性的表达方法 rn狐狸发 () 09:38:15rn一般这种情况都是人为的经验性的行为,并不符合事物演化的规律 rnfixopen() 09:38:18rn为什么?继承不就是用来描述这样的关系的么? rn狐狸发 () 09:39:07rn你说三角形和等边三角形有什么继承的关系么,还是人为的这样认为? rnfixopen() 09:39:05rn是因为现有语言大多数都不支持类不变性导致我们不能这样自然的描述吧。 rnfixopen() 09:39:28rn等边三角形自然是三角形的heir。你不觉得? rn一棵大白菜() 09:39:32rn比如:大家来吃饭啦-〉fixopen,狐狸,无限....来吃饭啦 rn狐狸发 () 09:40:35rn等边三角形只是3条都相等,只是属性上有区别,他就是三角形 rn一棵大白菜() 09:40:52rn三角形具有等边三角形等其它特异三角形的通性 rnfixopen() 09:41:03rn是啊,所以等边三角形继承自三角形非常自然和直观啊。 rn狐狸发 () 09:41:27rn这时候不应该用继承来描述 rnfixopen() 09:41:28rn可惜的是,我们的大多数OO语言都不能自然的表达这种关系。 rnfixopen() 09:41:42rn你认为应该用什么来描述? rnfixopen() 09:42:01rn或者说,你认为继承的作用是什么?继承是用来干什么的? rn狐狸发 () 09:42:19rn子类应该拥有比父类更特殊的属性,普通三角形也有机会3条边都相等 rn一棵大白菜() 09:42:47rn继承这个词可能会引起歧义,继承跟现实生活中的这个词含义是不同的 rn一棵大白菜() 09:43:03rn代表泛化的反向 rnbighammer() 09:43:18rn狐狸说的也很有道理:普通三角形也有机会3条边都相等 ,不过某个基类的作为一种派生类存在也是很正常的 rnfixopen(19710496) 09:43:22rn按照你的说法,Window也可能有就是Button的机会,所以,Window派生出Button是不对的? rn狐狸发 () 09:43:41rnbutton有windows所没有的特性 rnfixopen() 09:43:46rn有么? rn一棵大白菜() 09:44:03rn普通三角形也有机会3条边都相等那就是等边三角形啦,既是等边三角形,又是三角形 rn狐狸发 () 09:44:07rn可以按,并触发一个事件 rnbighammer() 09:44:18rn呵呵,可能我表达的有点不清楚,就是说普通三角形可以是等边三角形这一事实与OO里的继承不违背 rnfixopen() 09:44:25rn一棵大白菜() 09:42:47rn继承这个词可能会引起歧义,继承跟现实生活中的这个词含义是不同的 rn一棵大白菜() 09:43:03rn代表泛化的反向 rnrn我也是这样认为的呀,继承就是特化嘛。rn rnfixopen() 09:44:45rn狐狸发 () 09:44:07rn可以按,并触发一个事件 rnrnWindow照样可以按,并触发一个事件。 rn狐狸发 () 09:45:18rn我不这么觉得,我觉得等边三角形就是三角形并加上一个约束 rn一棵大白菜() 09:45:33rnbutton是老婆奶头的父类 rn狐狸发 () 09:46:37rn泛化和特例不光有继承的手法rn还可以用分类的手法 rnfixopen() 09:46:48rn现在你们就是不承认我们现在常用的OO语言有缺陷?rnrnrnrn狐狸发 () 09:45:18rn我不这么觉得,我觉得等边三角形就是三角形并加上一个约束 rnrnrnrn这句话说得太多了,事件所有的继承都是如此。rnrn人是哺乳动物加上一些约束定义的。Button是Window加上一些约束定义的。rn rnfixopen() 09:47:03rn太多了-->太对了。 rn狐狸发 () 09:47:16rn普通window不能成为一个button rn狐狸发 () 09:47:32rnbutton拥有普通window不具备的特性 rnfixopen() 09:47:34rn在我看来,继承就是分类。 rnfixopen() 09:47:50rn普通哺乳动物也不能成为一个人。 rn狐狸发 () 09:47:56rn那你就这样认为好了 rnfixopen() 09:48:19rn人也拥有普通哺乳动物不具备的特征。 rn狐狸发 () 09:48:52rn人并来就是哺乳动物的子类 rn++oeqe() 09:49:08rnbutton也室window的子类啊。。 rn狐狸发 () 09:49:38rn这我也承认啊 rn狐狸发 () 09:49:51rn我没说button不是window的子类吧 rn狐狸发 () 09:50:16rn但是一个4边相等的window是window的子类吗 rn++oeqe() 09:50:36rn这个属于数学集合论的范畴 rnbighammer() 09:50:43rn这跟矩形与多边形得例子有什么区别 rn一棵大白菜() 09:50:52rn你说为什么不是? rn狐狸发 () 09:51:14rn因为没人定义4边相等的window是一个特例,所以你没感觉吧 rnfixopen() 09:51:38rn我怎么不知道你在说什么呢? rnfixopen() 09:51:52rnWindow有四边不相等的么? rn一棵大白菜() 09:51:57rn没人用当然就没人定义 rn狐狸发 () 09:51:59rn这和等边三角形一样,如果没人把等边三角形定义为一个特例,你也不会有继承的关系吧 rn狐狸发 () 09:52:13rn你也不会觉得有继承的关系吧 rnfixopen() 09:52:38rn关键是,你用继承表达什么? rn狐狸发 () 09:52:45rn这只是经验行为,而不是演化 rnfixopen() 09:52:52rn是不是表达一个集合的特定子集? rnfixopen() 09:53:07rn继承用来表达演化? rn狐狸发 () 09:53:23rn继承就是演化啊 rnfixopen() 09:53:23rn这是你说的呢,还是公认的? rn一棵大白菜() 09:53:33rn代表特化,跟模板本质一样 rn狐狸发 () 09:53:46rn基类->派生类rn这就是一种进化 rn一棵大白菜(301464) 09:53:33rn代表特化,跟模板本质一样 rn狐狸发 (99643412) 09:53:46rn基类->派生类rn这就是一种进化 rn狐狸发 () 09:54:23rn如果你认为是一种子集,那么未知的子类怎么考虑呢 rn狐狸发 () 09:54:37rn他现在根本不在集合里 rnfixopen() 09:54:39rn那么,你觉得人是哺乳动物概念的演化么? rn狐狸发 () 09:55:02rn当然是 rn狐狸发 () 09:55:30rn应该说人是某种哺乳动物进化而来 rn狐狸发 () 09:55:56rn应该说人是某种哺乳动物进化而来 rn所以人继承了哺乳动物的特性 rnfixopen() 09:55:59rn莫非我们对哺乳动物研究的越深入,我们对哺乳动物的概念越清晰,结果,哺乳动物就是人? rn狐狸发 () 09:56:37rn看来你对演化的词理解有问题 rn狐狸发 () 09:57:00rn人可以是哺乳动物,但哺乳动物不一定是人 rnfixopen() 09:57:28rnstop,我看到你又在引入一个概念叫作进化,继承是表达进化还是演化。rn或者,你说得演化就是进化?rn我还以为你说得演化是我们对概念感觉的变化呢。看来你想表达的是进化:) rn一棵大白菜() 09:57:35rn就是建模的详细程度,不管你认识是否足够 rn狐狸发 () 09:58:04rn好吧,我们就把这个词确定为进化 rn炮炮() 09:58:30rnEvolution Complete! rnfixopen() 09:58:37rn我同意大白菜。rn不同意狐狸发。rn我认为狐狸发在某种程度上属于偷换概念。 rn一棵大白菜() 09:59:25rn关键是:分歧在哪里?我都没搞明白 rnfixopen() 09:59:24rn如果是进化的话,你认为形状可以进化为三角形? rnfixopen() 10:00:12rn我们对形状建模的越详细,它就越是三角形? rn狐狸发 () 10:00:28rn我说了,有些概念用继承来描述并不好rnrn而不是所有的东西都用继承来描述 rn一棵大白菜() 10:01:03rn我们对形状建模的越详细,越能代表多的特例三角形类别 rn狐狸发 () 10:01:06rn象模板特化就不是继承关系 rnfixopen() 10:01:13rn我知道用现在的OO语言的继承来描述不好,可我说得是:我认为现在的OO语言有缺陷。 rn狐狸发 () 10:01:28rn这更偏向与分类 rn一棵大白菜() 10:01:28rn用词不同而已 rnfixopen() 10:02:13rn麻烦你仔细看看我的初始描述。 rnfixopen() 10:02:45rn继承,类不变性之间的关系是不是很亲密?rn继承仅仅表达为增加特有的属性是不是不够完善?是不是还要有对已有的属性进行限制的能力才完善?类不变性可以非常自然的为heir增加parent原有属性的限制。rn考虑多边形与矩形的继承关系。矩形就是边数为4,相邻边正交的多边形。可惜的是,如果没有对多边形原有属性的限制,很难表达这种继承关系,也导致了很少有人这样使用继承,非常自然和直观的继承。 rn狐狸发 () 10:02:53rn麻烦你看看我最早的回复 rnfixopen() 10:03:23rn我知道你的回复,你说最好不要,我认为用继承是自然的,而你认为不是。这就是分歧。 rn一棵大白菜() 10:03:43rn对已有的属性进行限制?有此功能啊 rn狐狸发 () 10:04:20rn我的观点是,有些概念并不是自然的,是人为经验化的,这样用继承去描述就很牵强 rn一棵大白菜() 10:04:24rn子类可修改继承自父类的行为 rn一棵大白菜() 10:04:35rn就是变异 rn 论坛

没有更多推荐了,返回首页