文章导航PC6首页软件下载单机游戏安卓资源苹果资源

pc软件新闻网络操作系统办公工具编程服务器软件评测

安卓新闻资讯应用教程刷机教程安卓游戏攻略tv资讯深度阅读综合安卓评测

苹果ios资讯苹果手机越狱备份教程美化教程ios软件教程mac教程

单机游戏角色扮演即时战略动作射击棋牌游戏体育竞技模拟经营其它游戏游戏工具

网游cf活动dnf活动lol周免英雄lol礼包

手游最新动态手游评测手游活动新游预告手游问答

您的位置:首页网络冲浪网络其他 → TCP/IP基础

TCP/IP基础

时间:2004/10/8 16:48:00来源:本站整理作者:蓝点我要评论(0)

    TCP/IP协议体系结构简介 

1、TCP/IP协议栈 

四层模型 
  TCP/IP这个协议遵守一个四层的模型概念:应用层、传输层、互联层和网络接口层。 

网络接口层 
  模型的基层是网络接口层。负责数据帧的发送和接收,帧是独立的网络信息传输单元。网络接口层将帧放在网上,或从网上把帧取下来。 

互联层 
  互联协议将数据包封装成internet数据报,并运行必要的路由算法。 
这里有四个互联协议: 
网际协议IP:负责在主机和网络之间寻址和路由数据包。 
地址解析协议ARP:获得同一物理网络中的硬件主机地址。 
网际控制消息协议ICMP:发送消息,并报告有关数据包的传送错误。 
互联组管理协议IGMP:被IP主机拿来向本地多路广播路由器报告主机组成员。 

传输层 
  传输协议在计算机之间提供通信会话。传输协议的选择根据数据传输方式而定。 
两个传输协议: 
传输控制协议TCP:为应用程序提供可靠的通信连接。适合于一次传输大批数据的情况。并适用于要求得到响应的应用程序。 
用户数据报协议UDP:提供了无连接通信,且不对传送包进行可靠的保证。适合于一次传输小量数据,可靠性则由应用层来负责。 

应用层 
应用程序通过这一层访问网络。 

网络接口技术 
IP使用网络设备接口规范NDIS向网络接口层提交帧。IP支持广域网和本地网接口技术。 

串行线路协议 
TCP/IPG一般通过internet串行线路协议SLIP或点对点协议PPP在串行线上进行数据传送。(是不是我们平时把它称之为异步通信,对于要拿L INUX提供建立远程连接的朋友应该多研究一下这方面的知识)? 


2、ARP 

要在网络上通信,主机就必须知道对方主机的硬件地址(我们不是老遇到网卡的物理地址嘛)。地址解析就是将主机IP地址映射为硬件地址的过程。地址解析协议A RP用于获得在同一物理网络中的主机的硬件地址。 

解释本地IP地址(要了解地址解析工作过程的朋友看好了) 
主机IP地址解析为硬件地址: 
(1)当一台主机要与别的主机通信时,初始化ARP请求。当该IP断定IP地址是本地时,源主机在ARP缓存中查找目标主机的硬件地址。 
(2)要是找不到映射的话,ARP建立一个请求,源主机IP地址和硬件地址会被包括在请求中,该请求通过广播,使所有本地主机均能接收并处理。 
(3)本地网上的每个主机都收到广播并寻找相符的IP地址。 
(4)当目标主机断定请求中的IP地址与自己的相符时,直接发送一个ARP答复,将自己的硬件地址传给源主机。以源主机的IP地址和硬件地址更新它的A RP缓存。源主机收到回答后便建立起了通信。 

解析远程IP地址 
不同网络中的主机互相通信,ARP广播的是源主机的缺省网关。 
目标IP地址是一个远程网络主机的话,ARP将广播一个路由器的地址。 

(1)通信请求初始化时,得知目标IP地址为远程地址。源主机在本地路由表中查找,若无,源主机认为是缺省网关的IP地址。在ARP缓存中查找符合该网关记录的I P地址(硬件地址)。 

(2)若没找到该网关的记录,ARP将广播请求网关地址而不是目标主机的地址。路由器用自己的硬件地址响应源主机的ARP请求。源主机则将数据包送到路由器以传送到目标主机的网络,最终达到目标主机。 

(3)在路由器上,由IP决定目标IP地址是本地还是远程。如果是本地,路由器用ARP(缓存或广播)获得硬件地址。如果是远程,路由器在其路由表中查找该网关,然后运用A RP获得此网关的硬件地址。数据包被直接发送到下一个目标主机。 

(4)目标主机收到请求后,形成ICMP响应。因源主机在远程网上,将在本地路由表中查找源主机网的网关。找到网关后,ARP即获取它的硬件地址。 


(5)如果此网关的硬件地址不在ARP缓存中,通过ARP广播获得。一旦它获得硬件地址,ICMP响应就送到路由器上,然后传到源主机。 

ARP缓存 
  为减少广播量,ARP在缓存中保存地址映射以备用。ARP缓存保存有动态项和静态项。动态项是自动添加和删除的,静态项则保留在CA CHE中直到计算机重新启动。 

ARP缓存总是为本地子网保留硬件广播地址(0xffffffffffffh)作为一个永久项。 
此项使主机能够接受ARP广播。当查看缓存时,该项不会显示。 
每条ARP缓存记录的生命周期为10分钟,2分钟内未用则删除。缓存容量满时, 
删除最老的记录。 

加入静态(永久)记录 
通过添加静态ARP项可减少ARP请求访问主机的次数。 

ARP包的结构 
ARP结构的字段如下: 
硬件类型--使用的硬件(网络访问层)类型。 
协议类型--解析过程中的协议使用以太类型的值。 
硬件地址长度--硬件地址的字节长度,对于以太网和令牌环来说,其长度为6字节。 
协议地址长度--协议地址字节的长度,IP的长度是4字节。 
操作号--指定当前执行操作的字段。 
发送者的硬件地址--发送者的硬件地址。 
发送者的协议地址--发送者的协议地址。 
目的站硬件地址--目标者的硬件地址。 
目的站协议地址--目标者的协议地址。 


3、ICMP和IGMP 

internet控制消息协议ICMP是用于报告错误并代表IP对消息进行控制。 
IP运用互联组管理协议IGMP来告诉路由器,某一网络上指导组中的可用主机。 

ICMP 
ICMP源抑制消息:当TCP/IP主机发送数据到另一主机时,如果速度达到路由器或者链路的饱和状态,路由器发出一个ICMP源抑制消息。 

ICMP数据包结构 
类型:一个8位类型字段,表示ICMP数据包类型。 
代码:一个8位代码域,表示指定类型中的一个功能。如果一个类型中只有一种功能,代码域置为0。 
检验和:数据包中ICMP部分上的一个16位检验和。 
指定类型的数据随每个ICMP类型变化的一个附加数据。 

IGMP 
  IGMP信息传给别的路由器以使每个支持多路广播的路由器获知哪个主机组和哪个网络 
中。 

IGMP包结构 
版本:IGMP的版本,值一般为0x1h。 
类型:IGMP消息的类型。0x1h类型称为主机成员请求,在多路广播路由器上用于指定多级组中的任何成员轮询一个网络。0x2h类型称为主机成员报告,在主机上用于发布指定组中的成员情况或对一个路由器的主机成员请求进行回答未用:未用的域名被发送者置零且被接收者忽略。 
检验和:IGMP头的一个16位检验和。 
组地址:主机用该组地址在一个主机成员请求中存储IP多路广播地址。在主机成员请求中, 
组地址被全置零,而且硬件级的多路广播地址被用来标示主机组。 

