罗光亮 龙岗区信息咨询开发中心 深圳.龙岗
摘 要:本文详细分析了在网络中最常用的TCP/IP协议的原理和寻址方式,通过实例来描述TCP/IP在网络中进行子网分割和应用,使人对TCP/IP有一个更为充分的认识和应用。
关键词:协议;寻址;因特网
引言
随着计算机网络应用的日益普及,TCP/IP Internet协议已成为计算机工业中开放系统互连的事实上的标准。TCP/IP协议,即Transmission Control Protocol/Internet Protocol(传输控制协议/因特网协议),是目前最完美并广为接受的通信协议之一,它应用于在广域网中实现不同类型的网络以及不同类型的芯片和操作系统的主机之间的相互通信,各种类型的以太网中,如Windows 95/98的对等网、Windows NT、Unix、Linux、NetWare,目前都广泛地支持该协议。
TCP/IP寻址
在管理TCP/IP网络时,一个最有挑战性的工作是管理IP地址和保管记录好IP与地理位置的对应关系,尤其对于一个新的管理员或刚接触管理IP地址的人更是如此。信息从一个主机取出,放到另一个主机的时候,有三种东西起了作用,即主机名、主机地址、主机路径。这就关系到IP寻址的问题。
一、IP地址类型
为了控制IP寻址的方式,制定了类型结构,即把IP地址分为五类(A-E类),有三种用在了商业网络中。
A类 A类地址的高端位总是置为0。只要最左一位置0,剩下的位数不管是0或1,都是A类地址。因为第一个八位组决定网络地址的类型,只要第一个八位组小于128就是A类地址。如:10.35.64.23是一个A类的TCP/IP地址。如果用缺省的A类地址子网掩码255.0.0.0。则网络部分地址为10.0.0.0,主机部分地址为:0.35.64.23。总共有128(0-127)个A类地址,但每个A类网络可以有16777216(224)个不同的主机标识。
B类 B地址是IP地址的高端前两位置位10。并且B类IP地址中,前两个8位组表示网络部分,后两个8位组表示主机部分。B类地址范围是从128.0.0.0至191.255.0.0。如136.35.26.64是一个B类TCP/IP地址。用B类缺省子网掩码255.255.0.0与此地址进行位操作,则网络部分为136.35.0.0,主机部分为0.0.26.64。B类可以有16384个网络地址,每个网中可有65536(216)个不同的主机标识。
C类 C类地址高端的三位设置为110。C类地址前三个八位组作为网络地址,最后一个八位组作为主机地址。C类地址的范围是从192.0.0.0到223.255.255.255。如198.35.64.85是一个C类TCP/IP地址,用C类缺省子网掩码255.255.255.0,则网络部分是:198.35.64.0,主机部分是0.0.0.85。C类有2097152个网址,每个C类网可有256(28)个不同的主机标识。目前局域网中最常用的是C类IP地址,我单位(龙岗区信息中心)局域网主机的IP地址为:192.168.168.1和192.168.168.2,子网掩码是255.255.255.0。
最后两类IP地址到现在还没有应用,这里不作介绍。
二、子网分割(以C类地址为例)
在实际应用中,即使是使用C类网址,也会浪费掉相当一部分IP地址,有一种更有效的方法使用IP地址,这就是子网分割。子网分割就是利用主机地址提供更多网址的技巧,减少了每段网中的主机数,并且更有效地利用配置给我们的网络地址。
每个IP地址有两部分组成,一部分为网络地址,一部分为主机地址。C类地址用前三个8位组表示网络地址,最后一个8位组为主机地址。像如下形式表示,其中N代表网络,H代表主机。
NNNNNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
建一个子网掩码,就是把部分H变为N,由此得的结果用于网络地址。决定有多少个H需要变为N的公式为2x-2=Y,其中X表示用于网络地址的位数,Y是得到的网络个数结果。如用主机部分的前三位给网络部分,地址如下所示:
NNNNNNNN.NNNNNNNN.NNNNNNNN.NNNHHHHH
用公式计算,我们有23-2=6个子网,每个子网可以有25-2=30个主机。在缺省的情况下,C类地址的子网掩码是255.255.255.0,这表示前三个8位组用作网络地址,最后一个8位组用作主机地址。现在我们决定有最后8位组的前三位也用于网址,而只用后五位作为主机地址,我们把前三位设置为1,把后五位主机地址设置为0。
128 64 32 16 8 4 2 1
1 1 1 0 0 0 0 0
128+64+32=224,这样我们的子网掩码就是255.255.255.224。
因我们前三位用于子网掩码,得到如下八种不同的形式(二进制数):000 001 010 011 100 101 110 111
在大多数情况下,全1和全0是不允许的,一些操作系统和路由器不能控制全1和全0的子网掩码,除去不能用的网号,还剩下六个潜在的子网掩码即:001 010 011 100 101 111。所以我们可计算出来如下所示:其中H只代表主机位。
128 64 32 16 8 4 2 1 =
0 0 1 H H H H H 32
0 1 0 H H H H H 64
0 1 1 H H H H H 96
1 0 0 H H H H H 128
1 0 1 H H H H H 160
1 1 0 H H H H H 192
我们用向ISP申请的公有地址如:210.85.37.0和230.87.31.0进行子网分割,我们得到如下潜在网络地址:
210.85.37.32 230.87.31.32
210.85.37.64 230.87.31.64
210.85.37.96 230.87.31.96
210.85.37.128 230.87.31.128
210.85.37.160 230.87.31.160
210.85.37.192 230.87.31.192
因为子网ID定义的第一地址,同一子网的最后一个地址保留用作广播,余下的地址都可以用于主机。为求得第一个地址,我们分析最后一个用于主机得八位组,高端前三位用于子网掩码,我们可以得到网络地址如下所示:
128 64 32 16 8 4 2 1 =
0 0 1 H H H H H 32
再把高端前三位用N代替计算低端得五位,可计算出主机地址范围,如下所示:
128 64 32 16 8 4 2 1 =
N N N 0 0 0 0 1 32+1=33
N N N 1 1 1 1 0 32+30=62
主机地址范围在33到62,所以第一组IP地址210.85.37.33到210.85.34.62,余下的主机地址范围如下:
210.85.37.65到210.85.37.94
210.85.37.97到210.85.37.126
210.85.37.129到210.85.37.158
210.85.37.161到210.85.37.190
210.85.37.193到210.85.37.222
第二组主机地址范围可相应计算得出。
三、寻址过程
每个网中每个主机要有唯一的TCP/IP地址,这样才能确保两个TCP/IP主机通讯成功。所以在计算机上安装和配置TCP/IP协议的时候,得给计算机一个有效的IP地址,并定义子网掩码,提供一个走出网络的网关(或路由器)地址;提供两个或更多的局域网外的DNS服务器的地址。以某站点为例:www.web站点.com,系统的第一件事就是“解析”或读HOSTS文件,看是否列有Web站点.com,如果没有,系统就去访问配置的DNS服务器,从配置信息中找到DNS服务器的IP地址,通过布尔与运算,比较源地址网络部门与目的地址的网络部分,如果网络地址一样,说明目的地址和源在同一网中;如果不一样,则目的地址是远程地址,并不需要计算机记录世界各地的远程地址,这些事情由定义好的网关或路由器来完成,传给路由器的包包括源地址和目的地址,路由器用这些信息找一条最佳路径到达目的地。但如果IP地址和主机实际所在网段的地址不匹配,经过与运算也不会知道目的地址是在局域网中或是远程的,并且所有的路由器不可能再找到你的计算机,这就意味着你不能和别人的计算机通讯,别人的计算机也不能和你通讯。
固定IP地址的设置
(一)分配的IP地址能够满足网络的需求
我们的IP地址一般都可以通过直接向当地的ISP提出申请而获得。当分配给你的IP地址从网络号到主机号都完全能够满足局域网的需求时,只要简单地为每台主机和可进行网管的设备分别指定一个IP地址即可,当然你应当建立一个必要的日志文件对IP地址的分配情况作一个记录,以便将来进行的查询。
1.Windows 95/98主机的IP地址设置
安装TCP/IP协议。在控制面板->网络->配置选项卡中单击“添加”按钮,从列表框中选中“协议”后再次单击“添加”按钮,然后在“厂商”列表框中选中“Microsoft”,在“网络协议”列表框中选中“TCP/IP”,单击“确定”按钮并根据提示插入Windows 9x安装光盘即可完成。重新启动计算机以便使新的设置生效。
指定IP地址。在控制面板->网络->配置选项卡中选中与网卡绑定的TCP/IP协议,单击“属性”按钮,在IP地址选项卡中选中指定IP地址选项按钮,然后键入为该主机分配的IP地址和子网掩码。若分配的是A类IP地址,则其子网掩码为255.0.0.0;若分配的是B类IP地址,则其子网掩码为255.255.0.0;若分配的是C类IP地址,则其子网掩码为255.255.255.0。应当注意的是,主机部分全部为0或255的IP地址不能使用,因为该值已经定义并保留为网络内部的广播地址。
2.Windows NT主机的IP地址设置
安装TCP/IP协议。在控制面板->网络->协议选项卡中单击“添加”按钮,然后再在网络协议列表框中选中TCP/IP协议后,单击确定按钮,根据提示插入Windows NT安装盘,待机器重新启动后协议添加完成。
指定IP地址。在控制面板->网络->协议选项卡的网络协议列表框中选中TCP/IP通讯协议,单击属性按钮。由于Windows NT可以安装两块网卡,因此应当在IP地址->适配器下拉列表框中选定不同的网卡分别进行配置。选中指定IP地址选项按钮后,分别键入为其分配的IP地址和子网掩码, 龙岗区信息中心局域网络主机分配的是C类IP地址,其子网掩码为:255.255.255.0。默认网关指用以联接到其它网络的路由器的IP地址,但若以本机充当联接两个不同子网的路由器则可将其设为本机的地址。
3.网络连接设备的IP地址设置
以龙岗区信息中心的Bay Networks 10/100M Switch Hub为例。
(1)建立与终端的连接。用一根随机赠送的九芯交叉电缆将计算机的串口与Hub 的Console端口连接起来,启动计算机,运行附件中的仿真终端程序(Hyper Terminal),建立新的连接,并在Connect Using下拉列有框中选择以串口连接(Direct to Com)的方式,然后在串中属性中将波特率(Bits per second)设置为9600,数据位(Data bits)设置为8,奇偶校验位(Parity)设置为无,停止位(Stop bits)设置为1位,流量控制(Flow control)设置为无。
(2)登录。Hub接电,建立连接后,按回车键显示登录信息,输入缺省用户名及口令。
Login: security
Password: security
进入主菜单。
(3)配置IP地址。在Select menu option行键入IP并回车,进入IP子菜单后,在Select menu option行键入interface并回车,在Select menu option (ip/interface)行输入命令define,然后根据提示分别键入其IP address(IP地址)为192.168.168.11、subnet mask(子网掩码)为255.255.255.0和default gateway(缺省网关)192.168.168.254,Enter SLIP address和Enter SLIP subnet mask二项内容可以忽略,。配置完毕,系统将把已经配置好的信息重新显示一遍以进行确认。此时,键入q,可回到上一级菜单。
至此IP地址已配置完毕,可用Ping 或 Display来验证。
(二)分配的IP地址仅能满足对主机数量的需求
随着主机地址以惊人的速度增长,世界上的IP地址迟早会超出现在IP地址的范围,IP地址会被用尽,IP网络通讯会陷于瘫痪。因此,您所分得的一个C类的地址或许远不能满足您欲在局域网中再建立若干子网的需要,于是我们使用子网掩码(Subnet Mask)进行子网分割来解决这个问题。
子网掩码以四个字节24 bit表示,其主要功能包括两个方面,一是用来区分IP地址的网络号和主机号,二是用来将某个类地址再划分为若干子网。
以龙岗区信息中心为例,现有一个C类网络地址192.168.168.0,毫无疑问,所有的设备从192.168.168.0 - 192.168.168.254都将处于同一个网络之中,但需要将自己的网络划分为6个子网以便于管理,除去000和111作为保留地址不能够使用外,尚有六种组合可资建立子网。各子网的前三个字节当然仍然是192.168.168,所以各子网提供的主机的IP地址范围为:
192.168.168.33到192.168.168.62
192.168.168.65到192.168.168.94
192.168.168.97到192.168.168.126
192.168.168.129到192.168.168.158
192.168.168.161到192.168.168.190
192.168.168.193到192.168.168.222
每个子网都会保留全0或全1的两个地址作为广播地址使用。
(三)网络及主机数量均不能满足需要
随着IP地址资源的日趋枯竭,可供分配的IP地址越来越少,往往一个拥有几十到几百台计算机规模的网络只能得到少数几个IP地址。对于这种情况,可采取代理服务器来解决,管理员可以通过组合使用这种方法把内网和外网隔离。以龙岗区信息中心为例,内部网的Windows NT Server 通过代理软件MS PROXY 2.0充当网关代理,实现Intranet网与Internet网的连接,网关上安装两块网卡,一块与外部Internet相连,一块与内部局域网相连。外部网卡赋予合法的公用IP地址(即向ISP申请的IP),内部网卡和整个内部局域网可采用专用IP地址即192.168.168.0-192.168.168.254,也可采用DHCP来动态分配IP地址。在局域网内部,将该地址当作公用IP地址一样地使用和配置。通过代理服务器,一方面,当局域网内部的主机访问Internet时,代理服务器接受来自该私用地址的请求,从公用Internet上获取所请求的信息,并返回给原始用户,或者干脆直接将来自内部的私用IP地址转换为公用的IP地址以实现与Internet主机间的通信,从而使内部网络内的所有主机都具有通过代理服务器访问Internet的能力。而且,MS PROXY可以通过IP地址、子码掩码、域名方式来控制访问站点,操作过程如下:开始->程序->IIS管理器,在管理器中双击“WEB PROXY”,打开“Web proxy service properties”对话框,选择service,单击security,在网络代理服务的安全设置对话框中选择过滤模式,并指定相应的范围即可。也可以对某些主机的访问能力进行必要的限制。另一方面,外部的主机也可以通过代理服务器访问指定的允许外界访问的主机,从而实现内外部主机的双向通讯。另外一种方法是通过网络地址变换(NAT),使网关把内部的IP地址隐藏起来,一个包到达网关,网关记住是谁送来的,然后把它的(网关的)公用IP地址放在包中源地址的位置,当这个包返回应答,网关再把隐掉的地址加上,像原来发出时一样。NAT是一种不错的解决地址问题的方法。
动态IP地址的设置
动态IP地址,顾名思义就是设备所取得的IP地址是非固定的,是可以动态分配和取得的。使用动态IP地址的原因主要有两个:一是可以用较少的IP地址构建较大的网络。如果与连入网络的主机和其它设备相比,所分得的公用IP地址略少一些,如果为每个设备都分配一个固定的IP地址,则显然部分计算机将不能接入网络。考虑到并非所有的计算机都在同一时间内运行并与网络连接,所以,如果将IP进行动态分配,即计算机连入网络时自动取得,断开与网络的连接时自动收回,即可满足网络对IP地址的需求。龙岗区信息中心的培训部的几十台电脑组成的局域网就是采用动态分配IP地址的方法。二是可以增加网络内计算机的可移动性。当某台主机从一个子网移动到另一个子网时,由于IP地址中网络号的不同,从而导致该计算机与其它主机间无法进行通信,解决该类问题最简单的方式就是为移动的主机在新子网中重新指定一个IP地址。但是,如果我们采用动态IP地址,就会减少这种网络管理的复杂性。Windows NT使用DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)来解决动态IP地址的分配问题。使用DHCP时,整个网络中必须至少有一台运行Windows NT主机安装有DHCP软件,充当DHCP服务器,而其它所有欲使用DHCP功能的工作站也必须具有支持DHCP的功能。这样,当DHCP工作站启动时,它就会自动与DHCP服务器通信,并由DHCP服务器为其提供一个IP地址。当然,这个地址只是临时的,当租约期满,这个地址就会还给DHCP服务器,并将其提供给其他的DHCP工作站使用。如果原DHCP工作站仍需要IP地址,可以再向DHCP服务器租用另一个IP地址。
以龙岗区信息中心培训部局域网为例
(一) DHCP服务器的设置
打开服务器控制面板->网络->服务选项卡,单击添加按钮,在网络服务列表框中选中“Microsoft DHCP服务器”,单击确定按钮,根据提示放入NT光盘完成文件复制,单击关闭按钮,然后重新启动计算机。
打开管理工具->DHCP管理器,选择本地主机DHCP服务器。打开菜单作用域->创建,弹出创建领域对话框,分别键入起始地址为:192.168.168.1和结束地址192.168.168.254以及子网掩码255.255.255.0。若欲保留某段地址为特定主机或设备使用,可在排除范围中进行设定。租用期限建议选择为限制时间方式,并根据需要规定租用的期限。确定后,在本地计算机下多了一个新的IP地址范围,黄色的灯泡表示该IP地址范围已经启用。
若欲保留某些IP地址给某些特定设备(如DHCP服务器、WWW服务器、E-mail服务器、FTP服务器、Router、Switch Hub等),可使用保留客户设置。打开管理工具->DHCP服务器,双击打开本地计算机,选中IP地址范围。打开菜单作用域->添加保留位置,在唯一标识符中键入该主机网卡或设备的ID号,在IP地址中键入欲为其保留的IP地址,并在客户名中为该设备起一个简单易记的名字。若欲继续为其它设备指定IP地址,可单击添加按钮,否则,即可关闭退出。添加完成后,可以利用菜单作用域->活动租用命令进行检查,也可在此利用属性作相应的修改。注意:DHCP服务器应当使用固定的IP地址。
(二)Windows 95/98 DHCP工作站的设置
首先确认该工作站已经安装了TCP/IP协议。打开控制面板->网络->与网卡绑定的TCP/IP->属性->IP地址选项卡,选中自动获得一个IP地址即可。
结束语
TCP/IP协议的应用是非常广泛的,而且不是固定不变的。由于业务负载和规模的增长,为了保持一定的服务,迫使技术要有所提高;新的应用对深层的技术提出了更高的要求,新的技术也使提供新服务成为可能。TCP/IP协议在网络高速发展的今天其技术也会相应提升到更高的层次,应用前景更为广阔。
参考文献
[1] DOUGLAS E.COMER,DAVID L.STEVENS著. 张娟,王海译. 用TCP/IP进行网际互连.第1卷).电子工业出版社.1999.
[2] DOUGLAS E.COMER,DAVID L.STEVENS著. 张娟,王海译. 用TCP/IP进行网际互 连.(第2卷).电子工业出版社.1999.
[3] Gary Govanus 著. 侯在克,张书亭 等译. 高效配置TCP/IP. 电子工业出版社.1999.
[4] 刘晓辉.局域网中IP地址的设置.电脑.1999.
[5] 赵明俊.李书明.MS PROXY2.0在计算机网络中的应用.计算机系统应用.2000
工作单位:广东省深圳市龙岗区信息咨询开发中心
通信地址:广东省深圳市龙岗区计划统计局信息中心
邮编:518172 电话号码:0755-8909731 E-mail:
[email protected]