发布日期:2015-09-18 14:38 来源: 标签: Linux教程 内核配置 内核选项 Linux内核
本小节,我们只为大家讨论一些连网所涉及的配置选项。

3.1  内核配置 

       在运行一个系统时,应该对内核的构建非常熟练。这方面的基础知识可参见马特·维尔希所著的《安装和入门指南》(这本指南也包括在Coriolis Group 的《L i n u x系统编程白皮书》内)。本小节,我们只为大家讨论一些连网所涉及的配置选项。

        在运行make config 时,首先会要求你回答几个常见的配置问题,比如,是否希望内核数学模拟等等。其中之一是问你是否需要 T C P / I P支持。必须回答“Y ”(是),才能获得内核连 网能力。 

3.1.1 内核选项1.0及以上版本 

        注意  本小节无示例。要查找更新内容,请参考在线版。

        结束常见配置询问之后,配置会继续问一些不同特性方面的问题,比如 S C S I驱动程序等。接下来的问题仍然和连网支持有关。由于 L i n u x 的开放性,要想完整地罗列出所有的配置选项几乎是不可能的。不过,1 . 0到1 . 1之间的大多数内核选项版本都提供了一份常见选项清单(加引号部分是批注): 如果你想使用“任何”类型的连网设备(不管它是以太网,是 S L I P还是P P P )时,不管扩弧内显示什么样的宏名,都必须回答“Y ”(是)。如果回答“Y ”(是),就可以自动启用对以太网设备的支持。对其他类型网络驱动程序的支持则必须单独启用。

       这些问题和L i n u x支持的不同链路层协议有关。 S L I P允许你通过串行线路传输I P数据报。压缩报头(compressed header )选项提供了对C S L I P的支持,这种压缩技术将T C P / I P报头压缩为三个字节。注意,这个内核选项没有自动打开 C S L I P;它只是为C S L I P提供了必要的内核功能。P P P是通过串行线路发送网络通信的另一种协议。它比 S L I P更为灵活,对I P也没有什么限制,同时还支持I P X 。P L I P为通过并行连接发送I P数据报提供了一种解决办法。主要用于与运行D O S 的计算机进行通信。接下来的问题则和不同厂家的以太网卡有关。由于新的驱动程序层出不穷,这方面的问题肯定也是有增无减。如果想建立一个适用于不同类型机器的内核,可以采用多个驱动程序。

        最后,是文件系统,配置脚本将问你是否想用 N F S(连网文件系统)。N F S会令你将文件系统导向若干台主机,使其类似于附在主机上的普通硬盘文件。

3.1.2 内核选项1.1.14及以上版本 

        注意  本小节无示例。

        从1 . 1 . 1 4开始,由于增加了对I P X的A l p h a支持(处于测试阶段),配置过程有了少许变化。常见选项这部分将问你是否需要常规连网支持。随后,是涉及到各种连网选项的两个问题。 要想采用T C P / I P连网,必须回答“Y”(是)。但回答“N ”(否)的话,也能编译具有I P X 支持的内核。 

        如果你的系统是两个以太网或一个以太网和一个 S L I P之间的网关,就必须启用这个选项。尽管通过默认设置启用它没什么坏处,但你肯定想取消这一选项,把一台主机配置为一个所谓的防火墙。防火墙即是连接两个或两个以上网络,但不会在这些网络间路由通信的主机。它们常用于对来自公司网络的用户提供因特网访问,保护公司内部网络不受来自因特网的攻击和破坏。用户将得到许可登录到防火墙,使用因特网服务,但公司的机器不会因此而受到外界的攻击和破坏。因为任何接入的连接是不能通过防火墙的。 

       这个选项和P C / T C P 的某些版本不兼容,后者是针对基于D O S 的计算机的一种商业T C P / I P实施方案。如果启用了这个选项,虽然仍然可以和普通计算机进行通信,但性能肯定会大受影响。

        这个选项的作用是启用了 R A R P        (逆向地址解析)。无盘客户机和X终端在启动时,利用R A R P来查询自己的I P地址。只有计划充当这类客户机时,才有启用 R A R P 的必要。网络公用程序的最新封装(n e t - 0 . 3 2 d )中,包含了一个小型的公用程序,其名为r a r p ,它允许在R A R P缓存内增添系统。 

       在通过T C P链路发送数据时,内核必须在把数据交给 I P协议之前,将它分为若干个包。对通过本地网络(比如以太网)就能抵达的主机来说,可采用较大的数据包(相对于必须通过长距离链路才能抵达的主机而言)。这样可避免小型数据包通过链路之后产生的碎片。如果不启用S N A R L,内核将事实上只有一个接口的网络假定为本地网络。看看 Groucho Marx大学的网络B ,整个网络都是本地的,但多数主机只连接了一个或两个子网。如果启用 S N A R L,内核就会假定“所有”的子网都是本地的,在与校园内的其他所有主机通信时,都会发送大型数据包。

       如果想对发往某些特殊主机(比如这种情况:数据将通过 S L I P链路)的数据采用小型数据包的格式,利用路由的m t u选项即可。 对避免发送特别小的 I P包(也称作 t i n y g r a m s )来说,N e g l e 算法是颇有启发性的。t i n y g r a m s (微型豆)通常由一些交互性的联网工具创建,这些工具只传输一个单独的键击,比如t e l n e t和r s h 。在诸如S L I P之类的低带宽链路上,微型豆特别浪费带宽。某些情况下, N e g l e算法通过简单限制T C P数据传输的方严重问题时,取消这一算法即可。 从1 . 1 . 1 6版本的内核开始,L i n u x对另一种驱动程序类型提供了支持,它就是伪驱动程序(dummy driver )。下面的问题将在设备驱动程序部分的开始处出现。伪驱动程序的作用不大,但对单机或S L I P主机来说,它的用处就多了。它基本上是一个经过改头换面的回送接口(l o o p b a c k )。出现这类接口的原因之一是在采用S L I P,但没有以太网的主机时,人们希望有一个接口能一直保存自己的I P地址。有关详情,我们将在第5章讨论。 




相关评论

专题信息
    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。