4、IP 

  IP是一个无连接的协议,主要就是负责在主机间寻址并为数据包设定路由,在交换数据前它并不建立会话。因为它不保证正确传递,另一方面,数据在被收到时,I P不需要收到确认,所以它是不可靠的。 
  有一些字段,在当数据从传输层传下来时,会被附加在数据包中,我们来看一下这些字段: 
源IP地址:用IP地址确定数据报发送者。 
目标IP地址:用IP地址确定数据报目标。 
协议:告知目的机的IP是否将包传给TCP或UDP。 
检查和:一个简单的数学计算,用来证实收到的包的完整性。 
TTL生存有效时间:指定一个数据报被丢弃之前,在网络上能停留多少时间(以秒计)。它避免了包在网络中无休止循环。路由器会根据数据在路由器中驻留的时间来递减T TL。其中数据报通过一次路由器,TTL至少减少一秒。 
  根据我们前面提到关于ARP的知识,如果IP地址目标为本地地址时,IP将数据包直接传给那个主机;如果目标地址为远程地址的话,I P在本地的路由表中查找远程主机的路由(看来好象我们平时拨114一样)。如果找到一个路由,IP用它传送数据包。如果没找到呢,就会将数据包发送到源主机的缺省网关,也称之为路由器。( 很多时候一直在搞网关和路由器的定义,其实我觉得在学的时候不一定死抠概念,现在硬件和软件结合的产品越来越多了,一时很分清的,只要我们运用的时候可以解决实际问题嘛。) 这样当路由器收到一个包后,该包向上传给IP: 

(1)如果交通阻塞(听起来蛮可怕的),包在路由器中停滞,TTL至少减1或更多。要是它降到0的话,包就会被抛弃。 
(2)如果对于下一网络来说包太大的话,IP会将它分割成若干个小包。 
(3)如果包被分解,IP为每个新包制造一个新头,其中包括:一个标志,用来显示其它小包在其后;一个小包ID,用来确定所有小包是一起的;一个小包偏移,用来告诉接收主机怎么重新组合它们。 
(4)IP计算一个新的检验和。 
(5)IP获取一个路由的目标硬件地址。 
(6)IP转发包。 
  在下一主机,包被发送到TCP或UDP。每个路由器都要重复该过程。直到包到达最终目的地。当包到达最终目的地后,IP将小包组装成原来的包。 


5、TCP 
TCP是一种可靠的面向连接的传送服务。它在传送数据时是分段进行的,主机交换数据必须建立一个会话。它用比特流通信,即数据被作为无结构的字节流。 
  通过每个TCP传输的字段指定顺序号,以获得可靠性。如果一个分段被分解成几个小段,接收主机会知道是否所有小段都已收到。通过发送应答,用以确认别的主机收到了数据。对于发送的每一个小段,接收主机必须在一个指定的时间返回一个确认。如果发送者未收到确认,数据会被重新发送;如果收到的数据包损坏,接收主机会舍弃它,因为确认未被发送,发送者会重新发送分段。 

端口 
  SOCKETS实用程序使用一个协议端口号来标明自己应用的唯一性。端口可以使用0到65536之间的任何数字。在服务请求时,操作系统动态地为客户端的应用程序分配端口号。 

套接字 
  套接字在要领上与文件句柄类似,因为其功能是作为网络通信的终结点。一个应用程序通过定义三部分来产生一个套接字:主机IP地址、服务类型( 面向连接的服务是TCP,无连接服务是UDP)、应用程序所用的端口。 

TCP端口 
  TCP端口为信息的传送提供定地点,端口号小于256的定义为常用端口。 

TCP的三次握手 
  TCP对话通过三次握手来初始化。三次握手的目的是使数据段的发送和接收同步;告诉其它主机其一次可接收的数据量,并建立虚连接。 
我们来看看这三次握手的简单过程: 

(1)初始化主机通过一个同步标志置位的数据段发出会话请求。 
(2)接收主机通过发回具有以下项目的数据段表示回复:同步标志置位、即将发送的数据段 
的起始字节的顺序号、应答并带有将收到的下一个数据段的字节顺序号。 
(3)请求主机再回送一个数据段,并带有确认顺序号和确认号。 

TCP滑动窗口 
TCP滑动窗口用来暂存两台主机间要传送的数据,有点类似CACHE。 
每个TCP/IP主机有两个滑动窗口:一个用于接收数据,另一个用于发送数据。 

6、UDP 

  用户数据报协议UDP提供了无连接的数据报服务。它适用于无须应答并且通常一次只传送少量数据的应用软件。 

UDP端口 
端口作为多路复用的消息队列使用。 
15 NETSTAT 网络状态 
53 DOMAIN 域名服务器 
69 TFTP 平凡文件传送协议 
137 NETBIOS-NS NETBIOS命令服务 
138 NETBIOS-DGM NETBIOS数据报服务 
161 SNMP SNMP网络监视器 


IP地址分配 

1、IP地址 

  IP地址标识着网络中一个系统的位置。我们知道每个IP地址都是由两部分组成的:网络号和主机号。其中网络号标识一个物理的网络,同一个网络上所有主机需要同一个网络号,该号在互联网中是唯一的;而主机号确定网络中的一个工作端、服务器、路由器其它T CP/IP主机。对于同一个网络号来说,主机号是唯一的。每个TCP/IP主机由一个逻辑IP地址确定。 

网络号和主机号 
  IP地址有两种表示形式:二进制表示(1和0太多了就搞不清)和点分十进制表示。每个IP地址的长度为4字节,由四个8位域组成,我们通常称之为八位体。八位体由句点. 分开,表示为一个0-255之间的十进制数。一个IP地址的4个域分别标明了网络号和主机号。 

2、地址类型 

  为适应不同大小的网络,internet定义了5种IP地址类型。可以通过IP地址的前八位来确定地址的类型: 
 类型 IP形式 网络号 主机号 
 A类 w.x.y.z w x.y.z 
 B类 w.x.y.z w.x y.z 
 C类 w.x.y.z w.x.y z 
我们来看一下这5类地址: 
  A类地址:可以拥有很大数量的主机,最高位为0,紧跟的7位表示网络号,余24位表示 
    主机号,总共允许有126个网络。 
  B类地址:被分配到中等规模和大规模的网络中,最高两位总被置于二进制的10,允许有 
16384个网络。 
  C类地址:被用于局域网。高三位被置为二进制的110,允许大约200万个网络。 
  D类地址:被用于多路广播组用户,高四位总被置为1110,余下的位用于标明客户机所属 
的组。 
  E类地址是一种仅供试验的地址。 

3、地址分配指南 

在分配网络号和主机号时应遵守以下几条准则: 
 (1)网络号不能为127。大家知道该标识号被保留作回路及诊断功能,还记得平时ping 
127.0.0.1? 
 (2)不能将网络号和主机号的各位均置1。如果每一位都是1的话,该地址会被解释为网内 
广播而不是一个主机号。(TCP/IP是一个可广播的协议嘛) 
 (3)相应于上面一条,各位均不能置0,否则该地址被解释为“就是本网络”。 
 (4)对于本网络来说,主机号应该是唯一。(否则会出现IP地址已分配或有冲突之类的错误) 

分配网络号 
  对于每个网络以及广域连接,必须有唯一的网络号,主机号用于区分同一物理网络中的不 
同主机。如果网络由路由器连接,则每个广域连接都需要唯一的网络号。 

分配主机号 
  主机号用于区分同一网络中不同的主机,并且主机号应该是唯一的。所有的主机包括路由 
