1、Linux操作系统实用教程,第7章 Linux网络配置7.1 网络配置基础7.2 使用命令工具配置网络参数7.3 使用文件配置网络7.4 使用图形工具管理网络7.5 使用ADSL连接Internet,第7章 Linux网络配置,本章概述TCP/IP协议是Internet网络的标准协议,采用TCP/IP协议的主机连接到Internet上,就能实现与同在网络上的其他主机进行数据交换。通常把计算机中连接到网络上的设备称为网络接口设备。计算机连接到网络上,需要配置其网络接口信息,包括计算机的IP地址、子网掩码、默认网关,域名解析服务器地址等。本章将介绍在Red Hat Linux 9如何使用不同的方法
2、给联网的计算机配置这些接口信息,以便用户在不同的环境下选择使用。,7.1 网络配置基础 7.1.1 TCP/IP协议,Internet是一个基于TCP/IP协议簇的国际互联网络。而TCP/IP协议是以UNIX系统作为基础平台开发的,因而UNIX内核中默认支持TCP/IP协议簇。作为典型的类UNIX系统,Linux系统同样在其内核中支持并默认使用TCP/IP协议。7.1.1 TCP/IP协议 TCP/IP协议主要分为两个部分:传输控制协议(TCP)和网际互联协议(IP)。 1.网际互联协议(IP) 连接在以太网的用户希望自己的主机能够突破局域网的限制连接到其他网络,在不用考虑其他网络硬件类型以及
3、各部分组成的情况下就能够使用这些资源。比如某个大学中的网络,就需要,7.1 网络配置基础 7.1.1 TCP/IP协议簇,将各系局域网连接起来。这种网络之间的连接是通过网关主机来实现的,它通过在连接的网络间进行数据的复制来处理输入和输出数据。这种数据的处理方式称为路由(routing),它是通过一个独立于硬件的协议IP协议来控制的。IP协议主要功能是使主机可以把分组发往任何网络并使分组独立地传向目标。因此IP协议可以将物理上不相似的网络连接起来,构成一个同构的网络。 为了能在不同硬件类型和数据分组网络中,实现数据的转发,IP需要一种独立于硬件的寻址方式。这种寻址方式是基于IP地址的,在Inte
4、rnet上的每台主机都被设置了一个32位的IP地址。为了方便记忆,IP地址通常被写成点分十进制的结构,即将32位的二进制数利用句点(.)分成4个部分,然后每个部分转换成一个十进制数,例如:192.168.0.45。,7.1 网络配置基础 7.1.1 TCP/IP协议簇,2.传输控制协议(TCP) 如果用户登录到一台指定的网络主机上,希望登录进程,比如telnet进程,能与该主机的shell建立稳定的连接。这样来回传递的信息必须在发送端分解成多个分组(这是因为在IP协议中,规定了一个数据分组最大的字节数),然后由接收方重新将这些分组组装成字符流。此时,只有IP协议显然是不能完成网络数据通信的。
5、另外IP协议并不是可靠的协议,当路由器的缓冲区已经满负载时,此时接收到的数据分组就会被丢弃。这样,被丢弃的分组是不能恢复的。因此,需要负责通信的主机对数据传输进行完整性和正确性进行检验,在发生错误后进行数据重发。传输控制协议TCP,可以负责上述的任务,它是在IP协议之上建立可靠的连接服务。TCP协议主要功能就是在本地主机和远程主机,7.1 网络配置基础 7.1.1 TCP/IP协议簇,的两个进程之间建立一个简单的连接关系,这样,用户就不必担心数据是如何传输以及通过什么线路传输的。TCP通过两个主机的IP地址以及两个主机的端口来识别连接的端点,端口号用于标记用户需要使用的应用服务。TCP在两个端
6、点之间建立的连接是可靠的连接,它能够在网络出现错误的时候,通知对应的主机重发该分组。 3.用户数据报协议(UDP) 用户数据包协议UDP也是工作在IP协议的基础之上的,用于在数据传输量较大,且对传输的可靠性要求不高的时候替代TCP协议。与TCP协议一样,UDP协议允许一个应用程序与远程主机的一个端口相关联。UDP并不为数据的传输创建一个连接,而是直接向目标发送单个的数据报。 因为UDP才传输数据的过程中,并不对数据报的丢失和冲突进程检验,所以使用UDP协议进行数据传输的应用程序必须自行检查接收到的数据的完整性和正确性。,7.1 网络配置基础 7.1.2 网络配置基本概念,7.1.2 网络配置基
7、本概念 在了解了TCP/IP的基础知识后,就可以进行TCP/IP网络信息配置工作了,下面先介绍与网络信息配置工作相关的几个基本概念。 1.IP地址 在Internet中,每台连接在网络上的主机都有唯一的IP地址。IP地址是一个点分十进制的结构,即将32位的二进制数利用句点(.)分成4个部分,然后每个部分转换成一个十进制数。IP地址能够唯一表示一台Internet网络上的主机。例如192.168.0.1.IP地址是由“.”分开的4段十进制数,每个数占用8位二进制位,故它可以表示的范围是0255,即IP地址每段数字的取值是0255范围内的任意数。,7.1 网络配置基础 7.1.2 网络配置基本概念
8、,IP地址由两部分组成:网络号net_id与主机号host_id,所以IP地址不仅仅表示一个主机的编号,而是指出了连接在某个网络上的某台主机,它是由因特网名字与号码指派公司ICANN进行分配的。根据网络号的不同可以将Internet网络的IP地址分为五类,即A类到E类,其中D类作为组播地址保留,E类保留今后使用。下面详细介绍A类、B类和C类。 A类网络地址:IP地址的第1个字节表示网络号net_id,其中第一位为0,后面的3个字节表示主机号host_id。A类网络共能容纳的主机数为224-2=16 777 214台。 B类网络地址:IP地址的前面2个字节表示网络号net_id,其中第1、2位为
9、10,后面的2个字节表示主机号host_id。B类网络共能容纳的主机数为216-2=65534台。,7.1 网络配置基础 7.1.2 网络配置基本概念,C类网络地址:IP地址的前面3个字节表示网络号net_id,其中第1、2和3位为110,最后1个字节表示主机号host_id。C类网络共能容纳的主机数为28-2=254台。 如下表所示,不同类型IP地址中的网络地址net_id和主机地址host_id。,IP地址中的net_id和host_id,7.1 网络配置基础 7.1.2 网络配置基本概念,由于Internet的飞速发展,IP地址已经变得非常紧张,可获取的IP地址越来越少。现在,Inter
10、net网技术人员已经开发出新的IP地址的构成方法,这种IP地址就是IPv6。IPv6采用128位存储方式,即全世界的IP地址由原来的232个,扩展成2128个。这样就可以满足Internet发展的要求。 2.子网和子网掩码 由于同一个IP地址可能代表不同网络中的主机,如果不能确定它所属的子网,就会导致无法访问该主机。那么如何确定一个IP地址所属的网络呢?这时就需要用到TCP/IP协议簇中一个重要的概念子网掩码。 子网掩码也是一组由“.”分隔的4段数字组成,它可以用于定义一个IP地址所属的网络,说明IP地址中哪些部分表示网络地址,哪部分表示主机地址。具体办法就是,首先,将IP地址和子网,7.1
11、网络配置基础 7.1.2 网络配置基本概念,掩码转换成二进制数,然后用转换后的二进制数进行按位“与”运算,得到的结果就是该IP地址所属的网络地址,那么IP地址中剩下的部分就是主机地址。 通常定义标准A、B、C类IP地址的子网掩码分别为: A类子网掩码:255.0.0.0 B类子网掩码:255.255.0.0 C类子网掩码:255.255.255.0例7.1设有 IP地址为210.45.211.12的主机,其子网掩码为255.255.255.0,求出其网络号和主机号。,7.1 网络配置基础 7.1.2 网络配置基本概念,将IP地址210.45.211.12和子网掩码255.255.255.0转换
12、成二进制数: 210.45.211.12=011010010.000101101.011010011.00001100 255.255.255.0=11111111.11111111.11111111.00000000 进行按位“与”运算的结果为:011010010.000101101.011010011.00000000,因此210.45.211.0就是IP地址为210.45.211.12主机所在的网络地址,其主机地址为0.0.0.12。 3.广播地址 广播地址使用中特殊的地址,如果使用广播地址作为数据发送的目的地址,那么该数据将被发往广播地址所在网络内的所有主机。,7.1 网络配置基础 7
13、.1.2 网络配置基本概念,通常在一个子网中广播地址是唯一的,就是将IP地址中主机地址部分替换成255后的地址。例如,上述IP地址210.45.211.12所在网络的广播地址就是210.45.211.255。 在一个特定的网络内,广播地址是保留的,因此不能用于网络中的主机名。因此,有了网络地址和广播地址后,一个特定类型的网络中,可用于标志主机的IP地址就减少了两个,例如,C类地址主机地址占8位,其能够容纳的主机数为28-2=254台,C类能容纳的主机数为216-2=65 534台。 4.端口 端口可以看作是网络连接的附着点。如果一个应用程序希望提供某种服务,就会附着在某个特定的网络端口上等待用
14、户请求的到来(也称为对端口的监听)。使用该服务的客户机则在某个,7.1 网络配置基础 7.1.2 网络配置基本概念,端口上建立与该远程主机的连接,客户机的端口通常是随机选择且端口号大于1024。 在网络中,一旦客户机和服务器之间建立连接,就必须生成服务器的另一个拷贝来为客户机提供服务,原拷贝则继续监听,以等待更多用户的请求。这样,提供网络应用的服务器就允许多个用户登录,并且这些连接都使用服务器同一个端口。TCP可以根据连接的IP地址和端口来区分不同的连接。假如用户两次从infosec主机登录myhost主机,那么第一个telnet客户机使用本地的1025端口,第二个客户机则使用本地的1026端
15、口,但是它们都连接服务器myhost的23端口。 从上例可以知道,可以把渡口作为一个集结点,客户端通过连接这些特殊的端口获取特定的网络服务。为了使客户端知道这些,7.1 网络配置基础 7.1.2 网络配置基本概念,特定的端口,服务的提供方和使用方必须达成一致,对端口的分配必须统一集中管理,在Linux系统中,通过/etc/services文件进行服务名到端口号的映射。 通常,端口号在01023之间的网络端口由系统统一分配,用户无权重新分配这些端口,端口号大于1023的端口允许用户使用。客户机通常随机生成一个大于1023的端口去连接服务器的特定端口。 需要注意的是,TCP和UDP连接都依赖于端口
16、,但这些端口不会相互冲突。因为同一端口在TCP和UDP连接中的服务是不同的。例如TCP的513端口关联的是rlogin服务,而UDP的513端口关联的是rwho服务。,7.1 网络配置基础 7.1.2 网络配置基本概念,5.域名 在Internet上使用主机的IP地址来定位和标识主机,尽管为了方便记忆这些IP地址,采用了4段点分十进制的数字来表示,但是要记住这些枯燥的数字,还是非常枯燥的。为了解决这个问题,提出了网络域名的概念。Internet域名是Internet网络上的一个服务器或一个网络系统的名字,在全世界,域名都是唯一的。通俗的说,域名就相当于每台服务器或主机的别名。 域名是一个层次结
17、构的名称,由若干个引文字母和数字组成,由“.”分隔成几部分,一般的域名格式为: 主机名称.三级域名.二级域名.顶级域名,7.1 网络配置基础 7.1.2 网络配置基本概念,例如,域名表示安徽理工大学信息安全教研室的一个域名。infosec反映的是信息安全教研室的一台服务器,aust是安徽理工大学的域名,edu是教育部域名,cn是顶级域名,代表中国。 顶级域名一般分为两类:组织性顶级域名(见表1)和地理性顶级域名(见表2)。组织性顶级域名用于指明网站的属性,而地理性顶级域名用于指明网站的地址上属于哪个国家或地区。,7.1 网络配置基础 7.1.2 网络配置基本概念,表1 组织性顶级域名,7.1
18、网络配置基础 7.1.2 网络配置基本概念,表2 地理性顶级域名,7.1 网络配置基础 7.1.2 网络配置基本概念,当以域名方式访问某台远程主机时,域名系统首先将域名翻译成对应的IP地址(执行域名与IP地址相互转换的网络服务器,被称为域名服务器),然后使用得到的IP地址作为网络通信地址。因此在网上访问主机时,可以使用域名作为登录地址,也可以使用其IP地址作为登录地址,二者的效果一致。 需要注意的是,域名与IP地址并不是一一对应的,既有多个域名对应一个IP地址的,也有多个IP地址对应一个域名的情况存在。 6.路由 由于从物理拓扑来说Internet是一个典型的网状网络,也就是说从一个网络节点(
19、通常是网络主机)到达另一个节点的路径不止一条,那么网络上传输的数据分组是如何选择到达目的主机的路径呢?通常这是靠网络中的特殊主机来完成的,这些特殊,7.1 网络配置基础 7.1.2 网络配置基本概念,主机被称为路由器。路由器负责将到来的数据分组根据其中的路由算法选择一条最有效的路径投递出去。路由器中可选择的一个网络节点到达另一节点的路径,就称为路由。通常,路由器中都设置一个路由表用于缓存系统的路由信息。 由于一个公司或单位的内部网络只通过一个路由器与外部网络建立连接,这个连接外部网络的路由器通常被称为默认网关。当公司内部网络上的主机与外部网络进行连接时,就将数据分组发给默认网关,由该网关负责数
20、据分组的路由选择。,7.1 网络配置基础 7.1.3 常用的网络命令,7.1.3 常用的网络命令 为了方便的管理网络,查看当前的网络连接信息,Linux系统提供了网络测试命令和远程登录命令。 1.网络测试命令 为了便于Linux用户判断当前网络的连接情况,Linux系统提供了ping、traceroute和netstat等网络测试命令。 1) ping命令 ping命令用于测试当前系统的网络是否连通。该命令能够不间断地向目标主机发送ICMP协议的数据包,目标主机接收到数据包后返回应答。用户可以在屏幕上看到 数据包返回的信息,并根据这些信息判断网络的连通状态。该命令的格式如下: ping 选项
21、目标主机名或IP地址,7.1 网络配置基础 7.1.3 常用的网络命令,常用的参数及含义如下表所示。,ping命令常用参数,7.1 网络配置基础 7.1.3 常用的网络命令,例7.1 使用ping命令向安徽理工大学网站(域名为)发送5个数据包,检查网络连通状态。 在终端命令提示符下输入如下的命令,其执行结果如下图所示。 rootmyhost root# ping c 5 ,ping命令的使用,7.1 网络配置基础 7.1.3 常用的网络命令,注意:如果不使用-c参数指定发送的数据包的个数,ping命令会不间断地发送数据包,直到用户使用Ctrl+C结束发送,然后给出统计信息。 2) tracer
22、oute命令 该命令向目的主机发送数据包,每经过一个网关或路由就返回一行信息,内容包括网络或路由的主机名或IP地址、每次经过该网关或路由的时间(单位为ms)。系统默认的数据包长度为38字节,最大跳数(Hop)为30次。该命令格式如下: traceroute 选项 目的主机名或IP地址 常用的参数及含义如表所示。,7.1 网络配置基础 7.1.3 常用的网络命令,例7.2 使用traceroute命令测试到目的主机的路由。,traceroute命令常用参数,7.1 网络配置基础 7.1.3 常用的网络命令,在终端命令提示符下输入如下命令,执行结果如下图所示。 rootmyhost root# t
23、raceroute ,traceroute的使用,3)netstat命令 netstat命令用于查看网络连接、路由表信息和网络接口的状态信息,其格式如下:,7.1 网络配置基础 7.1.3 常用的网络命令,nestat 选项 常用参数及含义如表所示。,netstat命令常用参数,7.1 网络配置基础 7.1.3 常用的网络命令,例7.3 使用netstat命令查看本机的网络连接状态。 在终端命令符下输入如下的命令,其执行结果如下图所示。 rootmyhost root# netstat,netstat查看网络连接,7.1 网络配置基础 7.1.3 常用的网络命令,说明:netstat的输出结果
24、可以分为两个部分,一部分显示有源TCP连接(Active Internet connections)的情况,一般有4行,另一部分显示有源UNIX域套接口(Active UNIX domain sockets)的连接情况。Proto显示连接使用的协议;RefCnt表示连接到本套接口上的进程号;Types显示套接口的类型;State显示套接口当前的状态;I-Node表示连接的i索引结点号;Path表示连接到套接口的其他进程使用的路径名。,7.1 网络配置基础 7.1.3 常用的网络命令,例7.4 使用netstat命令来查看当前路由表的详细信息。 在终端提示符下输入如下的命令,其执行结果如图所示。
25、 rootmyhost root# netstat -nr,netstat查看网络连接,7.1 网络配置基础 7.1.3 常用的网络命令,2.远程登录工具 Linux系统为了方便用户在远程管理和使用系统,为用户准备了远程登录工具,其中最常用的就是telnet工具。telnet命令是远程登录命令,该命令允许用户使用telnet协议登录到远程计算机,在用户提供了合法的用户账号和登录口令后,就可以像操作本地计算机一样操作远程主机。telnet工具只提供Linux终端的仿真,不支持X Window等图形环境。该命令格式如下: telnet 远程主机名或IP地址,7.1 网络配置基础 7.1.3 常用的
26、网络命令,如果该命令执行成功,将从远程主机上获得“login:”提示符,如图所示。用户在“login:”提示下输入登录账号,按Enter键后在系统给出的“password:”提示符下输入登录口令后即可登录远程主机。,telnet的使用,在Linux系统除了提供telnet远程登录工具外,还提供了xlogin、ssh等远程登录工具,有兴趣的读者可以自行查阅资料。,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,在Linux系统中,可以使用3种不同的方法来配置网络接口:使用命令工具配置网络参数、直接修改网络配置文件和使用图形工具配置网络参数的办法。本节将介绍在命令模式下使用ifc
27、onfig工具和route工具配置网络接口参数和使用netconfig工具配置网络接口参数的方法。 7.2.1使用命令工具配置网络参数 在终端命令模式下,可以首先使用ifconfig工具配置网络接口中的IP地址、网络掩码、广播地址等信息,然后再使用route工具配置网络的默认网关信息。 1.ifconfig工具的使用 该工具既可以用于查看网络接口的信息,也可以用于配置网络的TCP/IP参数,还可以用于启动和停用指定的网络接口。,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,1) 查看网络接口信息 ifconfig命令格式如下: ifconfig 网络接口设备名 其中网络接口
28、设备名为可选参数,如果没有指定网络接口,ifconfig将返回系统所有的网络设备的TCP/IP参数,包括回环网络接口的信息,否则返回指定的接口参数。在终端命令提示符中输入如下命令,可以查看网络接口eth0的TCP/IP参数信息,如下图所示。 rootmyhost root# ifconfig eth0,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,从图中可看到IP地址为192.168.0.128,网络掩码为255.255.255.0,广播地址为192.168.0.255。,查看eth0的TCP/IP信息,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,2)
29、 配置网络信息 ifconfig工具可以配置系统中指定的网络接口的TCP/IP参数信息,其格式如下: ifconfig 网络接口设备名 IP地址 netmask 网络掩码 broadcast 广播地址 其中netmask部分和broadcast部分可以任选其一,因为从网络掩码和广播地址可以互相推算。上述命令可以用指定的IP地址和网络掩码来配置命令中指定的网络接口。 例7.5 使用ifconfig工具,给当前主机的eth0网络接口配置网络参数,其网络IP地址为192.168.0.138,子网掩码为255.255.255.0。,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,在终
30、端命令提示符中输入如下命令,命令执行结果如下图所示。 rootmyhost root# ifconfig eth0 192.168.0.138 netmask 255.255.255.0,配置eth0的TCP/IP信息,此处使用了ifconfig eth0命令来查看网络接口eth0的TCP/IP参数,也可以使用前面介绍的ping命令来查看该接口是否连通,以确定网络参数是否设置成功。具体如下图所示。,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,说明:ping命令返回“64 bytes from 192.168.0.138: icmp_seq=1 ttl=64 time=0.
31、152 ms”表示ifconfig工具的网络参数设置成功。,配置eth0网络参数并使用ping检查,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,3) 网络接口的启用和禁用 当网络接口的配置更改以后往往需要重启网络接口,以应用新的配置。使用ifconfig工具可以完成启用和禁用指定的网络接口的工作,具体方法如下: ifconfig 网络接口设备名 up|down 其中参数up表示启用指定的网络接口,参数down表示禁用指定的网络接口。 此外还可以使用network命令和ifup/ifdown命令来完成网络接口的启用和禁用。 其中,network是一个shell脚本程序,用于
32、启用、禁用或重启所有网络接口,其格式如下: /etc/rc.d/init.d/network 选项,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,常用的参数及含义如右表所示。 ifup和ifdown命令分别用启用和禁用指定的网络接口,其格式如下: ifup 网络接口设备名 ifdown 网络接口设备名 例如,在终端命令提示符中使用如下命令禁用eth0,然后使用ifconfig eth0来查看该网络设备的状态。如右图所示。 rootmyhost root# ifdown eth0,network脚本参数,禁用网络设备eth0,7.2 在终端中配置网络参数 7.2.1使用命令工
33、具配置网络参数,2.route工具的使用 使用ifconfig工具配置了网络接口的IP地址、网络掩码等参数后,该主机就可以在局域网络内和其他主机通信了,但是还不能访问外网的主机。此时需要使用route工具配置网络的路由记录或默认网关。 route工具可以用于查看当前的路由信息,也可以设置网络的默认路由信息。 1) 查看路由信息 route命令在不带任何信息时,系统将返回当前路由表的信息,如图所示。,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,route返回理由信息,系统返回的路由信息包括8个字段,各字段含义如下表所示。,7.2 在终端中配置网络参数 7.2.1使用命令工具
34、配置网络参数,network命令参数,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,2) 添加/删除路由记录 使用route命令添加或删除一条到达目标网络的路由记录,其格式如下: route add|del -net 网络地址 netmask 网络掩码 gw 网关地址 dev 网络接口 其中参数add表示向路由表中添加一条路由信息,del表示删除路由表中的一条路由信息。gw参数和dev参数任选其一。gw参数用于指定网关地址,dev参数用于指定到达目标地址时数据分组投递的网络接口。 使用router命令添加或删除一条到达目标主机的路由记录,其格式如下:,7.2 在终端中配置网
35、络参数 7.2.1使用命令工具配置网络参数,route add|del -host IP地址 gw 网关地址 dev 网络接口 在该命令中无需网络掩码,其中add参数、del参数、gw参数和dev参数含义同上。 3) 添加/ 删除默认网关 默认网关通常是一个公司或单位内部网络与外部网络通信的唯一通路,当公司内部网络上的主机与外部网络进行连接时,就将数据分组发给默认网关,由该网关负责数据分组的路由选择。可以使用route命令来添加或删除网络中的默认网关,其格式如下: route add|del default gw 网关地址,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,其中
36、add参数、del参数、gw参数和dev参数含义同上。 例7.6 使用route命令,给当前主机添加默认网关。其中,当前主机的默认网关地址为192.168.0.1。 在终端命令提示符下输入如下命令,为当前主机添加默认网关: rootmyhost root# route add default gw 192.168.0.1 再输入route命令查看当前路由信息,如下图所示。,添加默认网关,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,由route命令返回的最后一行可以看到默认网关添加成功。 尽管ifconfig和route工具非常有效,但是它们的命令效果只能维持在命令执行到网
37、络重启或系统重启的时限内,如果希望系统重启后ifconfig和route工具配置的参数仍然有效,可有以下的两个办法实现: (1)修改网络接口的配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0文件)中的指定内容。这种方法可以同时解决网络重启和系统重启后网络配置失效的问题。这种方法将在下面的小节中给予介绍。 (2)将相应的ifconfig和route配置命令,分别按行写入/etc/rc.d/rc.local文件。这种方法可以解决系统重启后ifconfig和route命令失效的问题,但是不能解决网络重启后ifconfig和route命令失效的问题。,7.2
38、 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,/etc/rc.d/rc.local文件是一个具有可执行属性的shell脚本文件,如下图所示。它在RedHat Linux 9系统启动时执行。通常,rc.local文件中的每一行都是一条命令,用于在系统启动时运行一个需要随系统一起运行的程序,类似于MS Windows的随机启动。,rc.local文件,7.2 在终端中配置网络参数 7.2.1使用命令工具配置网络参数,图中文件属性区域的首行“#!/bin/sh”则表示该文件是一个shell脚本文件。如图在该文件末尾添加两行就可以实现设置网络参数的命令ifconfig和route随系统启
39、动后自动执行,从而保证系统重启后原先使用ifconfig和route命令设置的网络参数仍然有效。如果,我们希望其他的程序随系统启动一起自动运行,可以采取类似的办法。,7.2 在终端中配置网络参数 7.2.2 使用netconfig配置网络参数,7.2.2 使用netconfig配置网络参数 在终端的命令提示符下输入命令netconfig,出现如图7-13所示的Network configuration配置界面,询问用户是否需要配置网络信息。,网络配置确认,7.2 在终端中配置网络参数 7.2.2 使用netconfig配置网络参数,用户可以使用Tab键移动光标,在“Yes”和“No”按钮间选择
40、。这里将光标移动到“Yes”按钮后,按下空格键表示确认选择,进入如右图所示的TCP/IP配置界面。这里允许用户选择是使用本网络的DHCP服务器提供的动态地址分配服务来动态的获取TCP/IP配置信息,还是使用手工设置TCP/IP信息。手工设置的TCP/IP信息包括IP地址、网络掩码、默认网关和主域名服务器等信息。,TCP/IP配置界面,7.2 在终端中配置网络参数 7.2.2 使用netconfig配置网络参数,将光标定位到“Use dynmic IP configuration(BOOTP/DHC)”,按下空格键,使其前面的方括号中标上“*”,表示选择使用DHCP服务来动态获取TCP/IP配置
41、信息。 或取消上面的选择,并将光标定位到“IP address”处,输入IP地址“192.168.0.128”;将光标定位到“Net mask”处,输入网络掩码“255.255.255.0”;将光标定位到“Default gateway”处,输入默认网关“192.168.0.1”;将光标定位到“Primary nameserver”处,输入域名解析服务器地址“210.45.144.18”,如右图所示。使用Tab键将光标定位到“OK”按钮上,然后使用空格键确认,完成TCP/IP网络接口信息配置。,TCP/IP配置信息,7.3 使用文件配置网络 7.3.1 网络接口配置文件,在上节中介绍使用net
42、config工具配置网络参数的方法。实际上,使用netconfig配置的网络参数最终都被写入了相应的网络配置文件中,这些文件包括/etc/sysconfig/network-scripts/ifcfg-eth0文件、/etc/sysconfig/network文件、/etc/hosts文件和/etc/resolv.conf文件等。在RedHat Linux 9中允许用户通过直接修改这些网络配置文件的办法来修改自己主机的网络接口参数。 7.3.1 网络接口配置文件 在RedHat Linux 9中用于记录网络接口配置信息的文件有两个,一个是/etc/sysconfig/network文件,其中包
43、含了网络的主机名和默认网关信息。另一个是/etc/sysconfig/network-scripts/ifcfg-eth0文件,其中包含了主机获取TCP/IP参数的方式、主机的IP地址等信息。,7.3 使用文件配置网络 7.3.1 网络接口配置文件,work文件 该文件中存放的网络默认网关参数和主机名是网络接口配置中的重要信息,当Linux系统重启或网络被重置时将从该文件中读取当前主机的主机名和默认使用的网关。如下图所示即为使用cat命令查看的network文件。其基本语法如下: 变量名 = 参数值,network文件,7.3 使用文件配置网络 7.3.1 网络接口配置文件,network文件
44、中的常用变量的含义如表7-9所示。由于主机名通常在Linux系统安装时已经确定,因此,此处只要修改默认网关的地址即可。当然用户也可以通过修改其中的HOSTNAME变量的值来修改主机名。,network文件中的变量,7.3 使用文件配置网络 7.3.1 网络接口配置文件,2.ifcfg-ethN文件 在RedHat Linux系统中,系统以太网的网络设备的配置文件ifcfg-ethN保存在/etc/sysconfig/network-scripts/目录中,Linux系统启动时从中读取信息来初始化网络接口。其中该文件用于ifcfg-eth0保存当前主机的第一块网卡的配置信息,如果当前主机有多块网
45、络接口卡,那么该目录还会包含ifcfg-eth1、ifcfg-eth2等文件,分别表示主机的第二个网络接口、第三个网络接口。此外,/etc/sysconfig/network-scripts/目录下还包括ifcfg-lo文件,其中设置了回环网络接口的网络配置信息。,7.3 使用文件配置网络 7.3.1 网络接口配置文件,所谓回环网络接口,是一种特殊的网络接口,该接口是在内核中实现的抽象接口,通过lo接口发送的数据并不会被投递到物理网络上,而只是在操作系统内核中传递,通常该接口用于测试网络TCP/IP协议安装是否正确。在网络地址指派公司ICANN分配IP地址的时候,将127开头的地址都留作了回环
46、网的测试地址。另外,回环网的默认主机名为localhost,所以在Linux的命令提示符下输入如下两个命令中的一个,可以测试当前系统中TCP/IP协议是否正常。 rootmyhost root# ping -c 5 127.0.0.1 rootmyhost root# ping -c 5 localhost,7.3 使用文件配置网络 7.3.1 网络接口配置文件,测试网络协议,如果命令能够得到类似于如下图所示的返回信息,则表示当前系统的网络协议正常。,7.3 使用文件配置网络 7.3.1 网络接口配置文件,ifcfg-eth0文件,使用cat命令查看本机ifcfg-eth0文件的内容,如下图所
47、示,其中常见阐述的含义如下表所示。,7.3 使用文件配置网络 7.3.1 网络接口配置文件,ifcfg-eth0文件中的变量,7.3 使用文件配置网络 7.3.1 网络接口配置文件,可以根据实际的网络状况来修改ifcfg-eth0文件,保存后需要重启网络才能生效。重启网络的方法有如下几种: (1)使用reboot或shutdown r now命令重启Linux操作系统。 (2)在命令命令提示符下执行network脚本。 (3)在命令命令提示符下使用service命令。service命令的功能是启动、停止或重启Linux系统的某些服务,其格式如下: service 服务名 参数 其参数及含义如右
48、表所示。,7.3 使用文件配置网络 7.3.1 网络接口配置文件,例如,在命令提示符下使用如下命令重启网络: rootmyhost root# service network restart 其执行过程如下图所示。,ifcfg-eth0文件中的变量,7.3 使用文件配置网络 7.3.1 网络接口配置文件,注意:其实,service命令用于调用/etc/init.d/目录下相应的服务启动脚本来实现启动、停止或重启系统服务。本例中service命令就是调用了/etc/init.d目录下的network脚本。图中返回的“确定”信息表示网络重启成功。,重启网络服务,7.3 使用文件配置网络 7.3.2
49、 域名解析客户端配置,7.3.2 域名解析客户端配置 域名的使用帮助了用户记忆Internet上的主机,方便了人们使用Internet网上的资源。但是网络设备能够识别的仍然是IP地址,当用户使用域名(这种域名被称为完全限制域名FQDN)访问Internet网络上的主机时,特定的网络设备都是首先将域名翻译成IP地址,再利用IP地址去访问指定的主机的。这个将域名翻译成IP地址以及将IP地址翻译成域名的过程,称为域名解析。 网络上的域名解析的方式有两种,一种是使用本地主机上的hosts文件,由于该文件中的解析数据需要用户自行更新,故称为静态解析,另一种是通过网络上能够提供域名解析服务的主机进行统一解析,该主机称为域名解析服务器或DNS服务器,由于DNS服务器上的解析数据无需发送域名解析的用户进行更新和管理,故称为动态解析。,