器间的接口,都应该有唯一的网络号。路由器的主机号,要配置成工作站的缺省网关地址。 

有效的主机号 
A类:w.0.0.1--w.255.255.254 
B类:w.x.0.1--w.x.255.254 
C类:w.x.y.1--w.x.y.254 


4、子网屏蔽和IP地址 

  TCP/IP上的每台主机都需要用一个子网屏蔽号。它是一个4字节的地址,用来封装或“屏蔽”IP地址的一部分,以区分网络号和主机号。当网络还没有划分为子网时,可以使用缺省的子网屏蔽;当网络被划分为若干个子网时,就要使用自定义的子网屏蔽了。 

缺省值 
  我们来看看缺省的子网屏蔽值,它用于一个还没有划分子网的网络。即使是在一个单段网络上,每台主机也都需要这样的缺省值。 
  它的形式依赖于网络的地址类型。在它的4个字节里,所有对应网络号的位都被置为1,于是每个八位体的十进制值都是255;所有对就主机号的位都置为0 。例如:C类网地址192.168.0.1和相应的缺省屏蔽值255.255.255.0。 

确定数据包的目的地址 
  我们说把屏蔽值和IP地址值做“与”的操作其实是一个内部过程,它用来确定一个数据包是传给本地还是远程网络上的主机。其相应的操作过程是这样的:当T CP/IP初始化时,主机的IP地址和子网屏蔽值相“与”。在数据包被发送之前,再把目的地址也和屏蔽值作“与”,这样如果发现源IP地址和目的I P地址相匹配,IP协议就知道数据包属于本地网上的某台主机;否则数据包将被送到路由器上。 
注:我们知道“与”操作是将IP地址中的每一位与子网屏蔽中相应的位按逻辑与作比较。 

建立子网 

1、 子网简介 


  一个网络实际上可能会有多个物理网段,我们把这些网段称之为子网,其使用的IP地址是由某个网络号派生而得到的。 
  将一个网络划分成若干个子网,需要使用不同的网络号或子网号。当然了,划分子网有它的优点,通过划分子网,每个单位可以将复杂的物理网段连接成一个网络,并且可以: 
(1) 混合使用多种技术,比如以太网和令牌环网。(最流行的两种接口都支持了哦) 

(2) 克服当前技术的限制,比如突破每段主机的最大数量限制。 
(3) 通过重定向传输以及减少广播等传输方式以减轻网络的拥挤。 

实现子网划分 
  在动手划分子网之前,我们一定要先分析一下自己的需求以及将来的规划。一般情况下我们遵循这样的准则: 
(1) 确定网络中的物理段数量。(就是子网个数嘛) 
(2) 确定每个子网需要的主机数。注意一个主机至少一个IP地址。 
(3) 基于此需求,定义:整个网络的子网屏蔽、每个子网唯一的子网号和每个子网的主机号 
范围。 

子网屏蔽位 
  在定义一个子网屏蔽之前,确定一下将来需要的子网数量及每子网的主机数是必不可少的一步。因为当更多的位用于子网屏蔽时,就有更多的可用子网了,但每个子网中的主机数将减少。( 这和定义IP地址的概念正好相反) 

2、定义子网屏蔽 
  将网络划分成若干个子网时,必须要定义好子网屏蔽。我们来看看定义的步骤: 
(1)确定物理网段也就是子网的个数,并将这个数字转换成二进制数。比如B类地址,分6 
个子网就是110。 
(2)计算物理网段数(子网数)的二进制位数,这里是110,所以需要3位。 
(3)以高位顺序(从左到右)将这个反码转换成相应的十进制值,因为需要3位,就将主机号 
前3位作为子网号,这里是11100000,所以屏蔽就是255.255.254.0。 

3、定义子网号 
子网号与子网屏蔽的位数相同。 
(1)列出子网号按高到低的顺序使用的位数。例如子网屏蔽使用了3位,二进制值是 
11100000。 
(2)将最低的一位1转换成十进制,用这个值来定义子网的增量。这个例子中是1110,所 
以增量是32。 
(3)用这个增量迭加从0开始的子网号,直到下一个值为256。这个例子中就是w.x.32.1- 
w.x.63.254、w.x.64.1-w.x.127.254等。 

4、定义子网中的主机号 
  从上面的例子看出,一旦定义了子网号,就已经确定了每个子网的主机号了。我们在做每次增量后得出的值表明了子网中主机号范围的起始值。 
确定每个子网中的主机数目 
(1)计算主机号可用的位数。例如在B类网中用3位定义了网络号,那么余下的13位定义 
了主机号。 
(2)将这个余下的位数也就是主机号转换为十进制,再减去1。例如13位值1111111111111 
转换为十进制的话就是8191,所以这个网络中每个子网的主机数就是8190了。 

实现IP路由 

1、IP路由简介 

  路由就是选择一条数据包传输路径的过程。当TCP/IP主机发送IP数据包时,便出现了路由,且当到达IP路由器还会再次出现。路由器是从一个物理网向另一个物理网发送数据包的装置,路由器通常被称为网关。对于发送的主机和路由器而言,必须决定向哪里转发数据包。在决定路由时,I P层查询位于内存中的路由表。 
(1)当一个主机试图与另一个主机通信时,IP首先决定目的主机是一个本地网还是远程网。 
(2)如果目的主机是远程网,IP将查询路由表来为远程主机或远程网选择一个路由。 
(3)若未找到明确的路由,IP用缺省的网关地址将一个数据传送给另一个路由器。 
(4)在该路由器中,路由表再次为远程主机或网络查询路由,若还未找到路由,该数据包将 
发送到该路由器的缺省网关地址。 
  每发现一条路由,数据包被转送下一级路由器,称为一次“跳步”,并最终发送至目的主机。若未发现任何一个路由,源主机将收到一个出错信息。 


TCP/IP 完整的一套基础介绍 (1) 


  

因为自己对TCP/IP也不是十分的熟悉,所以只能说这里讲一些TCP/IP的基础知识,IP网络的发展是人所共睹的,所以了解TCP/IP也是网管必备的知识了,这个基础我想还是讲些实际有用的东西,因为相关的教程也实在是多,但是有很多东西我们未必要了解,所以我想把一些实际有用的东西写给大家,希望能对你有用.相关的教程可参阅"自学T CP/IP" 

以上算是序言. 

TCP/IP应该是个协议集,根据OS的七层理论,TCP/IP分为四层.分别是应用,传输,Interne和网络界面. 

我们一般说TCP在传输层,而IP在Internet层. 

TCP/IP的应用程序包括我们平时经常用到的Ping,Telnet,Ftp,Finger等等 

配置TCP/IP包括IP地址,子网掩码和缺省网关 

正确检测TCP/IP的四个步骤:PIng 127.0.0.1(回环地址)如果通表示TCP/IP已经装入,Ping自己表明客户机正常(主要是网卡),Ping网关表示局域网正常,Ping路由外地址表示完全正常,当然你也可以直接进行第四步,一般来说没这么麻烦的,但理论是基础: -) 

IP地址是四段八位的二进制数组成的,IP分为A,B,C,D,E五类地址 

A类高端为0,从1.x.y.z~126.x.y.z .B类高端为10,从128.x.y.z~191.x.y.z C类高端为110,从192.x.y.z~223.x.y.z D类高端为1110是保留的I P地址 E类高端为1111,是科研用的IP地址 

其中255是广播地址,127是内部回送函数 

以上算是开头,以后一点点增加,实在是现在还有很多事情等着去做,不好意思了 :-) 


TCP/IP 完整的一套基础介绍 (2) 


以下内容是子网的设定 


若公司不上Internet,那一定不会烦恼IPAddress的问题,因 为可以任意使用所有的IPAddress,不管是AClass或是BClass, 这个时候不会想到要用SubNet,但若是上Internet那IPAddress 便弥足珍贵了,目前全球一阵Internet热,IPAddress已经愈 来愈少了,而所申请的IPAddress目前也趋保守,而且只有 经申请的IPAddress能在Internet使用,但对某些公司只能申 请到一个CCLass的IPAddress,但又有多个点需要使用,那这 时便需要使用到Subnet,这篇短文说明Subnet的原理及如 何规划。 

SubnetMask的介绍 
设定任何网路上的任何设备不管是主机、PC、Router等 皆需要设定IPAddress,而跟随著IPAddress的是所谓的NetMask, 这个NetMask主要的目的是由IPAddress中也能获得NetworkNumber ,也就是说IPAddress和NetMask作AND而得到NetworkNumber,如下所 示 


IPAddress 192.10.10.611000000.00001010.00001010.00000110 
NetMask 255.255.255.011111111.11111111.11111111.00000000 
AND ------------------------------------------------------------------- 
etworkNumber 192.10.10.011000000.00001010.00001010.00000000 


NetMask有所谓的预设值,如下所示 

ClassIPAddress范围NetMask 
A 1.0.0.0-126.255.255.255255.0.0.0 
B 128.0.0.0-191.255.255.255255.255.0.0 
C 192.0.0.0-223.255.255.255255.255.255.0 

在预设的NetMask都只有255的值,在谈到SubnetMask时这个值 便不一定是255了。 
在完整一组CClass中如203.67.10.0-203.67.10.255NetMask255.255.255.0, 203.67.10.0称之NetworkNumber(将IPAddress和Netmask作AND),而 203.67.10.255是Broadcast的IPAddress,所以这?两者皆不能使用,实 际只能使用203.67.10.1--203.67.10.254等254个IPAddress,这是以 255.255.255.0作NetMask的结果,而所谓SubnetMsk尚可将整组C Class分成数组NetworkNumber,这要在NEtMask作手脚,若是要将 整组CCLass分成2个NetworkNumber那NetMask设定为255.255.255.192, 若是要将整组CCLass分成8组NetworkNumber则NetMask要为 255.255.255.224,这是怎麽来的,由以上知道NetworkNumber是由IP Address和NetMask作AND而来的,而且将NetMask以二进位表示 法知道是1的会保留,而为0的去掉 

192.10.10.193--11000000.00001010.00001010.10000001 
255.255.255.0--11111111.11111111.11111111.00000000 
-------------------------------------------------------------- 
192.10.10.0--11000000.00001010.00001010.00000000 


以上是以255.255.255.0为NetMask的结果,NetworkNumber是192.10.10.0, 若是使用255.255.255.224作NetMask结果便有所不同 


192.10.10.193--11000000.00001010.00001010.10000000 
255.255.255.224--11111111.11111111.11111111.11100000 
-------------------------------------------------------------- 
192.10.10.192--11000000.00001010.00001010.10000000 


此时NetworkNumber变成了192.10.10.192,这便是Subnet。 
那要如何决定所使用的NetMask,255.255.255.224以二进位表示 法为11111111.11111111.11111111.11100000,变化是在最後一组,11100000 便是224,以三个Bit可表示2的3次方便是8个NetworkNumber 

NetMask二进位表示法可分几个Network 

255.255.255.0 11111111.11111111.11111111.000000001 
255.255.255.128 11111111.11111111.11111111.100000002 
255.255.255.192 11111111.11111111.11111111.110000004 
255.255.255.224 11111111.11111111.11111111.111000008 
255.255.255.240 11111111.11111111.11111111.1111000016 
255.255.255.248 11111111.11111111.11111111.1111100032 
255.255.255.252 11111111.11111111.11111111.1111110064 

以下使用255.255.255.224将C Class203.67.10.0分成8组NetworkNumber,各 个NetworkNumber及其BroadcastIPAddress及可使用之IPAddress 

序号NetworkNumberBroadcast可使用之IPAddress 

1 203.67.10.0 203.67.10.31 203.67.10.1-203.67.10.30 
2 203.67.10.32 203.67.10.63 203.67.10.33-203.67.10.62 
3 203.67.10.64 203.67.10.95 203.67.10.65-203.67.10.94 
4 203.67.10.96 203.67.10.127 203.67.10.97-203.67.10.126 
5 203.67.10.128 203.67.10.159 203.67.10.129-203.67.10.158 
6 203.67.10.160 203.67.10.191 203.67.10.161-203.67.10.190 
7 203.67.10.192 203.67.10.223 203.67.10.193-203.67.10.222 
8 203.67.10.224 203.67.10.255 203.67.10.225-203.67.10.254 

可验证所使用的IPAddress是否如上表所示 

203.67.10.115--11001011.01000011.00001010.01110011 
255.255.255.224--11111111.11111111.11111111.11100000 
-------------------------------------------------------------- 
203.67.10.96--11001011.01000011.00001010.01100000 

203.67.10.55--11001011.01000011.00001010.00110111 
255.255.255.224--11111111.11111111.11111111.11100000 
-------------------------------------------------------------- 
203.67.10.32--11001011.01000011.00001010.00100000 

其他的NetMask所分成的NetworkNumber可自行以上述方法自行推演出来。 

Subnet的应用 
使用Subnet是要解决只有一组CClass但需要数个NetworkNumber的问题,并不是解决IPAddress不够用的问题,因为使用 Subnet反而能使用的IPAddress会变少,Subnet通常是使用在总公司在台北,但分公司在台中,两者之间使用Router连线 ,同时也上Internet,但只申请到一组CCLassIPAddress,过Router又需不同的Network,所以此时就必须使用到Subnet,当然二 办公司间可以RemoteBridge连接,那便没有使用Subnet的问题,这点在此不讨论,所以在以上情况下的网路连线架 构及IPAddress的使用 


TCP/IP 完整的一套基础介绍 (3) 


TCP/IP(传输控制协议/ 网间协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。 TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法。在数据传送中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个T CP信封,并在该信封面上记录有分段号的信息,再将TCP信封塞入IP大信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,T CP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据。 


在任何一个物理网络中, 各站点都有一个机器可识别的地址,该地址叫做物理地址. 物理地址有两个 


特点: 


物理地址的长度,格式等是物理网络技术的一部分, 物理网络不同,物理地址也不同. 
同一类型不同网络上的站点可能拥有相同的物理地址. 
以上两点决定了,不能用物理网络进行网间网通讯. 

在网络术语中,协议中,协议是为了在两台计算机之间交换数 据而预先规定的标准。TCP/IP并不是一个而是许多协 议,这就是为什么你经常听到它代表一个协议集的原因,而TCP和IP只是其中两个基本协议而已。 

你装在计算机-的TCP/IP软件提供了一个包括TCP、IP 以及TCP/IP协议集中其它协议的工具平台。特别是它包 括一些高层次的应用程序和FTP(文件传输协议),它允 许用户在命令行上进行网络文件传输。 

TCP/IP是美国政府资助的高级研究计划署(ARPA)在二十世纪七十年代的一个研究成果,用来使全球的研究 网络联在一起形成一个虚拟网络,也就是国际互联 网。原始的 

Internet通过将已有的网络如ARPAnet转换到TCP/IP上来而形成,而这个Internet最终成为如今的国际互联网的骨干 网。 

如今TCP/IP如此重要的原因,在于它允许独立的网 格加入到Internet或组织在一起形成私有的内部网(Intranet)。 构成内部网的每个网络通过一种-做路由器或IP路由器 的设备在物理上联接在一起。路由器是一台用来从一 个网络到另一个网络传输数据包的计算机。在一个使 用TCP/IP的内部网中,信息通过使用一种独立的叫做IP 包(IPpacket)或IP数据报(IPdatagrams)的数据单元进--传输。TCP/IP 软件使得每台联到网络上的计算机同其它计算机“ 看”起来一模一样,事实上它隐藏了路由器和基本的网络 体系结构并使其各方面看起来都像一个大网。如同联 入以太网时需要确认一个48位的以太网地址一样,联入一个内部网也需要确认一个32位的IP地址。我们将它用带点的十进制数表示,如12 8.10.2.3。给定一个远程计算机的IP地址,在某个内部网或Internet上的本地计算 机就可以像处在同一个物理网络中的两台计算机那 样向远程计算机发送数据。 

TCP/IP提供了一个方案用来解决属于同一个内部网而分属不同物理网的两台计算机之间怎样交换数据的问题。这个方案包括许多部分,而T CP/IP协议集的 每个成员则用来解决问题的某一部分。如TCP/IP协议集 中最基本的协议-IP协议用来在内部网中交换数据并且 执行一项重要的功能:路由选择--选择数据报从A主机到B主机将要经过的路径以及利用合适的路由器完成不同网络之间的跨越(hop)。 

TCP是一个更高层次的它允许运行在在不同主机上的应用程序相互交换数据流。TCP将数据流分成小段叫做TCP数据段(TCPsegments),并利用I P协议进行传输。在 大多数情况下,每个TCP数据段装在一个IP数据报中进 行发送。但如需要的话,TCP将把数据段分成多个数据报,而IP数据报则与同一网络不同主机间传输位流和 字节流的物理数据帧相容。由于IP并不能保证接收的 数据报的顺序相一致,TCP会在收信端装配TCP数据段并 形成一个不间断的数据流。FTP和Telnet就是两个非常流行的依靠TCP的TCP/IP应用程序。 

另一个重要的TCP/IP协议集的成员是用户数据报协议(UDP),它同TCP相似但比TCP原始许多。TCP是一个可 靠的协议,因为它有错误检查和握手确认来保证数据 完整的到达目的地。UDP是一个“不可靠”的协议,因为 它不能保证数据报的接收顺序同发送顺序相同,甚至 不能保证它们是否全部到达。如果有可靠性要求,则 应用程序避免使用它。同许多TCP/IP工具同时提供的SNMP( 简单网络管理协议)就是一个使用UDP协议的应用例子。 

其它TCP/IP协议在TCP/IP网络中工作在幕后,但同样也发挥着重要作用。例如地址转换协议(ARP)将IP地址转换为物理网络地址如以太网地址。而与其对应的反向地址转换协议( RARP)做相反的工作,即将物理网络地址 转换为IP地址。网际控制报文协议(ICMP)则是一个支持性协议,它利用IP完成IP数据报在传输时的控制信息和 错误信息的传输。例如,如果一个路由器不能向前发送一个IP数据报,它就会利用ICMP来告诉发送者这里出 现了问题。 


TCP/IP 完整的一套基础介绍 (4) 


网络设计者在解决网络体系结构时经常使用ISO/OSI( 国际标准化组织/开放系统互连)七层模型,该模型每 一层代表一定层次的网络功能。最下面是物理层,它 代表着进行数据转输的物理介质,换句话说,即网络 电缆。其上是数据链路层,它通过网络接口卡提供服 务。最上层是应用层,这里运行着使用网络服务的应 用程序。 

TCP/IP是同ISO/OSI模型等价的。当一个数据单元 从网络应用程序下流到网络接口卡,它通过了一列的TCP/IP 模块。这其中的每一步,数据单元都会同网络另一端 对等TCP/IP模块所需的信息一起打成包。这样当数据最 终传到网卡时,它成了一个标准的以太帧(假设物理 网络是以太网)。而接收端的TCP/IP软件通过剥去以太网 帧并将数据向上传输过TCP/IP栈来为处于接收状态的应 用程序重新恢复原始数据(一种最好的了解TCP/IP工作实 质的方法,是使用探测程序来观察网络中的到处流动 的帧中被不同TCP/IP模块所加上的信息)。 

为了勾勒TCP/IP在现实网络世界中所扮演的角色, 请考虑当使用HTTP(超文本传输协议)的Web浏览器从连接 在Internet上的Web服务器上获取一页HTML数据时所发生的情 况。为形成同Web服务器的虚链路,浏览器使用一种被 抽象地称为套接口(socket)的高层软件。为了获 取Web页,它通过向套接口向套接口写入HTTPGET命令来向Web 服务器发出该指令。接下来套接口软件使用TCP协议向 Web服务器发出包含GET命令的字节流和位流,TCP将数据 分段并将各独立段传到IP模块,该模块将数据段转换 成数据报并发送给Web服务器。 

如果浏览器和服务器运--在不同物理网络的计 算机上(一般情况如此),数据报从一个网络传到另一 个网络,直到抵达服务器所在的那个网。最终,数据 被传输到目的地址并被重新装配,这样Web服务器通过 读自己的套接口来获得数据主干,并进而查看连续的 数据流。对浏览器和服务器来说,数据在这一端写入 套接口而在另一端出现如同魔术一般,但这只是底 下发生的各种复杂的交互,它创造了数据经过网络无 缝传输的假象。 

这就是TCP/IP所做的:将许多小网联成一个大网。 并在这个大网也就是Internet上提供应用程序所需要的 相互通信的服务。 

评论: 

对于TCP/IP有许多可谈的,但这里仅讲三个关键 点: 

·TCP/IP是一族用来把不同的物理网络联在一 起构成网际网的协议。TCP/IP联接独立的网络形成一个 虚拟的网,在网内用来确认各种独立的不是物理网络 地址,而是IP地址。 

·TCP/IP使用多层体系结构,该结构清晰定义了 每个协议的责任。TCP和UDP向网络应用程序提供了高层 的数据传输服务,并都需要IP来传输数据包。IP有责任 为数据包到达目的地选择合适的路由。 

·在Internet主机上,两个运行着的应用程序之 间传送要通过主机的TCP/IP堆栈上下移动。在发送端TCP/IP 模块加在数据上的信息将在接收端对应的TCP/IP模块上 滤掉,并将最终恢复原始数据。 

如果你有兴趣学习更多的TCP/IP知识,这里有两个 较高层次的信息源RFC(RequestforComment)1180--叫做“TCP/IP Tutorial”的文档,你可以从许多普及的RFC的Internet节点上 下载。另一个是InternetworkingwithTCP/IP的第一卷:Principles,Protocols,and Architectures,作者DouglasE.Comer(1995,Prentice-Hall)。作为该系三部 曲中的第一部分,许多人把看成是一本TCP/IP圣经。(原 文刊载于Vol.15No.20) 


TCP/IP 完整的一套基础介绍 (5) 


二、传输层的安全性 

在Internet应用编程序中,通常使用广义的进程间通信(IPC)机制来与不同层次的安全协议打交道。比较流行的两个IPC编程界面是BSD Sockets和传输层界面(TLI),在Unix系统V命令里可以找到。 

在Internet中提供安全服务的首先一个想法便是强化它的IPC界面,如BSD Sockets等,具体做法包括双端实体的认证,数据加密密钥的交换等。Netscape通信公司遵循了这个思路,制定了建立在可靠的传输服务( 如TCP/IP所提供)基础上的安全套接层协议(SSL)。SSL版本3(SSL v3)于1995年12月制定。它主要包含以下两个协议: 

SSL记录协议 它涉及应用程序提供的信息的分段、压缩、数据认证和加密。SSL v3提供对数据认证用的MD5和SHA以及数据加密用的R4和DES等的支持,用来对数据进行认证和加密的密钥可以通过SSL的握手协议来协商。 
SSL握手协议 用来交换版本号、加密算法、(相互)身份认证并交换密钥。SSL v3 提供对Deffie-Hellman密钥交换算法、基于RSA的密钥交换机制和另一种实现在 Fortezza chip上的密钥交换机制的支持。 
Netscape通信公司已经向公众推出了SSL的参考实现(称为SSLref)。另一免费的SSL实现叫做SSLeay。SSLref和SSLeay均可给任何TCP/IP应用提供S SL功能。Internet号码分配当局(IANA)已经为具备SSL功能的应用分配了固定端口号,例如,带SSL的 HTTP(https)被分配的端口号为443,带SSL的SMTP(ssmtp)被分配的端口号为465,带SSL的NNTP(snntp)被分配的端口号为563。 

微软推出了SSL2的改进版本称为PCT(私人通信技术)。至少从它使用的记录格式来看,SSL和PCT是十分相似的。它们的主要差别是它们在版本号字段的最显著位( The Most Significant Bit)上的取值有所不同: SSL该位取0,PCT该位取1。这样区分之后,就可以对这两个协议都给以支持。 

1996年4月,IETF授权一个传输层安全(TLS)工作组着手制定一个传输层安全协议(TLSP),以便作为标准提案向IESG正式提交。TLSP将会在许多地方酷似S SL。 

前面已介绍Internet层安全机制的主要优点是它的透明性,即安全服务的提供不要求应用层做任何改变。这对传输层来说是做不到的。原则上,任何T CP/IP应用,只要应用传输层安全协议,比如说SSL或PCT,就必定要进行若干修改以增加相应的功能,并使用(稍微)不同的IPC界面。于是,传输层安全机制的主要缺点就是要对传输层I PC界面和应用程序两端都进行修改。可是,比起Internet层和应用层的安全机制来,这里的修改还是相当小的。另一个缺点是,基于UDP的通信很难在传输层建立起安全机制来。同网络层安全机制相比,传输层安全机制的主要优点是它提供基于进程对进程的( 而不是主机对主机的)安全服务。这一成就如果再加上应用级的安全服务,就可以再向前跨越一大步了。 


TCP/IP 完整的一套基础介绍 (6) 


三、应用层的安全性 
必须牢记(且须仔细品味): 网络层(传输层)的安全协议允许为主机(进程)之间的数据通道增加安全属性。本质上,这意味着真正的(或许再加上机密的)数据通道还是建立在主机( 或进程)之间,但却不可能区分在同一通道上传输的一个具体文件的安全性要求。比如说,如果一个主机与另一个主机之间建立起一条安全的I P通道,那么所有在这条通道上传输的IP包就都要自动地被加密。同样,如果一个进程和另一个进程之间通过传输层安全协议建立起了一条安全的数据通道,那么两个进程间传输的所有消息就都要自动地被加密。 

如果确实想要区分一个具体文件的不同的安全性要求,那就必须借助于应用层的安全性。提供应用层的安全服务实际上是最灵活的处理单个文件安全性的手段。例如一个电子邮件系统可能需要对要发出的信件的个别段落实施数据签名。较低层的协议提供的安全功能一般不会知道任何要发出的信件的段落结构,从而不可能知道该对哪一部分进行签名。只有应用层是唯一能够提供这种安全服务的层次。 

一般来说,在应用层提供安全服务有几种可能的做法,第一个想到的做法大概就是对每个应用(及应用协议)分别进行修改。一些重要的TC P/IP应用已经这样做了。在RFC 1421至1424中,IETF规定了私用强化邮件(PEM)来为基于SMTP的电子邮件系统提供安全服务。由于种种理由,Internet业界采纳PEM的步子还是太慢,一个主要的原因是P EM依赖于一个既存的、完全可操作的PKI(公钥基础结构)。PEM PKI是按层次组织的,由下述三个层次构成: 

顶层为Internet安全政策登记机构(IPRA) 
次层为安全政策证书颁发机构(PCA) 
底层为证书颁发机构(CA) 
建立一个符合PEM规范的PKI也是一个政治性的过程,因为它需要多方在一个共同点上达成信任。不幸的是,历史表明,政治性的过程总是需要时间的,作为一个中间步骤,P hil Zimmermann开发了一个软件包,叫做PGP(pretty Good Privacy)。PGP符合PEM的绝大多数规范,但不必要求PKI的存在。相反,它采用了分布式的信任模型,即由每个用户自己决定该信任哪些其他用户。因此,P GP不是去推广一个全局的PKI,而是让用户自己建立自己的信任之网。这就立刻产生一个问题,就是分布式的信任模型下,密钥废除了怎么办。 

S-HTTP是Web上使用的超文本传输协议(HTTP)的安全增强版本,由企业集成技术公司设计。S-HTTP提供了文件级的安全机制,因此每个文件都可以被设成私人/ 签字状态。用作加密及签名的算法可以由参与通信的收发双方协商。S-HTTP提供了对多种单向散列(Hash)函数的支持,如: MD2,MD5及SHA; 对多种单钥体制的支持,如:DES,三元DES,RC2,RC4,以及CDMF; 对数字签名体制的支持,如: RSA和DSS。 

目前还没有Web安全性的公认标准。这样的标准只能由WWW Consortium,IETF或其他有关的标准化组织来制定。而正式的标准化过程是漫长的,可能要拖上好几年,直到所有的标准化组织都充分认识到W eb安全的重要性。S-HTTP和SSL是从不同角度提供Web的安全性的。S-HTTP对单个文件作"私人/签字"之区分,而SSL则把参与通信的相应进程之间的数据通道按" 私用"和"已认证"进行监管。Terisa公司的SecureWeb工具软件包可以用来为任何Web应用提供安全功能。该工具软件包提供有 RSA数据安全公司的加密算法库,并提供对SSL和S-HTTP的全面支持。 

另一个重要的应用是电子商务,尤其是信用卡交易。为使Internet上的信用卡交易安全起见,MasterCard公司(同IBM,Netscape,GTE和C ybercash一道) 制定了安全电子付费协议(SEPP),Visa国际公司和微软(和其他一些公司一道)制定了安全交易技术(STT)协议。同时,MasterCard,Visa国际和微软已经同意联手推出I nternet上的安全信用卡交易服务。他们发布了相应的安全电子交易(SET)协议,其中规定了信用卡持卡人用其信用卡通过Internet进行付费的方法。这套机制的后台有一个证书颁发的基础结构,提供对X .509证书的支持。 

上面提到的所有这些加安全功能的应用都会面临一个主要的问题,就是每个这样的应用都要单独进行相应的修改。因此,如果能有一个统一的修改手段,那就好多了。通往这个方向的一个步骤就是赫尔辛基大学的T atu Yloenen开发的安全shell(SSH)。SSH允许其用户安全地登录到远程主机上,执行命令,传输文件。它实现了一个密钥交换协议,以及主机及客户端认证协议。S SH有当今流行的多种Unix系统平台上的免费版本,也有由Data Fellows公司包装上市的商品化版本。 

把SSH的思路再往前推进一步,就到了认证和密钥分配系统。本质上,认证和密钥分配系统提供的是一个应用编程界面(API),它可以用来为任何网络应用程序提供安全服务,例如: 认证、数据机密性和完整性、访问控制以及非否认服务。目前已经有一些实用的认证和密钥分配系统,如: MIT的Kerberos(V4与V5),IBM的CryptoKnight和Netwrok Security Program,DEC的SPX,Karlsruhe大学的指数安全系统(TESS)等,都是得到广泛采用的实例。甚至可以见到对有些认证和密钥分配系统的修改和扩充。例如,S ESAME和OSF DCE对Kerberos V5作了增加访问控制服务的扩充,Yaksha对Kerberos V5作了增加非否认服务的扩充。 

关于认证和密钥分配系统的一个经常遇到的问题是关于它们在Internet上所受到的冷遇。一个原因是它仍要求对应用本身做出改动。考虑到这一点,对一个认证和密钥分配系统来说,提供一个标准化的安全A PI就显得格外重要。能做到这一点,开发人员就不必再为增加很少的安全功能而对整个应用程序大动手术了。因此,认证系统设计领域内最主要的进展之一就是制定了标准化的安全A PI,即通用安全服务API(GSS-API)。GSS-API(v1及v2)对于一个非安全专家的编程人员来说可能仍显得过于技术化了些,但德州Austin大学的研究者们开发的安全网络编程( SNP),把界面做到了比GSS-API更高的层次,使同网络安全性有关的编程更加方便了。 


局域网在网络层有什么不安全的地方? 

NAI公司 供稿 

不安全的地方 

由于局域网中采用广播方式,因此,若在某个广播域中可以侦听到所有的信息包,黑客就对可以对信息包进行分析,那么本广播域的信息传递都会暴露在黑客面前。 

网络分段 

网络分段是保证安全的一项重要措施,同时也是一项基本措施,其指导思想在于将非法用户与网络资源相互隔离,从而达到限制用户非法访问的目的。 

网络分段可分为物理分段和逻辑分段两种方式: 
物理分段通常是指将网络从物理层和数据链路层(ISO/OSI模型中的第一层和第二层)上分为若干网段,各网段相互之间无法进行直接通讯。目前,许多交换机都有一定的访问控制能力,可实现对网络的物理分段。逻辑分段则是指将整个系统在网络层(I SO/OSI模型中的第三层)上进行分段。例如,对于TCP/IP网络,可把网络分成若干IP子网,各子网间必须通过路由器、路由交换机、网关或防火墙等设备进行连接,利用这些中间设备(含软件、硬件)的安全机制来控制各子网间的访问。在实际应用过程中,通常采取物理分段与逻辑分段相结合的方法来实现对网络系统的安全性控制。 


VLAN的实现 


虚拟网技术主要基于近年发展的局域网交换技术(ATM和以太网交换)。交换技术将传统的基于广播的局域网技术发展为面向连接的技术。因此,网管系统有能力限制局域网通讯的范围而无需通过开销很大的路由器。 

以太网从本质上基于广播机制,但应用了交换器和VLAN技术后,实际上转变为点到点通讯,除非设置了监听口,信息交换也不会存在监听和插入(改变)问题。 

由以上运行机制带来的网络安全的好处是显而易见的: 
信息只到达应该到达的地点。因此、防止了大部分基于网络监听的入侵手段。 
通过虚拟网设置的访问控制,使在虚拟网外的网络节点不能直接访问虚拟网内节点。 

但是,虚拟网技术也带来了新的安全问题: 
执行虚拟网交换的设备越来越复杂,从而成为被攻击的对象。基于网络广播原理的入侵监控技术在高速交换网络内需要特殊的设置。基于M AC的VLAN不能防止MAC欺骗攻击。 
采用基于MAC的VLAN划分将面临假冒MAC地址的攻击。因此,VLAN的划分最好基于交换机端口。但这要求整个网络桌面使用交换端口或每个交换端口所在的网段机器均属于相同的V LAN。 


VLAN之间的划分原则 

VLAN的划分方式的目的是保证系统的安全性。因此,可以按照系统的安全性来划分VLAN;可以将总部中的服务器系统单独划作一个VLAN,如数据库服务器、电子邮件服务器等。也可以按照机构的设置来划分V LAN,如将领导所在的网络单独作为一个Leader VLAN(LVLAN), 其他司局(或下级机构)分别作为一个VLAN,并且控制LVLAN与其他VLAN之间的单向信息流向,即允许LVLAN查看其他VLAN的相关信息,其他V LAN不能访问LVLAN的信息。VLAN之内的连接采用交换实现, VLAN与VLAN之间采用路由实现。由于路由控制的能力有限,不能实现LVLAN与其他VLAN之间的单向信息流动,需要在LVLAN与其他VLAN之间设置一个G auntlet防火墙作为安全隔离设备,控制VLAN与VLAN之间的信息交流。 


TCP/IP远程访问操作:rwho,rlogin,rcp和rsh 


作者:Norkai 
TCP/IP网络通信软件包使用远程访问的命令,这些命令首先是由UC Berkely为Arpanet开发的。它允许您远程注册到另一个系统中,并从一个系统复制文件到另一个系统。您能取得关于一个系统的信息,比如当前谁正在注册使用。调用一个系统的地址时,这些远程命令使用域名或I P地址。和TCP/IP远程访问命令一样,域名地址开始好是为在Arpanet上使用而设计。 

&nbps;许多TCP/IP命令可以和用在Internet上的网络通信功能相比较。例如,用TCP/IP命令rlogin可以远程注册到一个系统,它和telnet 相似。rcp命令能远程复制文件,它执行和ftp相同的功能。TCP/IP命令的不同之处是它们提供给用户的易用和易控制性。您能很容易地访问在不同的U nix或Linux系统中的帐号,并且能控制访问这些帐号但没有提供口令的用户。事实上您能提供给不同的用户提供关于您的帐号的一种组权限。 

一、TCP/IP网络系统信息:rwho,uptime和ping 

这些命令是一些TCP/IP命令,通过它们,您能从网络中的不同系统上取得信息。您能找到谁正在注册,得到另一个系统中用户的信息,或查询一个系统是否正在运行。例如,r who命令和who命令的功能很相似。它显示网络中的每个系统的当前注册的用户。 

$rwho 
violet robert:tty1 Sept 10 10:34 
garnet chris:tty2 Sept 10 09:22 

命令ruptime可以显示网络中的每个系统的信息。此信息能显示出每个系统是如何执行。ruptime显示系统是否运行,它运行了多久,系统中的用户数和系统在最后5 、10和15分钟内的系统负荷。 

$ruptime 
violet up 11+04:10, 8 users, load 1.20 1.10 
garnet up 11+04:10, 20 users, load 1.50 1.30 

命令ping能检测出系统是否启动和运行。ping命令加上您想检测的系统名做为参数,下面的例子将检测violet是否启动并连接在网络中。 

$ping violet 
violet is alive 


如果您想检测的系统已经关机,将得到一个如下的响应。这种情况下,garnet是关闭并没有连接到网络中。 

$ping garnet 
no answer from garnet 


二、远程访问权限:.rhosts 

您能用.rhosts文件控制使用TCP/IP命令对您帐号的访问。用户能用标准的编辑器象Vi来创建他们帐号中的.rhosts文件。它必须位于用户的主目录。下面的例子中,使用者显示文件. rhosts文件的内容。 

$cat.rhosts 
garnet chris 
ciolet robert 

使用.rhosts文件是一种允许用户不提供口令而访问您的系统的简单方法。如果需要禁止此用户访问,只须简单地从文件.rhost中删除系统各和用户注册名。如果一个用户的注册名和系统名在文件. rhost中,那么此用户即呆不提供口令直接访问系统。并不是所有的远程注册操作都需要这种访问形式(您能用输入口令的方式来替代);但一些远程命令要求有. rhosts文件,象远程复制文件或远程执行Linux命令。如果您想在远程系统的帐号中招待这些命令,此帐号的.rhosts文件中必须有您 的注册名和系统名。 

通过.rhosts对某一系统进行访问时,也允许您使用TCP/IP命令直接访问系统中您的其他帐号。您不需要先注册到这些帐号中。可以把系统中您的其他帐号做为当前注册帐号的扩展。不管文件牌佻 的哪个账号下,都可以用frcp命令从一个目录复制到另一个目录。用命令rsh,可以在您的其他帐号中招待任何Linux命令。 

三、远程注册:rlogin 

您可能在网络中的不同系统上都有自己的帐号,或者可以访问别人在另一个系统上的帐号。要访问别的系统中的帐号,首先要注册到您的系统中,接着通过网络远程注册到帐号所在的系统中。用命令r login可以远程注册支别的系统。命令的参数应是一个系统名。命令将把您连接到另一个系统中并开始注册的过程. 

用rlogin的注册过程和一般的注册过程有所不同,用rlogin时用户不被提示输入注册名。rlogin假设您的本地系统中的注册名和远程系统中的一致。所以象上面执行r login命令时,您将马上被提示输入口令。输入口令后,您即可进入远程系统各的帐号。 

用rlogin假设注册各是相同的,因为大多数的人用rlogin访问别的系统中的注册名一般和本地的注册名是相同的。然而,当远程系统中的注册名和本地系统的不同时,选项1 -允许您输入远程系统帐户的不同的注册名。语法如下所示: 
$rlogin system-name -1 login-name 

在下面的例子中,用户使用注册名robert注册到violet的系统中。 

$rlogin violet-1 robert 
password 


: 一旦注册到远程系统中,您能执行任何命令。可以用exit、CTRL-d或logout(TCSH或C-shell)结束连接。 

四、远程复制文件:rcp 

您能用命令rcp从远程系统复制文件到本地系统中。rcp执行文件传输的功能,它的操作和cp命令很相似,但它是通过网络连接到另一系统。执行命令r cp时要求远程系统的。rhosts文件中有您的本地系统名和注册各。命令rcp用关键字rcp开头,参数为源文件名和复制的目标文件名。为了指定文件在远程系统中,您需要在文件名前放置一个系统名,两者之间用冒号分隔,如下所示: 
$rcp system-name:source-file slystem-name:copy-file 

当复制一个文件到远程系统中时,复制的目标文件是远程文件,它要求带有系统名。而源文件在您的本机系统中,不要求系统名: 
$rcp source-file remote-system-name:copy-file 

在下面的例子中,用户从自己的系统中复制文件weather到远程系统violet并重命名为monday. 
$rcp weather violet:Monday 

从远程系统中复制一个文件到本地时,源文件是远程文件,它要求带有系统名。而复制的目标文件在您的本机系统中,不要求系统名: 
$rcp remote-system-name:source-file copy-file 

在下面的例子中,用户从远程系统之间复制整个目录。rcp命令加上-r选项将从一个系统复制一个目录和它的子目录到另一个系统。象cp命令一样,r cp要求一个源目录和复制目录。在远程系统中的目录要求系统名和一个以分隔系统名和目录名的冒号,以及目录名。当从您的系统复制目录到一个远程系统,则在远程系统中的复制目录需要远程系统名。 
$rcp -r source-directory remote-system-name:copy-directory 

在下面的例子中,使用者把目录letters复制到远程系统violet中的目录oldnotes中。 
$rcp-r letters violetldnotes 

当从您的系统复制一个远程系统中的目录到本地时,在远程系统中的源目录需要远程系统名。 
$rcp-r remote-system-name:source-directory copy-directory 

在下面的例子中,使用者把远程系统violet中的目录birthdays复制到本地的目录party中。 
$rcp-r violet:birthdays party 

同时,您可以用星号指定名字,或用圆点引用当前目录。对于Shell的特殊字符,是由您的本地系统进行解释转换,而不是远程系统。为了使远程系统解释转换一个特定字符,您必须通进某种方式引用它。为了复制远程系统种所有带扩展名. c的文件到您的系统中,您需要用特殊字符-星号:*.c来指定所有的带扩展名.c的文件。您必须注意引用星号的方式。下面的例子中,在系统v iolet中的带.c扩展名的文件被复制到使用者的系统中。注意,星号是通过一个反斜杠引用。而最后的圆点,表示当前的目录,并没被引用。它是由您的本地系统解释并转换的。 
$rcp violet:\*.c 

下面的例子中,目录report将从使用者的本地系统复制到远程系统的当前目录中。注意圆点被引用,它将被远程系统解释转换。 
$rcp -r reports violet:\. 

五、远程执行:rsh 

您可能需要在远程系统中执行一个命令。rsh命令将在远程Linux系统上执行一个命令并把结果显示到您的系统中。当然,您的系统名和注册名必须在远程系统的. rhosts文件中,命令rsh有两个一般的参数,一个系统名和一个Linux命令。语法如下所示: 
$rsh remote-sytem-neame Linux-command 

在下面的例子中,rsh命令将在远程系统violet中执行一个ls命令以列出在violet中目录/home/robert中的文件。 
$rsh violet ls /home/robert 

除非是引用特定字符,否则它将被本李系统解释转换,对于控制标准输出的特殊字符更是如此,象重定向或管道字符。下面的例了中列出远程系统上的文件,并把它们送到本系统中的标准输出。重定向操作由本地系统解释,并把输出改向到本地系统中的文件m yfiles中。 
$rsh violet ls /home/robert>myfiles 

如您引用一个特定字符,它将成为Linux命令的一部分被远程系统解释。引用重定向操作符将允许您在远程系统中执行重定向操作。下面的例子中,引用一个重定向操作符。它变成L inux命令的一部分,包括命令的参数,文件名myfile。命令ls产生一列文件名并把它们重定向到远程系统中的一个文件myfile中。 

$rsh violet ls /home/robert'>'myfiles 

对于管道操作也是如此。下面例子中第一个命令输出一列文件到本地的打印机中。标准的输出能过管道输出到您的在线打印机中。第二个命令中,一列文件将输出远程系统的打印机上。管道线被远程系统解释。输送标准输出到远程系统的打印机上。 
$rsh violet ls /home/robert|lpr 
$rsh violet ls /home/robert '|'lpt 

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 优酷路由宝在哪里买 优QQ空间2015新年签在哪盘点2013年热门手机排2013年9月份手机发布大

最新文章 a站会关闭吗 acfun网页腾讯公益小朋友画廊是 优酷路由宝在哪里买 优酷路由宝购买地址QQ空间2015新年签在哪 QQ空间2015新年签怎么斗鱼TV卡顿解决方法新版新浪微博V6全新体验为你而变

人气排行 斗鱼TV卡顿解决方法iphone4使用教程公共wifi密码大全苹果ios6什么时候出?发布时间是什么时候?微博小尾巴修改教程:教你伪装iphone5s新浪大智慧昨日瘫痪 全国用户均受影响盘点2013年热门手机排行榜黄色网站侵染手机网络 涉黄WAP网站被关闭