VC写一个截图UDP广播小程序,UDP广播不是说很块吗?为什么我的这么慢?

大大象东东 2018-05-17 08:41:29
VC广播,非组播。项目不知道怎么发出来,截一段吧。
int haveSend = 0;
int sn =0;
while(toSend > 0)
{
sn = SendTo(m_pSendBuff+haveSend, toSend>50000?50000:toSend, (SOCKADDR*)&m_clientAddr, sizeof(m_clientAddr));
if (sn > 0)
{
toSend -= sn;
haveSend+=sn;
}
else
{
break;
}
sprintf(a,"发送%d字节数据\n",sn);
OutputDebugString(a);
}


看调试信息,基本发送一次50000字节就要一秒。我没压缩的屏幕截图位图数据一张就8M,要发了一两分钟,才会跳出while循环。客户端才收到一张。
我知道视频都需要压缩,但是这个也太慢了一点啊!?照这个速度,即使50K一张的小图也要发个半秒一秒的。大神救我!如何做到一秒几十帧?
...全文
871 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
大大象东东 2018-05-19
  • 打赏
  • 举报
回复
引用 10 楼 yiyefangzhou24 的回复:
你确定能发出去?缓冲区满了会返回失败吧?
确定能发送,已经实现接收现实。就是慢了点。
自信男孩 2018-05-18
  • 打赏
  • 举报
回复
引用 6 楼 TheDaXiang 的回复:
引用 2 楼 cfjtaishan 的回复:
是局域网吗?
https://download.csdn.net/download/thedaxiang/10422229我的项目上传了,最少必须设置了一分。不好意思。帮忙看看。
建议贴出代码,或者至少是关键性(与问题相关的)代码。给你解决问题还要花费这个吗?
大大象东东 2018-05-18
  • 打赏
  • 举报
回复
引用 3 楼 zhouqunhai 的回复:
能贴全代码看看吗
https://download.csdn.net/download/thedaxiang/10422229我的项目上传了,最少必须设置了一分。不好意思。帮忙看看。
大大象东东 2018-05-18
  • 打赏
  • 举报
回复
引用 2 楼 cfjtaishan 的回复:
是局域网吗?
https://download.csdn.net/download/thedaxiang/10422229我的项目上传了,最少必须设置了一分。不好意思。帮忙看看。
大大象东东 2018-05-18
  • 打赏
  • 举报
回复
引用 1 楼 d741963250 的回复:
异步发送试试。
https://download.csdn.net/download/thedaxiang/10422229我的项目上传了,最少设置了一分。不好意思。帮忙看看。
待续_1006 2018-05-18
  • 打赏
  • 举报
回复
用tcp发送8M数据也不至于1分钟啊。。。。。。。贴代码吧
zhouqunhai 2018-05-18
  • 打赏
  • 举报
回复
能贴全代码看看吗
自信男孩 2018-05-18
  • 打赏
  • 举报
回复
是局域网吗?
大大象东东 2018-05-18
  • 打赏
  • 举报
回复
引用 8 楼 cfjtaishan 的回复:
引用 6 楼 TheDaXiang 的回复:
[quote=引用 2 楼 cfjtaishan 的回复:] 是局域网吗?
https://download.csdn.net/download/thedaxiang/10422229我的项目上传了,最少必须设置了一分。不好意思。帮忙看看。
建议贴出代码,或者至少是关键性(与问题相关的)代码。给你解决问题还要花费这个吗?[/quote]不知道哪里有问题,都不知道贴哪里。已改百度云,当时没想到。https://pan.baidu.com/s/13D_A3eAzi1n7XGIGLLNggw
yiyefangzhou24 2018-05-18
  • 打赏
  • 举报
回复
你确定能发出去?缓冲区满了会返回失败吧?
d741963250 2018-05-17
  • 打赏
  • 举报
回复
异步发送试试。
第1章 概述 问题1-1:“主机”和“计算机”一样不一样? 问题1-2:能否:“电路交换和面向连接是等同的,而分组交换和无连接是等同的”? 问题1-3:因特网使用的IP协议是无连接的,因此其传输是不可靠的。这样容易使人们感到因特网很不可靠。那么为什么当初不把因特网的传输设计成为可靠的?在教材中1.2.1节提到这种新型计算机网络必须满足的要求有一条是“能够非常可靠地传送数据”。但因特网的网络层使用IP协议,它只能提供不可靠的数据传输。那么这里有没有什么矛盾? 问题1-4:在具有五层协议的体系结构中,如果下面的一层使用面向连接服务或无连接服务,那么在上面的一层是否也必须使用同样性质的服务呢?或者,是否我们可以在各层任意使用面向连接服务或无连接服务呢? 问题1-5:在运输层应根据什么原则来确定应当使用面向连接服务还是无连接服务? 问题1-6:在数据链路层应根据什么原则来确定应当使用面向连接服务还是无连接服务? 问题1-7:TCP/IP的体系结构到底是四层还是五层? 问题1-8:我们常“分组交换”。但又常“路由器转发IP数据报”或“路由器转发帧”。究竟“分组”一词应当用在什么场合? 问题1-9:到商店购买可一个希捷公司生产的80 G的硬盘。安装到电脑上以后用WINDOWS的资源管理器发现在该磁盘的“属性”中只有74.5 G。是不是商店出了差错? 问题1-10:在教材的1.4.1节中有这样一段话:人们愿意将“带宽”作为数字信道的“数据率”的同义语。这样有何根据? 问题1-11:有时可听到人们将“带宽为10 Mb/s的以太网”成是“速率(或速度)为10 Mb/s的以太网”或“10兆速率(或速度)的以太网”。试问这样的法正确否? 问题1-12:有人,宽带信道相当于高速公路车道数目增多了,可以同时并行地跑更多数量的汽车。虽然汽车的时速并没有提高(这相当于比特在信道上的传播速率没有提高),但整个高速公路的运输能力却增多了,相当于能够传送更多数量的比特。这种比喻合适否? 问题1-13:如果用时延带宽积管道来比作传输链路,那么是否宽带链路对应的时延带宽积管道就比较宽呢? 问题1-14:网络的吞吐量与网络的时延有何关系? 问题1-15:什么是“无缝的”、“透明的”和“虚拟的”? 问题1-16:在教材的1.5.2节提到协议有三个要素,即语法、语义和同步。语义是否已经包括了同步的意思? 问题1-17:为什么协议不能设计成100%可靠的? 问题1-18:什么是因特网的穆尔定律? 问题1-19:局域网、广域网和公用网、专用网有什么关系? 问题1-20:信道的利用率是否越高越好? 问题1-21:怎样理解教材中图1-8所示的椭圆形表示的各种服务提供者?这些ISP都在具体的什么位置? 问题1-22:在计算机网络中的结点是指主机还是指路由器? 问题1-23:ISO与OSI有何不同? 问题1-24:我们常听“要增加政府机构办事的透明度”。意思是:政府机关的许多办事程序和步骤应当向群众公开,让大家看得见。而计算机网络所讨论的透明传输,是指比特流看不见电路的存在。这样看来,两种“透明”的意思很不一样。应当怎样理解? 问题1-25:怎样才能知道哪些RFC文档已经成为因特网的正式标准(草案或建议标准)? 问题1-26:怎样知道一个RFC文档是否被改为陈旧的? 第2章 物理层 问题2-1:“规程”、“协议”和 “规约”都有何区别? 问题2-2:在许多文献中经常见到人们将“模拟”与“仿真”作为同义语。那么,“模拟信道”能否成是“仿真信道”? 问题2-3:为什么电话信道的标准带宽是3.1 kHz? 问题2-4:奈氏准则和香农公式的主要区别是什么?这两个公式对数据通信的意义是什么? 问题2-5:传输媒体是物理层吗?传输媒体和物理层的主要区别是什么? 问题2-6:同步(synchronous)和异步(asynchronous)的区别是什么? 问题2-7:同步通信和异步通信的区别是什么? 问题2-8:比特同步和帧同步的区别是什么? 问题2-9:教材的表2-4的OC和STS有什么区别?例如OC-3和STS-3的数据率是一样的,为什么要使用两种表示方法?有的文献还使用如OC-3C的表示方法,这有区别吗? 问题2-10:ATM是异步传递方式。是否ATM方式与同步通信完全无关? 第3章 数据链路层 问题3-1:在1999年4月出版的《计算机网络》(第2版)的1.3.2节中有这样的话: “(2) 数据链路层 数据链路层的任务是在两个相邻结点间的线路上无差错地传送以帧(frame)为单位的数据。……这样,数据链路层就把一条有可能出差错的实际链路,转变成为让网络层向下看起来好像是一条不出差错的链路。” 但在2003年出版的《计算机网络》(第4版)中对数据链路层就改变了这种提法。在1.5.3节中有这样的话: “控制信息还使接收端能够检测到所收到的帧中有无差错。如发现有差错,数据链路层就丢弃这个出了差错的帧,然后采取下面两种方法之一:或者不作任何其他的处理;或者由数据链路层通知对方重传这一帧,直到正确无误地收到此帧为止。” 可见,如果选择前一种方法,即不作任何其他的处理,那么数据链路层的传输就不能“让网络层向下看起来好像是一条不出差错的链路。” 现在的问题是:到底哪一种法是正确的? 问题3-2:当数据链路层使用PPP协议或CSMA/CD协议时,既然不保证可靠传输,那么为什么对所传输的帧进行差错检验呢? 问题3-3:既然现在因特网使用得最多的数据链路层协议并不保证可靠传输,那么为什么我们在数据链路层一章中还要讲授保证可靠传输的停止等待协议呢? 问题3-4:通过普通的电话用户线拨号上网时(使用调制解调器),试问一对用户线可容许多少个用户同时上网? 问题3-5:除了差错检测外,面向字符的数据链路层协议还必须解决哪些特殊的问题? 问题3-6:为什么计算机进行通信时发送缓存和接收缓存总是需要的? 问题3-7:在教材中的3.3.3节提到“发送窗口用来对发送端进行流量控制”。但在发送窗口和接收窗口的共同作用下可以在数据传输时提高对信道的利用率。那么到底应当怎样看待发送窗口的作用? 问题3-8:在关于数据链路层工作原理的叙述中,经常会见到两个不同的名词——“丢失”和“丢弃”。它们有区别吗? 问题3-9:停止等待协议中的确认帧如果没有序号会出现什么问题? 问题3-10:在停止等待协议中,A发送的数据帧有差错,被B的CRC检验器静悄悄地丢弃了。如果A进行超时重传后,但又连续出错,重传的数据帧又被B的CRC检验器丢弃。这样,B总是收不到A发送的数据帧。这种情况是否明停止等待协议这时不能正常工作? 问题3-11:在连续ARQ协议中,如果A向B发送数据帧而B只向A发送确认帧(即假定B没有数据帧向A发送),那么这两种帧的序号序列各有什么特点? 问题3-12:在连续ARQ协议中,如果B收到A发送的数据帧的序号没有落在B的接收窗口中,B就应当丢弃这个序号不对的帧。如果B这时不向A发送任何信息而一直静悄悄地等待正确序号的数据帧的到来,那么这种策略是否可行? 问题3-13:在问题3-12中,如果B发送的确认帧在传输过程中总是出错,那么A也是一直重复发送DATA0到DATA6这7个数据帧。在这种情况下,连续ARQ协议还正确吗? 问题3-14:能否归纳一下连续ARQ协议都有哪些主要功能和特别要注意的地方? 问题3-15:在许多有关网络技术的书籍或文献中,经常会看到“应答”、“回答”、“响应”和“确认”等术语。这些术语的意思都一样吗? 问题3-16:连续ARQ协议中的图3-6在第2次印刷时改变了。为什么要进行这样的改变? 问题3-17:接收端对收到的帧进行CRC检验后,若发现有差错就丢弃这个帧。是用户(人)下命令丢弃,还是高层软件下命令丢弃? 问题3-18:在[MINGCI94]中,flow control的标准译名是“流控制”。为什么我们的教材不使用这个译名,而使用“流量控制”这样的译名? 第4章 局域网 问题4-1:以太网使用载波监听多点接入碰撞检测协议CSMA/CD。频分复用FDM才使用载波。以太网有没有使用频分复用? 问题4-2:在以太网中,不同的传输媒体会产生不同的传播时延吗? 问题4-3:在以太网中发生了碰撞是否明这时出现了某种故障? 问题4-4:从什么地方可以查阅到以太网帧格式中的“类型”字段是怎样分配的? 问题4-5:是什么原因使以太网有一个最小帧长和最大帧长? 问题4-6:在双绞线以太网中,其连接导线只需要两对线:一对线用于发送,另一对线用于接收。但现在的标准是使用RJ-45连接器。这种连接器有8根针脚,一共可连接4对线。这是否有些浪费?是否可以不使用RJ-45而使用RJ-11? 问题4-7:RJ-45连接器对8根针脚的编号有什么规定? 问题4-8:剥开5类线的外塑料保护套管就可以看见不同颜色的4对双绞线。哪一根线应当连接到哪一个针脚呢? 问题4-9:将5类线电缆与RJ-45插头连接起来的具体操作步骤是怎样的? 问题4-10:不用集线器或以太网交换机,能否将两台计算机用带有RJ-45插头的5类线电缆直接连接起来? 问题4-11:使用屏蔽双绞线电缆STP安装以太网是否可获得更好的效果? 问题4-12:如果将已有的10 Mb/s以太网升级到100 Mb/s,试问原来使用的连接导线是否还能继续使用? 问题4-13:使用5类线的10BASE-T以太网的最大传输距离是100 m。但听到有人,他使用10BASE-T以太网传送数据的距离达到180 m。这可能吗? 问题4-14:粗缆以太网有一个单独的收发器。细缆以太网和双绞线以太网有没有收发器?如果有,都在什么地方? 问题4-15:什么叫做“星形总线(star-shaped bus)”或“盒中总线(bus-in-a-box)”? 问题4-16:以太网的覆盖范围受限的一个原因是:如果站点之间的距离太大,那么由于信号传输时会衰减得很多因而无法对信号进行可靠的接收。试问:如果我们设法提高发送信号的功率,那么是否就可以提高以太网的通信距离? 问题4-17:一个大学能否就使用一个很大的局域网而不使用许多相互连接的较小的局域网? 问题4-18:一个10 Mb/s以太网若工作在全双工状态,那么其数据率是发送和接收各为5 Mb/s还是发送和接收各为10 Mb/s? 问题4-19:一个单个的以太网上所使用的网桥数目有没有上限? 问题4-20:当我们在PC机插上以太网的网卡后,是否还必须编制以太网所需的MAC协议的程序? 问题4-21:使用网络分析软件可以分析出所捕获到的每一个帧的首部中各个字段的值。但是有时却无法找出LLC帧首部的各字段的值。这是什么原因? 问题4-22:整个的IEEE 802委员会现在一共有多少个工作组? 问题4-23:在一些文献和教材中,可以见到关于以太网的“前同步码”(preamble)有两种不同的法。一种法是:前同步码共8个字节。另一种法是:前同步码共7个字节,而在前同步码后面还有一个字节的“帧开始定界符”SFD (Start-of-Frame Delimiter)。那么哪一种法是正确的呢? 问题4-24:802.3标准共包含有多少种协议? 问题4-25:在802.3标准中有没有对人为干扰信号(jamming signal)制定出标准呢? 问题4-26:在以太网中,有没有可能在发送了512 bit(64 B)以后才发生碰撞? 问题4-27:在有的文献中会见到runt和jabber这两个名词,它们是什么意思? 问题4-28:当局域网刚刚问世时,总线形的以太网被认为可靠性比星形结构的网络好。但现在以太网又回到了星形结构,使用集线器作为交换结点。那么以前的看法是否有些不正确? 问题4-29:什么是10 Mb/s以太网的5-4-3规则? 第5章 广域网 问题5-1:广域网在地理上覆盖的范围较大,那么能不能“凡是在地理上覆盖范围较大的网络就是广域网”? 问题5-2:在广域网中的结点交换机是否就是路由器? 问题5-3:为什么路由选择功能不放在第5章广域网中详细讨论,而是推后到第6章(网络互连)才深入讨论? 问题5-4:为什么ATM信元的有效载荷规定为48字节? 问题5-5:异步传递方式ATM和同步传输有什么关系? 问题5-6:是否SDH/SONET只能为ATM使用? 问题5-7:在ATM中发送端或接收端的传输汇聚子层TC能否辨认出不同的虚通路VC? 问题5-8:按照分层原理,下层不检查上层协议数据单元PDU的首部。在ATM中,在传输汇聚子层TC上面的是ATM层。那么TC子层是否也不检查ATM信元的首部? 问题5-9:ATM使用的是面向连接的分组交换技术(采用定长分组——信元)。那么,ATM是否提供了可靠交付的服务呢? 问题5-10:ATM在刚刚问世时,曾被各界寄予了很大的希望。不少人认为ATM将是未来宽带网的重要基石。但很多年已经过去了,ATM始终不能成为宽带网的核心技术。那么对ATM的批评主要有哪些? 问题5-11:“不可靠的交付”(unreliable delivery)和“尽最大努力交付”(best effort delivery)是一样的意思吗? 第6章 网络互连 问题6-1:存在多种异构网络对不同网络之间的通信会造成一些麻烦。但为什么世界上还存在多种异构网络? 问题6-2:“IP网关”和“IP路由器”是否为同义语? 问题6-3:“互连网”和“互联网”有没有区别? 问题6-4:在文献中有时会见到对等连网(peer-to-peer networking),这是什么意思? 问题6-5:在一个互连网中,能否使用一个很大的交换机(switch)来代替互连网中很多的路由器? 问题6-6:为什么IP地址又称为“虚拟地址”? 问题6-7:有的文献上使用“虚拟分组”(virtual packet)这一名词。虚拟分组是什么意思? 问题6-8:如下图所示。五个网络用四个路由器(每一个路由器有两个端口)互连起来。能否改变这种连接方法,使用一个具有五个端口的路由器将这五个网络互连起来? 问题6-9:当运行PING 127.0.0.1时,这个IP数据报将发送给谁? 问题6-10:网络前缀是指网络号字段(net-id)中前面的几个类别比特还是指整个的网络号字段? 问题6-11:有的书(如[COME01])将IP地址分为前缀和后缀两大部分,它们和网络号字段及主机号字段有什么关系? 问题6-12:IP地址中的前缀和后缀最大的不同是什么? 问题6-13:IP数据报中的数据部分的长度是可变的(即IP数据报不是定长的)。这样做有什么好处? 问题6-14:IP地址中的各种类别的地址所拥有的地址数目的比例是怎样的? 问题6-15:在IP地址中,为什么使用最前面的一个或几个比特来表示地址的类别? 问题6-16:全1的IP地址是否是向整个因特网进行广播的一种地址? 问题6-17:IP协议有分片的功能,但广域网中的分组则不必分片。这是为什么? 问题6-18:路由表中只给出到目的网络的下一跳路由器的IP地址,然后在下一个路由器的路由表中再给出再下一跳的路由器的IP地址,最后才能到达目的网络进行直接交付。采用这样的方法有什么好处? 问题6-19:链路层广播和IP广播有何区别? 问题6-20:主机在接收一个广播帧或多播帧时其CPU所要做的事情有何区别? 问题6-21:有的路由器在和广域网相连时,在该路由器的广域网接口处并没有硬件地址,这怎样解释? 问题6-22:IP地址和电话号码相比时有何异同之处? 问题6-23:“尽最大努力交付”(best effort delivery)都有哪些含义? 问题6-24:假定在一个局域网中计算机A发送ARP请求分组,希望找出计算机B的硬件地址。这时局域网上的所有计算机都能收到这个广播发送的ARP请求分组。试问这时由哪一个计算机使用ARP响应分组将计算机B的硬件地址告诉计算机A? 问题6-25:有人将ARP列入网络接口层,即认为ARP不在IP层,这样对吗? 问题6-26:一个主机要向另一个主机发送IP数据报。是否使用ARP就可以得到该目的主机的硬件地址,然后直接用这个硬件地址将IP数据报发送给目的主机? 问题6-27:在因特网中最常见的分组长度大约是多少个字节? 问题6-28:IP数据报的最大长度是多少个字节? 问题6-29:IP数据报的首部的最大长度是多少个字节?典型的IP数据报首部是多长? 问题6-30:IP数据报在传输的过程中,其首部长度是否会发生变化? 问题6-31:当路由器利用IP数据报首部中的“首部检验和”字段检测出在传输过程中出现了差错时,就简单地将其丢弃。为什么不发送一个ICMP报文给源主机呢? 问题6-32:RIP协议的好处是简单,但缺点是不够稳定。有的书上介绍“触发更新”、“分离范围”和“毒性逆转”。能否简单介绍一下它们的要点? 问题6-33:IP数据报必须考虑最大传送单元MTU (Maximum Transfer Unit)。这是指哪一层的最大传送单元?包括不包括首部或尾部等开销在内? 问题6-34:如果一个路由器要同时连接在一个以太网和一个ATM网络上,需要有什么样的硬件加到路由器上? 问题6-35:教材中的图6-19的B类网络145.13.0.0在划分子网时,所给出的三个子网号是怎样得出的? 问题6-36:“交换(switching)”的准确含义是什么? 问题6-37:路由器到底有没有运输层?如果有,似乎就和“运输层只存在与分组交换网外面的主机中”相矛盾。如果没有,那么路由选择协议RIP又怎样能够使用UDP来传送呢? 第7章 运输层 问题7-1:TCP协议是面向连接的,但TCP使用的IP协议却是无连接的。这两种协议都有哪些主要的区别? 问题7-2:从通信的起点和终点来比较,TCP和IP的不同点是什么? 问题7-3:端口(port)和插口(socket)的区别是什么? 问题7-4:一个插口能否同时与远地的两个插口相连? 问题7-5:数据链路层的HDLC协议和运输层的TCP协议都使用滑动窗口技术。从这方面来进行比较,数据链路层协议和运输层协议的主要区别是什么? 问题7-6:TCP协议能够实现可靠的端到端传输。在数据链路层和网络层的传输还有没有必要来保证可靠传输呢? 问题7-7:在TCP报文段的首部中只有端口号而没有IP地址。当TCP将其报文段交给IP层时,IP协议怎样知道目的IP地址呢? 问题7-8:在TCP传送数据时,有没有规定一个最大重传次数? 问题7-9:TCP都使用哪些计时器? 问题7-10:是否TCP和UDP都需要计算往返时延RTT? 问题7-11:假定TCP开始进行连接建立。当TCP发送第一个SYN报文段时,显然无法利用教材中7.4.5节所介绍的方法计算往返时延RTT。那么这时TCP又怎样设置重传计时器呢? 问题7-12:糊涂窗口综合症产生的条件是什么?是否只有在接收方才产生这种症状? 问题7-13:能否更详细些讨论一下糊涂窗口综合症及其解决方法? 问题7-14:为什么TCP在建立连接时不能每次都选择相同的、固定的初始序号? 问题7-15:能否利用TCP发送端和接收端交换报文段的图来开始的特点? 问题7-16:对于拥塞避免是否也能够用发送端和接收端交换的报文段来明其工作原理? 问题7-17:TCP连接很像一条连接发送端和接收端的双向管道。当TCP在连续发送报文段时,若要管道得到充分的利用,则发送窗口的大小应怎样选择? 问题7-18:假定在一个互连网中,所有的链路的传输都不出现差错,所有的结点也都不会发生故障。试问在这种情况下,TCP的“可靠交付”的功能是否就是多余的? 问题7-19:进行TCP通信的一方收到了确认号为4001的报文段。这是否表示对方已经收到了4000个字节的数据,而期望接收编号为4001的数据字节?还是否表示对方已经收到了4001个字节的数据,而期望接收编号为4001的数据字节? 问题7-20:在7.4.7节的注释①中提到的“三次握手”(three-way handshake)的译名不太准确,那么有没有这个术语的标准译名呢?? 问题7-21:有的资料上把TCP连接成是“虚连接”。这样正确吗? 问题7-22:教材中运输层的熟知端口号可以在[RFC 1700]中查找到。但有的资料却应当在网上查找。究竟哪种法正确? 问题7-23:在TCP报文段中,如果是没有数据的确认报文段,其序号字段应当填入什么号码? 第8章 应用层 问题8-1:我们经常“两个计算机进行通信”。我们应当怎样理解这句话? 问题8-2:能否用你的PC机进行一个简单的实验:一个计算机同时和5个计算机进行通信? 问题8-3:因特网中计算机程序之间的通信和电信网中的电话通信有何相同或不同之处? 问题8-4:连接在因特网上的主机名必须是惟一的吗? 问题8-5:在因特网中通过域名系统查找某个主机的IP地址,和在电话系统中通过114查号台查找某个单位的电话号码相比,有何异同之处? 问题8-6:一个单位的DNS服务器可以采用集中式的一个DNS服务器,也可以采用分布式的多个DNS服务器。哪一种方案更好些? 问题8-7:对同一个域名向DNS服务器发出好几次的DNS请求报文后,每一次得到IP地址都不一样。这可能吗? 问题8-8:当使用56 kb/s的调制解调器上网时,经常会发现数据下载的速率远远小于56 kb/s。这是什么原因? 问题8-9:ARP和DNS是否有些相似?它们有何区别? 问题8-10:“网关”和“路由器”是否为同义语? 问题8-11:我们常在文献上看到“远程登录”这样的名词。它的英文名字应当是remote log-in还是Telnet? 问题8-12:电话通信和电子邮件通信是使用客户服务器工作方式吗? 问题8-13:在电子邮件中,“信封”、“内容”、“首部”、“主体”是个什么样的关系? 问题8-14:能否更加细致地介绍一下base64编码? 问题8-15:能否归纳一下HTTP协议的主要特点? 问题8-16:HTTP 1.1协议比起HTTP 1.0协议有哪些主要的变化? 问题8-17:抽象语法、传送语法的主要区别是什么?数据类型、编码以及编码规则的区别又是什么? 问题8-18:为什么SNMP还必须有SMI和MIB两个构件才能工作? 问题8-19:SNMP现已发展到第三个版本SNMPv3。是否前两个版本SNMPv1和SNMPv2现在已经不使用了呢? 第9章 计算机网络的安全 问题9-1:请仔细明本教材中置换密码的例子的加密和解密过程(密钥为CIPHER,而明文为attack begins at four,加密时明文中的空格去除)。 问题9-2:拒绝服务DOS (Denial Of Service)和分布式拒绝服务DDOS (Distributed DOS)这两种攻击是怎样产生的? 问题9-3:报文的保密性和报文的完整性有何不同?保密性和完整性能否只要其中的一个而不要另一个? 问题9-4:常规密钥体制与公开密钥体制最主要的区别是什么? 问题9-5:能否举一个实际的RSA加密和解密的例子? 问题9-6:要进一步理解RSA密码体制的原理,需要知道哪一些数论的基本知识? 问题9-7:怎样证明第9章中RSA密码体制的解码公式(9-8)? 问题9-8:RSA加密能否被认为是保证安全的? 问题9-9:报文摘要并不对传送的报文进行加密。这怎么能算是一种网络安全的措施?不管在什么情况下永远将报文进行加密不是更好一些吗? 问题9-10:在防火墙技术中的分组过滤器工作在哪一个层次? 第10章 因特网的演进 问题10-1:本章叫做“因特网的演进”。这是否意味着前面几章讨论的因特网协议都不存在因特网演进的问题,而只有本章讨论的内容才属于“因特网的演进”的范围? 问题10-2:为什么传统的因特网本身是非等时的? 问题10-3:IP协议是不保证服务质量的。可是因特网的成功可以在很大的程度上得益于IP协议。那么IP协议最主要的优点是什么? 问题10-4:端到端时延(end-to-end delay)和时延抖动(delay jitter)有什么区别? 问题10-5:能否简单归纳一下,为了适应多媒体信息的传输,目前对因特网应如何演进,都有哪三种主要观点? 问题10-6:在教材第10章的图10-2中的缓存(其作用是将非恒定速率的分组变为恒定速率的分组)是否就是在运输层中的接收缓存? 问题10-7:假定在教材第10章图10-14中对应于三种分组流的权重分别为0.5,0.25和0.25,并且所有的分组流都有大量分组在缓存中。试问这三种分组流被服务的顺序可能是怎样的(对于轮流服务的情况,被服务的顺序是1 2 3 1 2 3 1 2 3…)? 问题10-8:假定在问题10-7中,只有第一类和第二类分组流有大量分组在缓存中,而第三类分组流目前暂时没有分组在缓存中。试问这三种分组流被服务的顺序可能是怎样的? 问题10-9:三网融合是目的吗?
常见问题目录 本光盘的使用方法:点击感兴趣的问题,就可以链接到该问题的答案。所有文件都是用WORD打开的。在点击所要看的问题时,请同时按住Control键(Ctrl)。 第1章 概述 问题1-1:“主机”和“计算机”一样不一样? 问题1-2:能否:“电路交换和面向连接是等同的,而分组交换和无连接是等同的”? 问题1-3:因特网使用的IP协议是无连接的,因此其传输是不可靠的。这样容易使人们感到因特网很不可靠。那么为什么当初不把因特网的传输设计成为可靠的? 问题1-4:在具有五层协议的体系结构中,如果下面的一层使用面向连接服务或无连接服务,那么在上面的一层是否也必须使用同样性质的服务呢?或者,是否我们可以在各层任意使用面向连接服务或无连接服务呢? 问题1-5:在运输层应根据什么原则来确定应当使用面向连接服务还是无连接服务? 问题1-6:在数据链路层应根据什么原则来确定应当使用面向连接服务还是无连接服务? 问题1-7:TCP/IP的体系结构到底是四层还是五层? 问题1-8:我们常“分组交换”。但又常“路由器转发IP数据报”或“路由器转发帧”。究竟“分组”一词应当用在什么场合? 问题1-9:到商店购买可一个希捷公司生产的80 G的硬盘。安装到电脑上以后用WINDOWS的资源管理器发现在该磁盘的“属性”中只有74.5 G。是不是商店出了差错? 问题1-10:有这样的法:习惯上,人们都将网络的“带宽”作为网络所能传送的“最高数据率”的同义语。这样的法有何根据? 问题1-11:有时可听到人们将“带宽为10 Mb/s的以太网”成是“速率(或速度)为10 Mb/s的以太网”或“10兆速率(或速度)的以太网”。试问这样的法正确否? 问题1-12:有人,宽带信道相当于高速公路车道数目增多了,可以同时并行地跑更多数量的汽车。虽然汽车的时速并没有提高(这相当于比特在信道上的传播速率没有提高),但整个高速公路的运输能力却增多了,相当于能够传送更多数量的比特。这种比喻合适否? 问题1-13:如果用时延带宽积管道来比作传输链路,那么是否宽带链路对应的时延带宽积管道就比较宽呢? 问题1-14:网络的吞吐量与网络的时延有何关系? 问题1-15:什么是“无缝的”、“透明的”和“虚拟的”? 问题1-16:在教材的1.7.2节提到协议有三个要素,即语法、语义和同步。语义是否已经包括了同步的意思? 问题1-17:为什么协议不能设计成100%可靠的? 问题1-18:什么是因特网的摩尔定律? 第2章 物理层 问题2-1:“规程”、“协议”和 “规约”都有何区别? 问题2-2:在许多文献中经常见到人们将“模拟”与“仿真”作为同义语。那么,“模拟信道”能否成是“仿真信道”? 问题2-3:为什么电话信道的标准带宽是3.1 kHz? 问题2-4:奈氏准则和香农公式的主要区别是什么?这两个公式对数据通信的意义是什么? 问题2-5:传输媒体是物理层吗?传输媒体和物理层的主要区别是什么? 问题2-6:同步(synchronous)和异步(asynchronous)的区别是什么? 问题2-7:同步通信和异步通信的区别是什么? 问题2-8:位同步(比特同步)和帧同步的区别是什么? 第3章 数据链路层 问题3-1:旧版的《计算机网络》认为数据链路层的任务是在两个相邻结点间的线路上无差错地传送以帧(frame)为单位的数据。数据链路层可以把一条有可能出差错的实际链路,转变成为让网络层向下看起来好像是一条不出差错的链路。 但最近新版的《计算机网络》(第4版和第5版)中对数据链路层的提法就改变了。数据链路层的传输不能让网络层向下看起来好像是一条不出差错的链路。 到底哪一种法是正确的? 问题3-2:当数据链路层使用PPP协议或CSMA/CD协议时,既然不保证可靠传输,那么为什么对所传输的帧进行差错检验呢? 问题3-3:为什么旧的版本教材在数据链路层一章中讲授可靠传输,但现在新的版本教材则取消了可靠传输? 问题3-4:通过普通的电话用户线拨号上网时(使用调制解调器),试问一对用户线可容许多少个用户同时上网? 问题3-5:除了差错检测外,面向字符的数据链路层协议还必须解决哪些特殊的问题? 问题3-6:为什么计算机进行通信时发送缓存和接收缓存总是需要的? 问题3-7:以太网使用载波监听多点接入碰撞检测协议CSMA/CD。频分复用FDM才使用载波。以太网有没有使用频分复用? 问题3-8:在以太网中,不同的传输媒体会产生不同的传播时延吗? 问题3-9:在以太网中发生了碰撞是否明这时出现了某种故障? 问题3-10:从什么地方可以查阅到以太网帧格式中的“类型”字段是怎样分配的? 问题3-11:是什么原因使以太网有一个最小帧长和最大帧长? 问题3-12:在双绞线以太网中,其连接导线只需要两对线:一对线用于发送,另一对线用于接收。但现在的标准是使用RJ-45连接器。这种连接器有8根针脚,一共可连接4对线。这是否有些浪费?是否可以不使用RJ-45而使用RJ-11? 问题3-13:RJ-45连接器对8根针脚的编号有什么规定? 问题3-14:剥开5类线的外塑料保护套管就可以看见不同颜色的4对双绞线。哪一根线应当连接到哪一个针脚呢? 问题3-15:将5类线电缆与RJ-45插头连接起来的具体操作步骤是怎样的? 问题3-16:不用集线器或以太网交换机,能否将两台计算机用带有RJ-45插头的5类线电缆直接连接起来? 问题3-17:使用屏蔽双绞线电缆STP安装以太网是否可获得更好的效果? 问题3-18:如果将已有的10 Mb/s以太网升级到100 Mb/s,试问原来使用的连接导线是否还能继续使用? 问题3-19:使用5类线的10BASE-T以太网的最大传输距离是100 m。但听到有人,他使用10BASE-T以太网传送数据的距离达到180 m。这可能吗? 问题3-20:粗缆以太网有一个单独的收发器。细缆以太网和双绞线以太网有没有收发器?如果有,都在什么地方? 问题3-21:什么叫做“星形总线(star-shaped bus)”或“盒中总线(bus-in-a-box)”? 问题3-22:以太网的覆盖范围受限的一个原因是:如果站点之间的距离太大,那么由于信号传输时会衰减得很多因而无法对信号进行可靠的接收。试问:如果我们设法提高发送信号的功率,那么是否就可以提高以太网的通信距离? 问题3-23:一个大学能否就使用一个很大的局域网而不使用许多相互连接的较小的局域网? 问题3-24:一个10 Mb/s以太网若工作在全双工状态,那么其数据率是发送和接收各为5 Mb/s还是发送和接收各为10 Mb/s? 问题3-25:一个单个的以太网上所使用的网桥数目有没有上限? 问题3-26:当我们在PC机插上以太网的适配器(网卡)后,是否还必须编制以太网所需的MAC协议的程序? 问题3-27:使用网络分析软件可以分析出所捕获到的每一个帧的首部中各个字段的值。但是有时却无法找出LLC帧首部的各字段的值。这是什么原因? 问题3-28:整个的IEEE 802委员会现在一共有多少个工作组? 问题3-29:在一些文献和教材中,可以见到关于以太网的“前同步码”(preamble)有两种不同的法。一种法是:前同步码共8个字节。另一种法是:前同步码共7个字节,而在前同步码后面还有一个字节的“帧开始定界符”SFD (Start-of-Frame Delimiter)。那么哪一种法是正确的呢? 问题3-30:802.3标准共包含有多少种协议? 问题3-31:在802.3标准中有没有对人为干扰信号(jamming signal)制定出标准呢? 问题3-32:在以太网中,有没有可能在发送了512 bit(64 B)以后才发生碰撞? 问题3-33:在有的文献中会见到runt和jabber这两个名词,它们是什么意思? 问题3-34:当局域网刚刚问世时,总线形的以太网被认为可靠性比星形结构的网络好。但现在以太网又回到了星形结构,使用集线器作为交换结点。那么以前的看法是否有些不正确? 第4章 网络层 问题4-1:存在多种异构网络对不同网络之间的通信会造成一些麻烦。但为什么世界上还存在多种异构网络? 问题4-2:“IP网关”和“IP路由器”是否为同义语? 问题4-3:“互连网”和“互联网”有没有区别? 问题4-4:在文献中有时会见到对等连网(peer-to-peer networking),这是什么意思? 问题4-5:在一个互联网中,能否使用一个很大的交换机(switch)来代替互联网中很多的路由器? 问题4-6:为什么IP地址又称为“虚拟地址”? 问题4-7:有的文献上使用“虚拟分组”(virtual packet)这一名词。虚拟分组是什么意思? 问题4-8:如下图所示。五个网络用四个路由器(每一个路由器有两个端口)互连起来。能否改变这种连接方法,使用一个具有五个端口的路由器将这五个网络互连起来? 问题4-9:当运行PING 127.0.0.1时,这个IP数据报将发送给谁? 问题4-10:网络前缀是指网络号字段(net-id)中前面的几个类别位还是指整个的网络号字段? 问题4-11:有的书(如[COME06])将IP地址分为前缀和后缀两大部分,它们和网络号字段及主机号字段有什么关系? 问题4-12:IP地址中的前缀和后缀最大的不同是什么? 问题4-13:IP数据报中的数据部分的长度是可变的(即IP数据报不是定长的)。这样做有什么好处? 问题4-14:IP地址中的各种类别的地址所拥有的地址数目的比例是怎样的? 问题4-15:在IP地址中,为什么使用最前面的一个或几个比特来表示地址的类别? 问题4-16:全1的IP地址是否是向整个因特网进行广播的一种地址? 问题4-17:IP协议有分片的功能,但广域网中的分组则不必分片。这是为什么? 问题4-18:路由表中只给出到目的网络的下一跳路由器的IP地址,然后在下一个路由器的路由表中再给出再下一跳的路由器的IP地址,最后才能到达目的网络进行直接交付。采用这样的方法有什么好处? 问题4-19:链路层广播和IP广播有何区别? 问题4-20:主机在接收一个广播帧或多播帧时其CPU所要做的事情有何区别? 问题4-21:有的路由器在和广域网相连时,在该路由器的广域网接口处并没有硬件地址,这怎样解释? 问题4-22:IP地址和电话号码相比时有何异同之处? 问题4-23:“尽最大努力交付”(best effort delivery)都有哪些含义? 问题4-24:假定在一个局域网中计算机A发送ARP请求分组,希望找出计算机B的硬件地址。这时局域网上的所有计算机都能收到这个广播发送的ARP请求分组。试问这时由哪一个计算机使用ARP响应分组将计算机B的硬件地址告诉计算机A? 问题4-25:有人将ARP列入网络接口层,即认为ARP不在IP层,这样对吗? 问题4-26:一个主机要向另一个主机发送IP数据报。是否使用ARP就可以得到该目的主机的硬件地址,然后直接用这个硬件地址将IP数据报发送给目的主机? 问题4-27:在因特网中最常见的分组长度大约是多少个字节? 问题4-28:IP数据报的最大长度是多少个字节? 问题4-29:IP数据报的首部的最大长度是多少个字节?典型的IP数据报首部是多长? 问题4-30:IP数据报在传输的过程中,其首部长度是否会发生变化? 问题4-31:当路由器利用IP数据报首部中的“首部检验和”字段检测出在传输过程中出现了差错时,就简单地将其丢弃。为什么不发送一个ICMP报文给源主机呢? 问题4-32:RIP协议的好处是简单,但缺点是不够稳定。有的书上介绍“触发更新”、“分离范围”和“毒性逆转”。能否简单介绍一下它们的要点? 问题4-33:IP数据报必须考虑最大传送单元MTU (Maximum Transfer Unit)。这是指哪一层的最大传送单元?包括不包括首部或尾部等开销在内? 问题4-34:如果一个路由器要同时连接在一个以太网和一个ATM网络上,需要有什么样的硬件加到路由器上? 问题4-35:教材中的图4-19的B类网络145.13.0.0在划分子网时,所给出的三个子网号是怎样得出的? 问题4-36:“交换(switching)”的准确含义是什么? 问题4-37:为什么生存时间TTL原来用秒作为单位而现在TTL却表示数据报在网络中所能通过的路由器数的最大值? 第5章 运输层 问题5-1:TCP协议是面向连接的,但TCP使用的IP协议却是无连接的。这两种协议都有哪些主要的区别? 问题5-2:从通信的起点和终点来比较,TCP和IP的不同点是什么? 问题5-3:端口(port)和套接字(socket)的区别是什么? 问题5-4:一个套接字能否同时与远地的两个套接字相连? 问题5-5:数据链路层的HDLC协议和运输层的TCP协议都使用滑动窗口技术。从这方面来进行比较,数据链路层协议和运输层协议的主要区别是什么? 问题5-6:TCP协议能够实现可靠的端到端传输。在数据链路层和网络层的传输还有没有必要来保证可靠传输呢? 问题5-7:在TCP报文段的首部中只有端口号而没有IP地址。当TCP将其报文段交给IP层时,IP协议怎样知道目的IP地址呢? 问题5-8:在TCP传送数据时,有没有规定一个最大重传次数? 问题5-9:TCP都使用哪些计时器? 问题5-10:是否TCP和UDP都需要计算往返时间RTT? 问题5-11:假定TCP开始进行连接建立。当TCP发送第一个SYN报文段时,显然无法利用教材中5.6.3节所介绍的方法计算往返时间RTT。那么这时TCP又怎样设置重传计时器呢? 问题5-12:糊涂窗口综合症产生的条件是什么?是否只有在接收方才产生这种症状? 问题5-13:能否更详细些讨论一下糊涂窗口综合症及其解决方法? 问题5-14:为什么TCP在建立连接时不能每次都选择相同的、固定的初始序号? 问题5-15:能否利用TCP发送端和接收端交换报文段的图来开始的特点? 问题5-16:对于拥塞避免是否也能够用发送端和接收端交换的报文段来明其工作原理? 问题5-17:TCP连接很像一条连接发送端和接收端的双向管道。当TCP在连续发送报文段时,若要管道得到充分的利用,则发送窗口的大小应怎样选择? 问题5-18:假定在一个互联网中,所有的链路的传输都不出现差错,所有的结点也都不会发生故障。试问在这种情况下,TCP的“可靠交付”的功能是否就是多余的? 问题5-19:TCP是通信协议还是软件? 问题5-20:在计算TCP的往返时间RTT的公式中,本教材过去的版本是取 = 7/8。但现在的新版本是取 = 1/8。为什么会有这样大的改变? 第6章 应用层 问题6-1:我们经常“两个计算机进行通信”。我们应当怎样理解这句话? 问题6-2:能否用你的PC机进行一个简单的实验:一个计算机同时和5个计算机进行通信? 问题6-3:因特网中计算机程序之间的通信和电信网中的电话通信有何相同或不同之处? 问题6-4:连接在因特网上的主机名必须是唯一的吗? 问题6-5:在因特网中通过域名系统查找某个主机的IP地址,和在电话系统中通过114查号台查找某个单位的电话号码相比,有何异同之处? 问题6-6:一个单位的DNS服务器可以采用集中式的一个DNS服务器,也可以采用分布式的多个DNS服务器。哪一种方案更好些? 问题6-7:对同一个域名向DNS服务器发出好几次的DNS请求报文后,每一次得到IP地址都不一样。这可能吗? 问题6-8:当使用56 kb/s的调制解调器上网时,经常会发现数据下载的速率远远小于56 kb/s。这是什么原因? 问题6-9:ARP和DNS是否有些相似?它们有何区别? 问题6-10:“网关”和“路由器”是否为同义语? 问题6-11:我们常在文献上看到“远程登录”这样的名词。它的英文名字应当是remote log-in还是Telnet? 问题6-12:电话通信和电子邮件通信是使用客户服务器工作方式吗? 问题6-13:在电子邮件中,“信封”、“内容”、“首部”、“主体”是个什么样的关系? 问题6-14:能否更加细致地介绍一下base64编码? 问题6-15:能否归纳一下HTTP协议的主要特点? 问题6-16:HTTP 1.1协议比起HTTP 1.0协议有哪些主要的变化? 问题6-17:抽象语法、传送语法的主要区别是什么?数据类型、编码以及编码规则的区别又是什么? 第7章 计算机网络的安全 问题7-1:用一个例子明置换密码的加密和解密过程。假定密钥为CIPHER,而明文为attack begins at four,加密时明文中的空格去除。 问题7-2:拒绝服务DOS (Denial Of Service)和分布式拒绝服务DDOS (Distributed DOS)这两种攻击是怎样产生的? 问题7-3:报文的保密性和报文的完整性有何不同?保密性和完整性能否只要其中的一个而不要另一个? 问题7-4:常规密钥体制与公钥体制最主要的区别是什么? 问题7-5:能否举一个实际的RSA加密和解密的例子? 问题7-6:要进一步理解RSA密码体制的原理,需要知道哪一些数论的基本知识? 问题7-7:怎样证明RSA密码体制的解码公式? 问题7-8:RSA加密能否被认为是保证安全的? 问题7-9:报文摘要并不对传送的报文进行加密。这怎么能算是一种网络安全的措施?不管在什么情况下永远将报文进行加密不是更好一些吗? 问题7-10:不重数(nonce)是否就是随机数? 问题7-11:在防火墙技术中的分组过滤器工作在哪一个层次? 第8章 因特网上的音频/视频服务 问题8-1:为什么传统的因特网本身是非等时的? 问题8-2:IP协议是不保证服务质量的。可是因特网的成功可以在很大的程度上得益于IP协议。那么IP协议最主要的优点是什么? 问题8-3:端到端时延(end-to-end delay)和时延抖动(delay jitter)有什么区别? 问题8-4:能否简单归纳一下,为了适应多媒体信息的传输,目前对因特网应如何演进,都有哪三种主要观点? 问题8-5:在教材第8章的图8-2中的缓存(其作用是将非恒定速率的分组变为恒定速率的分组)是否就是在运输层中的接收缓存? 问题8-6:假定在教材第8章图8-19中对应于三种分组流的权重分别为0.5,0.25和0.25,并且所有的分组流都有大量分组在缓存中。试问这三种分组流被服务的顺序可能是怎样的(对于轮流服务的情况,被服务的顺序是1 2 3 1 2 3 1 2 3…)? 问题8-7:假定在问题8-6中,只有第一类和第二类分组流有大量分组在缓存中,而第三类分组流目前暂时没有分组在缓存中。试问这三种分组流被服务的顺序可能是怎样的? 第9章 无线网络(略) 第10章 下一代因特网 问题10-1:本章叫做“下一代因特网”。这是否意味着前面几章讨论的因特网协议都属于传统的因特网,而只有本章讨论的内容才涉及到因特网的一些新的演进? 问题10-2:三网融合是目的吗? 有关广域网WAN的问题 问题WAN-1:广域网在地理上覆盖的范围较大,那么能不能“凡是在地理上覆盖范围较大的网络就是广域网”? 问题WAN-2:在广域网中的结点交换机是否就是路由器? 问题WAN-3:为什么在第5版的《计算机网络》取消了“广域网”这一章? 问题WAN-4:为什么ATM信元的有效载荷规定为48字节? 问题WAN-5:异步传递方式ATM和同步传输有什么关系? 问题WAN-6:是否SDH/SONET只能为ATM使用? 问题WAN-7:在ATM中发送端或接收端的传输汇聚子层TC能否辨认出不同的虚通路VC? 问题WAN-8:按照分层原理,下层不检查上层协议数据单元PDU的首部。在ATM中,在传输汇聚子层TC上面的是ATM层。那么TC子层是否也不检查ATM信元的首部?
文件为doc版,可自行转成txt,在手机上看挺好的。 本资源来自网络,如有纰漏还请告知,如觉得还不错,请留言告知后来人,谢谢!!!!! 入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。 ◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last; ◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln; ◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。 本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。 immortality按:请用ctrl+f在本页中查找某一部分的内容或某一命令的用法。 -------------------------------------------------------------------------------- Linux必学的60个命令(1)-安装与登陆命令 login 1.作用 login的作用是登录系统,它的使用权限是所有用户。 2.格式 login [name][-p ][-h 主机名称] 3.主要参数 -p:通知login保持现在的环境参数。 -h:用来向远程登录的之间传输用户名。 如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。 一般界面是这样的: Manddrake Linux release 9.1(Bamboo) for i586 renrel 2.4.21-0.13mdk on i686 / tty1 localhost login:root password: 上面代码中,第一行是Linux发行版本号,第二行是内核版本号和登录的虚拟控制台,我们在第三行输入登录名,按“Enter”键在Password后输入账户密码,即可登录系统。出于安全考虑,输入账户密码时字符不会在屏幕上回显,光标也不移动。 登录后会看到下面这个界面(以超级用户为例): [root@localhost root]# last login:Tue ,Nov 18 10:00:55 on vc/1 上面显示的是登录星期、月、日、时间和使用的虚拟控制台。 4.应用技巧 Linux 是一个真正的多用户操作系统,可以同时接受多个用户登录,还允许一个用户进行多次登录。这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。 例如,用户登录后,按一下“Alt+ F2”键,用户就可以看到上面出现的“login:”提示符,明用户看到了第二个虚拟控制台。然后只需按“Alt+ F1”键,就可以回到第一个虚拟控制台。一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。虚拟控制台最有用的是,当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作,关闭这个程序。 shutdown 1.作用 shutdown命令的作用是关闭计算机,它的使用权限是超级用户。 2.格式 shutdown [-h][-i][-k][-m][-t] 3.重要参数 -t:在改变到其它运行级别之前,告诉init程序多久以后关机。 -k:并不真正关机,只是送警告信号给每位登录者。 -h:关机后关闭电源。 -c:cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。 -F:在重启计算机时强迫fsck。 -time:设定关机前的时间。 -m: 将系统改为单用户模式。 -i:关机时显示系统信息。 4.命令明 shutdown 命令可以安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux系统,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。在系统关机前使用 shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。 halt 1.作用 halt命令的作用是关闭系统,它的使用权限是超级用户。 2.格式 halt [-n] [-w] [-d] [-f] [-i] [-p] 3.主要参数明 -n:防止sync系统调用,它用在用fsck修补根分区之后,以阻止内核用老版本的超级覆盖修补过的超级。 -w:并不是真正的重启或关机,只是wtmp(/var/log/wtmp)纪录。 -f:没有调用shutdown,而强制关机或重启。 -i:关机(或重启)前,关掉所有的网络接口。 -f:强迫关机,不呼叫shutdown这个指令。 -p: 当关机的时候顺便做关闭电源的动作。 -d:关闭系统,但不留下纪录。  4.命令明 halt 就是调用shutdown -h。halt执行时,杀死应用进程,执行sync(将存于buffer中的资料强制入硬盘中)系统调用,文件系统操作完成后就会停止内核。若系统的运行级别为0或6,则关闭系统;否则以shutdown指令(加上-h参数)来取代。  reboot 1.作用 reboot命令的作用是重新启动计算机,它的使用权限是系统管理者。 2.格式 reboot [-n] [-w] [-d] [-f] [-i] 3.主要参数 -n: 在重开机前不做将记忆体资料回硬盘的动作。 -w: 并不会真的重开机,只是把记录到/var/log/wtmp文件里。 -d: 不把记录到/var/log/wtmp文件里(-n这个参数包含了-d)。 -i: 在重开机之前先把所有与网络相关的装置停止。 install 1.作用 install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。 2.格式 (1)install [选项]... 来源 目的地 (2)install [选项]... 来源... 目录 (3)install -d [选项]... 目录... 在前两种格式中,会将复制至或将多个文件复制至已存在的,同时设定权限模式及所有者/所属组。在第三种格式中,会创建所有指定的目录及它们的主目录。长选项必须用的参数在使用短选项时也是必须的。 3.主要参数 --backup[=CONTROL]:为每个已存在的目的地文件进行备份。 -b:类似 --backup,但不接受任何参数。 -c:(此选项不作处理)。 -d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。 -D:创建前的所有主目录,然后将复制至 ;在第一种使用格式中有用。 -g,--group=组:自行设定所属组,而不是进程目前的所属组。 -m,--mode=模式:自行设定权限模式 (像chmod),而不是rwxr-xr-x。 -o,--owner=所有者:自行设定所有者 (只适用于超级用户)。 -p,--preserve-timestamps:以文件的访问/修改时间作为相应的目的地文件的时间属性。 -s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。 -S,--suffix=后缀:自行指定备份文件的。 -v,--verbose:处理每个文件/目录时印出名称。 --help:显示此帮助信息并离开。 --version:显示版本信息并离开。 mount 1.作用 mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab中允许的使用者。 2.格式 mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir 3.主要参数 -h:显示辅助信息。 -v:显示信息,通常和-f用来除错。 -a:将/etc/fstab中定义的所有文件系统挂上。 -F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。在系统需要挂上大量NFS文件系统时可以加快加载的速度。 -f:通常用于除错。它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常会和-v一起使用。 -t vfstype:显示被加载文件系统的类型。 -n:一般而言,mount挂上后会在/etc/mtab中入一笔资料,在系统中没有可入文件系统的情况下,可以用这个选项取消这个动作。 4.应用技巧 在Linux 和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树中的某个挂装点。如果发行版安装了自动挂装包,那么这个步骤可自动进行。在Linux中,如果要使用硬盘、光驱等储存设备,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。挂上一个设备使用mount命令。在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。 (1)Linux可以识别的文件系统 ◆ Windows 95/98常用的FAT 32文件系统:vfat ; ◆ Win NT/2000 的文件系统:ntfs ; ◆ OS/2用的文件系统:hpfs; ◆ Linux用的文件系统:ext2、ext3; ◆ CD-ROM光盘用的文件系统:iso9660。 虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。 (2)确定设备的名称 在Linux 中,设备名称通常都存在/dev里。这些设备名称的命名都是有规则的,可以用“推理”的方式把设备名称找出来。例如,/dev/hda1这个 IDE设备,hd是Hard Disk(硬盘)的,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。a代表第一个设备,通常IDE接口可以接上4个IDE设备(比如4硬盘)。所以要识别IDE硬盘的方法分别就是hda、hdb、hdc、 hdd。hda1中的“1”代表hda的第一个硬盘分区 (partition),hda2代表hda的第二主分区,第一个逻辑分区从hda5开始,依此类推。此外,可以直接检查 /var/log/messages文件,在该文件中可以找到计算机开机后系统已辨认出来的设备代号。 (3)查找挂接点 在决定将设备挂接之前,先要查看一下计算机是不是有个/mnt的空目录,该目录就是专门用来当作挂载点(Mount Point)的目录。建议在/mnt里建几个/mnt/cdrom、/mnt/floppy、/mnt/mo等目录,当作目录的专用挂载点。举例而言,如要挂载下列5个设备,其执行指令可能如下 (假设都是Linux的ext2系统,如果是Windows XX请将ext2改成vfat): 软盘 ===>mount -t ext2 /dev/fd0 /mnt/floppy cdrom ===>mount -t iso9660 /dev/hdc /mnt/cdrom SCSI cdrom ===>mount -t iso9660 /dev/sdb /mnt/scdrom SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr 不过目前大多数较新的Linux发行版本(包括红旗 Linux、中软Linux、Mandrake Linux等)都可以自动挂装文件系统,但Red Hat Linux除外。 umount 1.作用 umount命令的作用是卸载一个文件系统,它的使用权限是超级用户或/etc/fstab中允许的使用者。 2.格式 unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir 3.使用明 umount 命令是mount命令的逆操作,它的参数和使用方法和mount命令是一样的。Linux挂装CD-ROM后,会锁定CD—ROM,这样就不能用CD- ROM面板上的Eject按钮弹出它。但是,当不再需要光盘时,如果已将/cdrom作为符号链接,请使用umount/cdrom来卸装它。仅当无用户正在使用光盘时,该命令才会成功。该命令包括了将带有当前工作目录当作该光盘中的目录的终端窗口。 chsh 1.作用 chsh命令的作用是更改使用者shell设定,它的使用权限是所有使用者。 2.格式 chsh [ -s ] [ -list] [ --help ] [ -v ] [ username ] 3.主要参数 -l:显示系统所有Shell类型。 -v:显示Shell版本号。 4.应用技巧 前面介绍了Linux下有多种Shell,一般缺省的是Bash,如果想更换Shell类型可以使用chsh命令。先输入账户密码,然后输入新Shell类型,如果操作正确系统会显示“Shell change”。其界面一般如下: Changing fihanging shell for cao Password: New shell [/bin/bash]: /bin/tcsh 上面代码中,[ ]内是目前使用的Shell。普通用户只能修改自己的Shell,超级用户可以修改全体用户的Shell。要想查询系统提供哪些Shell,可以使用chsh -l 命令,见图1所示。 图1 系统可以使用的Shell类型 从图1中可以看到,笔者系统中可以使用的Shell有bash(缺省)、csh、sh、tcsh四种。 exit 1.作用 exit命令的作用是退出系统,它的使用权限是所有用户。 2.格式 exit 3.参数 exit命令没有参数,运行后退出系统进入登录界面。 last 1.作用 last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统。 2.格式 1ast[—n][-f file][-t tty] [—h 节点][-I —IP][—1][-y][1D] 3.主要参数 -n:指定输出记录的条数。 -f file:指定用文件file作为查询用的log文件。 -t tty:只显示指定的虚拟控制台上登录情况。 -h 节点:只显示指定的节点上的登录情况。 -i IP:只显示指定的IP上登录的情况。 -1:用IP来显示远端地址。 -y:显示记录的年、月、日。 -ID:知道查询的用户名。 -x:显示系统关闭、用户登录和退出的历史。 动手练习 上面介绍了Linux安装和登录命令,下面介绍几个实例,动手练习一下刚才讲过的命令。 1.一次运行多个命令 在一个命令行中可以执行多个命令,用分号将各个命令隔开即可,例如: #last -x;halt 上面代码表示在显示系统关闭、用户登录和退出的历史后关闭计算机。 2.利用mount挂装文件系统访问Windows系统 许多Linux发行版本现在都可以自动加载Vfat分区来访问Windows系统,而Red Hat各个版本都没有自动加载Vfat分区,因此还需要进行手工操作。 mount 可以将Windows分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将Windows的分区和/mnt这个目录联系起来。因此,只要访问这个文件夹就相当于访问该分区了。首先要在/mnt下建立winc文件夹,在命令提示符下输入下面命令: #mount -t vfat /dev/hda1 /mnt/winc 即表示将Windows的C分区挂到Liunx的/mnt/winc目录下。这时,在/mnt/winc目录下就可以看到Windows中C盘的内容了。使用类似的方法可以访问Windows系统的D、E盘。在Linux系统显示Windows的分区一般顺序这样的:hda1为C盘、hda5为D盘、 hda6为E盘……以此类推。上述方法可以查看Windows系统有一个很大的问题,就是Windows中的所有中文文件名或文件夹名全部显示为问号 “?”,而英文却可以正常显示。我们可以通过加入一些参数让它显示中文。还以上面的操作为例,此时输入命令: #mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc 现在它就可以正常显示中文了。 3.使用mount加挂闪盘上的文件系统 在Linux下使用闪盘非常简单。Linux对USB设备有很好的支持,当插入闪盘后,闪盘被识别为一个SCSI盘,通常输入以下命令: # mount /dev/sda1 /usb 就能够加挂闪盘上的文件系统。 小知识 Linux命令与Shell 所谓Shell,就是命令解释程序,它提供了程序设计接口,可以使用程序来编程。学习Shell对于Linux初学者理解Linux系统是非常重要的。 Linux系统的Shell作为操作系统的外壳,为用户提供了使用操作系统的接口。Shell是命令语言、命令解释程序及程序设计语言的统称,是用户和 Linux内核之间的接口程序。如果把Linux内核想象成一个球体的中心,Shell就是围绕内核的外层。当从Shell或其它程序向Linux传递命令时,内核会做出相应的反应。Shell在Linux系统的作用和MS DOS下的COMMAND.COM和Windows 95/98 的 explorer.exe相似。Shell虽然不是系统核心的一部分,只是系统核心的一个外延,但它能够调用系统内核的大部分功能。因此,可以 Shell是Unux/Linux最重要的实用程序。 Linux中的Shell有多种类型,其中最常用的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。大多数Linux发行版本缺省的Shell是Bourne Again Shell,它是Bourne Shell的扩展,简称bash,与Bourne Shell完全向后兼容,并且在Bourne Shell的基础上增加了很多特性。bash放在/bin/bash中,可以提供如命令补全、命令编辑和命令历史表等功能。它还包含了很多C Shell和Korn Shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。Linux系统中200多个命令中有40个是bash的内部命令,主要包括 exit、less、lp、kill、 cd、pwd、fc、fg等。 -------------------------------------------------------------------------------- Linux必学的60个命令(2)-文件处理命令 Linux 系统信息存放在文件里,文件与普通的公务文件类似。每个文件都有自己的名字、内容、存放地址及其它一些管理信息,如文件的用户、文件的大小等。文件可以是一封信、一个通讯录,或者是程序的源语句、程序的数据,甚至可以包括可执行的程序和其它非正文内容。 Linux文件系统具有良好的结构,系统提供了很多文件处理程序。这里主要介绍常用的文件处理命令。 file 1.作用 件内容判断文件类型,使用权限是所有用户。 2.格式 file通过探测文 file [options] 文件名 3.[options]主要参数 -v:在标准输出后显示版本信息,并且退出。 -z:探测压缩过的文件类型。 -L:允许符合连接。 -f name:从文件namefile中读取要分析的文件名列表。 4.简单明 使用file命令可以知道某个文件究竟是二进制(ELF格式)的可执行文件, 还是Shell Script文件,或者是其它的什么格式。file能识别的文件类型有目录、Shell脚本、英文文本、二进制可执行文件、C语言源文件、文本文件、DOS的可执行文件。 5.应用实例 如果我们看到一个没有后缀的文件grap,可以使用下面命令: $ file grap grap: English text 此时系统显示这是一个英文文本文件。需要明的是,file命令不能探测包括图形、音频、视频等多媒体文件类型。 mkdir 1.作用 mkdir命令的作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。 2.格式 mkdir [options] 目录名 3.[options]主要参数 -m, --mode=模式:设定权限,与chmod类似。 -p, --parents:需要时创建上层目录;如果目录早已存在,则不当作错误。 -v, --verbose:每次创建新目录都显示信息。 --version:显示版本信息后离开。 4.应用实例 在进行目录创建时可以设置目录的权限,此时使用的参数是“-m”。假设要创建的目录名是“tsk”,让所有用户都有rwx(即读、、执行的权限),那么可以使用以下命令: $ mkdir -m 777 tsk grep 1.作用 grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大小(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: \:忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 \:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 。:所有的单个字符。 * :有字符,长度可以为0。 正则表达式是Linux/Unix系统中非常重要的概念。正则表达式(也称为“regex”或“regexp”)是一个可以描述一类字符串的模式(Pattern)。如果一个字符串可以用某个正则表达式来描述,我们就这个字符和该正则表达式匹配(Match)。这和DOS中用户可以使用通配符 “*”代表任意字符类似。在Linux系统上,正则表达式通常被用来查找文本的模式,以及对文本执行“搜索-替换”操作和其它功能。 4.应用实例 查询DNS服务是日常工作之一,这意味着要维护覆盖不同网络的大量IP地址。有时IP地址会超过2000个。如果要查看nnn.nnn网络地址,但是却忘了第二部分中的其余部分,只知到有两个句点,例如nnn nn..。要抽取其中所有nnn.nnn IP地址,使用[0-9 ]\{3 \}\.[0-0\{3\}\。含义是任意数字出现3次,后跟句点,接着是任意数字出现3次,后跟句点。 $grep '[0-9 ]\{3 \}\.[0-0\{3\}\' ipfile 补充明,grep家族还包括fgrep和egrep。fgrep是fix grep,允许查找字符串而不是一个模式;egrep是扩展grep,支持基本及扩展的正则表达式,但不支持\q模式范围的应用及与之相对应的一些更加规范的模式。 dd 1.作用 dd命令用来复制文件,并根据参数将数据转换和格式化。 2.格式 dd [options] 3.[opitions]主要参数 bs=字节:强迫 ibs=及obs=。 cbs=字节:每次转换指定的。 conv=关键字:根据以逗号分隔的关键字表示的方式来转换文件。 count=数目:只复制指定的输入数据。 ibs=字节:每次读取指定的。 if=文件:读取内容,而非标准输入的数据。 obs=字节:每次入指定的。 of=文件:将数据入,而不在标准输出显示。 seek=数目:先略过以obs为单位的指定的输出数据。 skip=数目:先略过以ibs为单位的指定的输入数据。 4.应用实例 dd命令常常用来制作Linux启动盘。先找一个可引导内核,令它的根设备指向正确的根分区,然后使用dd命令将其入软盘: $ rdev vmlinuz /dev/hda $dd if=vmlinuz of=/dev/fd0 上面代码明,使用rdev命令将可引导内核vmlinuz中的根设备指向/dev/hda,请把“hda”换成自己的根分区,接下来用dd命令将该内核入软盘。 find 1.作用 find命令的作用是在目录中搜索文件,它的使用权限是所有用户。 2.格式 find [path][options][expression] path指定目录路径,系统从这里开始沿着目录树向下查找文件。它是一个路径列表,相互用空格分离,如果不path,那么默认为当前目录。 3.主要参数 [options]参数: -depth:使用深度级别的查找过程方式,在某层指定目录中优先查找文件内容。 -maxdepth levels:表示至多查找到开始目录的第level层子目录。level是一个非负数,如果level是0的话表示仅在当前目录中查找。 -mindepth levels:表示至少查找到开始目录的第level层子目录。 -mount:不在其它文件系统(如Msdos、Vfat等)的目录和文件中查找。 -version:打印版本。 [expression]是匹配表达式,是find命令接受的表达式,find命令的所有操作都是针对表达式的。它的参数非常多,这里只介绍一些常用的参数。 —name:支持统配符*和?。 -atime n:搜索在过去n天读取过的文件。 -ctime n:搜索在过去n天修改过的文件。 -group grpoupname:搜索所有组为grpoupname的文件。 -user 用户名:搜索所有文件属主为用户名(ID或名称)的文件。 -size n:搜索文件大小是n个block的文件。 -print:输出搜索结果,并且打印。 4.应用技巧 find命令查找文件的几种方法: (1)根据文件名查找 例如,我们想要查找一个文件名是lilo.conf的文件,可以使用如下命令: find / -name lilo.conf find命令后的“/”表示搜索整个硬盘。 (2)快速查找文件 根据文件名查找文件会遇到一个实际问题,就是要花费相当长的一段时间,特别是大型Linux文件系统和大容量硬盘文件放在很深的子目录中时。如果我们知道了这个文件存放在某个目录中,那么只要在这个目录中往下寻找就能节省很多时间。比如smb.conf文件,从它的文件后缀“.conf”可以判断这是一个配置文件,那么它应该在/etc目录内,此时可以使用下面命令: find /etc -name smb.conf 这样,使用“快速查找文件”方式可以缩短时间。 (3)根据部分文件名查找方法 有时我们知道只某个文件包含有abvd这4个字,那么要查找系统中所有包含有这4个字符的文件可以输入下面命令: find / -name '*abvd*' 输入这个命令以后,Linux系统会将在/目录中查找所有的包含有abvd这4个字符的文件(其中*是通配符),比如abvdrmyz等符合条件的文件都能显示出来。 (4) 使用混合查找方式查找文件 find命令可以使用混合查找的方法,例如,我们想在/etc目录中查找大于500000字节,并且在24小时内修改的某个文件,则可以使用-and (与)把两个查找参数链接起来组合成一个混合的查找方式。 find /etc -size +500000c -and -mtime +1 mv 1.作用 mv命令用来为文件或目录改名,或者将文件由一个目录移入另一个目录中,它的使用权限是所有用户。该命令如同DOS命令中的ren和move的组合。 2.格式 mv[options] 源文件或目录 目标文件或目录 3.[options]主要参数 -i:交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重,要求用户回答“y”或“n”,这样可以避免误覆盖文件。 -f:禁止交互操作。mv操作要覆盖某个已有的目标文件时不给任何指示,指定此参数后i参数将不再起作用。 4.应用实例 (1)将/usr/cbu中的所有文件移到当前目录(用“.”表示)中: $ mv /usr/cbu/ * . (2)将文件cjh.txt重命名为wjz.txt: $ mv cjh.txt wjz.txt  ls 1.作用 ls命令用于显示目录内容,类似DOS下的dir命令,它的使用权限是所有用户。 2.格式 ls [options][filename] 3.options主要参数 -a, --all:不隐藏任何以“.” 字符开始的项目。 -A, --almost-all:列出除了“ . ”及 “.. ”以外的任何项目。 --author:印出每个文件著作者。 -b, --escape:以八进制溢出序列表示不可打印的字符。 --block-size=大小:以指定的字节为单位。 -B, --ignore-backups:不列出任何以 ~ 字符结束的项目。 -f:不进行排序,-aU参数生效,-lst参数失效。 -F, --classify:加上文件类型的指示符号 (*/=@| 其中一个)。 -g:like -l, but do not list owner。 -G, --no-group:inhibit display of group information。 -i, --inode:列出每个文件的inode号。 -I, --ignore=样式:不印出任何符合Shell万用字符的项目。 -k:即--block-size=1K。 -l:使用较长格式列出信息。 -L, --dereference:当显示符号链接的文件信息时,显示符号链接所指示的对象,而并非符号链接本身的信息。 -m:所有项目以逗号分隔,并填满整行行宽。 -n, --numeric-uid-gid:类似-l,但列出UID及GID号。 -N, --literal:列出未经处理的项目名称,例如不特别处理控制字符。 -p, --file-type:加上文件类型的指示符号 (/=@| 其中一个)。 -Q, --quote-name:将项目名称括上双引号。 -r, --reverse:依相反次序排列。 -R, --recursive:同时列出所有子目录层。 -s, --size:以大小为序。 4.应用举例 ls 命令是Linux系统使用频率最多的命令,它的参数也是Linux命令中最多的。使用ls命令时会有几种不同的颜色,其中蓝色表示是目录,绿色表示是可执行文件,红色表示是压缩文件,浅蓝色表示是链接文件,加粗的黑色表示符号链接,灰色表示是其它格式文件。ls最常使用的是ls- l,见图1所示。 图1 使用ls-l命令 文件类型开头是由10个字符构成的字符串。其中第一个字符表示文件类型,它可以是下述类型之一:-(普通文件)、d(目录)、l(符号链接)、b(设备文件)、c(字符设备文件)。后面的9个字符表示文件的访问权限,分为3组,每组3位。第一组表示文件属主的权限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字符分别表示对文件的读(r)、(w)和执行权限(x)。对于目录,表示进入权限。s表示当文件被执行时,把该文件的UID 或GID赋予执行进程的UID(用户ID)或GID(组 ID)。t表示设置标志位(留在内存,不被换出)。如果该文件是目录,那么在该目录中的文件只能被超级用户、目录拥有者或文件属主删除。如果它是可执行文件,那么在该文件执行后,指向其正文段的指针仍留在内存。这样再次执行它时,系统就能更快地装入该文件。接着显示的是文件大小、生成时间、文件或命令名称。 diff 1.作用 diff命令用于两个文件之间的比较,并指出两者的不同,它的使用权限是所有用户。 2.格式 diff [options] 源文件 目标文件 3.[options]主要参数 -a:将所有文件当作文本文件来处理。 -b:忽略空格造成的不同。 -B:忽略空行造成的不同。 -c:使用纲要输出格式。 -H:利用试探法加速对大文件的搜索。 -I:忽略大小的变化。 -n --rcs:输出RCS格式。 cmp 1.作用 cmp(“compare”的缩)命令用来简要指出两个文件是否存在差异,它的使用权限是所有用户。 2.格式 cmp[options] 文件名 3.[options]主要参数 -l: 将字节以十进制的方式输出,并方便将两个文件中不同的以八进制的方式输出。 cat 1.作用 cat(“concatenate”的缩)命令用于连接并显示指定的一个和多个文件的有关信息,它的使用权限是所有用户。 2.格式 cat [options] 文件1 文件2…… 3.[options]主要参数 -n:由第一行开始对所有输出的行数编号。 -b:和-n相似,只不过对于空白行不编号。 -s:当遇到有连续两行以上的空白行时,就代换为一行的空白行。 4.应用举例 (1)cat命令一个最简单的用处是显示文本文件的内容。例如,我们想在命令行看一下README文件的内容,可以使用命令: $ cat README  (2)有时需要将几个文件处理成一个文件,并将这种处理的结果保存到一个单独的输出文件。cat命令在其输入上接受一个或多个文件,并将它们作为一个单独的文件打印到它的输出。例如,把README和INSTALL的文件内容加上行号(空白行不加)之后,将内容附加到一个新文本文件File1 中: $ cat README INSTALL File1 (3)cat还有一个重要的功能就是可以对行进行编号,见图2所示。这种功能对于程序文档的编制,以及法律和科学文档的编制很方便,打印在左边的行号使得参考文档的某一部分变得容易,这些在编程、科学研究、业务报告甚至是立法工作中都是非常重要的。 图2 使用cat命令/etc/named.conf文件进行编号 对行进行编号功能有-b(只能对非空白行进行编号)和-n(可以对所有行进行编号)两个参数: $ cat -b /etc/named.conf ln 1.作用 ln命令用来在文件之间创建链接,它的使用权限是所有用户。 2.格式 ln [options] 源文件 [链接名] 3.参数 -f:链结时先将源文件删除。 -d:允许系统管理者硬链结自己的目录。 -s:进行软链结(Symbolic Link)。 -b:将在链结时会被覆盖或删除的文件进行备份。 链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 硬连接指通过索引节点来进行的连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据及目录的连接才会被释放。也就是,文件才会被真正删除。 与硬连接相对应,Lnux系统中还存在另一种连接,称为符号连接(Symbilc Link),也叫软连接。软链接文件有点类似于Windows的快捷方式。它实际上是特殊文件的一种。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。 动手练习 上面我们介绍了Linux文件处理命令,下面介绍几个实例,大家可以动手练习一下刚才讲过的命令。 1.利用符号链接快速访问关键目录 符号链接是一个非常实用的功能。假设有一些目录或文件需要频繁使用,但由于Linux的文件和目录结构等原因,这个文件或目录在很深的子目录中。比如, Apache Web服务器文档位于系统的/usr/local/httpd/htdocs中,并且不想每次都要从主目录进入这样一个长的路径之中(实际上,这个路径也非常不容易记忆)。 为了解决这个问题,可以在主目录中创建一个符号链接,这样在需要进入该目录时,只需进入这个链接即可。 为了能方便地进入Web服务器(/usr/local/httpd/htdocs)文档所在的目录,在主目录下可以使用以下命令: $ ln -s /usr/local/httpd/htdocs gg 这样每次进入gg目录就可访问Web服务器的文档,以后如果不再访问Web服务器的文档时,删除gg即可,而真正的Web服务器的文档并没有删除。 2.使用dd命令将init.rd格式的root.ram内容导入内存 dd if=/dev/fd0 of=floppy.fd dd if=root.ram of=/dev/ram0 # 3.grep命令系统调用 grep是Linux/Unix中使用最广泛的命令之一,许多Linux系统内部都可以调用它。 (1)如果要查询目录列表中的目录,方法如下: $ ls -l | grep '∧d' (2)如果在一个目录中查询不包含目录的所有文件,方法如下: $ ls -l | grep '∧[∧d]' (3)用find命令调用grep,如所有C源代码中的“Chinput”,方法如下: $find /ZhXwin -name *.c -exec grep -q -s Chinput {} \;-print -------------------------------------------------------------------------------- Linux必学的60个命令(3)-系统管理命令 Linux必学的系统管理命令 对于Linux系统来,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心。熟悉了Linux常用的文件处理命令以后,这一讲介绍对系统和用户进行管理的命令。 df 1.作用 df命令用来检查文件系统的磁盘空间占用情况,使用权限是所有用户。 2.格式 df [options] 3.主要参数 -s:对每个Names参数只给出占用的数据总数。 -a:递归地显示指定目录中各文件及子目录中各文件占用的数据数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘数。 -k:以1024字节为单位列出磁盘空间使用情况。 -x:跳过在不同文件系统上的目录不予统计。 -l:计算所有的文件大小,对硬链接文件则计算多次。 -i:显示inode信息而非使用量。 -h:以容易理解的格式印出文件系统大小,例如136KB、254MB、21GB。 -P:使用POSIX输出格式。 -T:显示文件系统类型。 4.明 df命令被广泛地用来生成文件系统的使用统计数据,它能显示系统中所有的文件系统的信息,包括总容量、可用的空闲空间、目前的安装点等。 超级权限用户使用df命令时会发现这样的情况:某个分区的容量超过了100%。这是因为Linux系统为超级用户保留了10%的空间,由其单独支配。也就是,对于超级用户而言,他所见到的硬盘容量将是110%。这样的安排对于系统管理而言是有好处的,当硬盘被使用的容量接近100%时系统管理员还可以正常工作。 5.应用实例 Linux支持的文件系统非常多,包括JFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、vfat、MSDOS等。使用df -T命令查看磁盘空间时还可以得到文件系统的信息: #df -T 文件系统 类型 容量 已用 可用 已用% 挂载点 /dev/hda7 reiserfs 5.2G 1.6G 3.7G 30% / /dev/hda1 vfat 2.4G 1.6G 827M 66% /windows/C /dev/hda5 vfat 3.0G 1.7G 1.3G 57% /windows/D /dev/hda9 vfat 3.0G 2.4G 566M 82% /windows/E /dev/hda10 NTFS 3.2G 573M 2.6G 18% /windows/F /dev/hda11 vfat 1.6G 1.5G 23M 99% /windows/G 从上面除了可以看到磁盘空间的容量、使用情况外,分区的文件系统类型、挂载点等信息也一览无遗。 top 1.作用 top命令用来显示执行中的程序进程,使用权限是所有用户。 2.格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数 d:指定更新的间隔,以秒计算。 q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。 c:显示进程完整的路径与名称。 S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。 s:安全模式。 i:不显示任何闲置(Idle)或无用(Zombie)的行程。 n:显示更新的次数,完成后将会退出top。 4.明 top命令是Linux系统管理的一个主要命令,通过它可以获得许多信息。这里我们结合图1来明它给出的信息。 图1 top命令的显示 在图1中,第一行表示的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行显示的是所有启动的进程、目前运行的、挂起 (Sleeping)的和无用(Zombie)的进程。第三行显示的是目前CPU的使用情况,包括系统占用的比例、用户使用比例、闲置(Idle)比例。第四行显示物理内存的使用情况,包括总的可以使用的内存、已用内存、空闲内存、缓冲区占用的内存。第五行显示交换分区使用情况,包括总的交换分区、使用的、空闲的和用于高速缓存的大小。第六行显示的项目最多,下面列出了详细解释。 PID(Process ID):进程标示号。 USER:进程所有者的用户名。 PR:进程的优先级别。 NI:进程的优先级别数值。 VIRT:进程占用的虚拟内存值。 RES:进程占用的物理内存值。 SHR:进程使用的共享内存值。 S:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。 %CPU:该进程占用的CPU使用率。 %MEM:该进程占用的物理内存和总内存的百分比。 TIME+:该进程启动后占用的总的CPU时间。 Command:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。 top命令使用过程中,还可以使用一些交互的命令来完成其它参数的功能。这些命令是通过快捷键启动的。 :立刻刷新。 P:根据CPU使用大小进行排序。 T:根据时间、累计时间排序。 q:退出top命令。 m:切换显示内存信息。 t:切换显示进程和CPU状态信息。 c:切换显示命令名称和完整命令行。 M:根据使用内存大小进行排序。 W:将当前设置入~/.toprc文件中。这是top配置文件的推荐方法。 可以看到,top命令是一个功能十分强大的监控系统的工具,对于系统管理员而言尤其重要。但是,它的缺点是会消耗很多系统资源。 5.应用实例 使用top命令可以监视指定用户,缺省情况是监视所有用户的进程。如果想查看指定用户的情况,在终端中按“U”键,然后输入用户名,系统就会切换为指定用户的进程运行界面,见图2所示。 图2 使用top命令监视指定用户 free 1.作用 free命令用来显示内存的使用情况,使用权限是所有用户。 2.格式 free [-b|-k|-m] [-o] [-s delay] [-t] [-V] 3.主要参数 -b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。 -s delay:显示每隔多少秒数来显示一次内存使用情况。 -t:显示内存总和列。 -o:不显示缓冲区调节列。 4.应用实例 free命令是用来查看内存使用情况的主要命令。和top命令相比,它的优点是使用简单,并且只占用很少的系统资源。通过-S参数可以使用free命令不间断地监视有多少内存在使用,这样可以把它当作一个方便实时监控器。 #free -b -s5 使用这个命令后终端会连续不断地报告内存使用情况(以字节为单位),每5秒更新一次。 quota 1.作用 quota命令用来显示磁盘使用情况和限制情况,使用权限超级用户。 2.格式 quota [-g][-u][-v][-p] 用户名 组名 3.参数 -g:显示用户所在组的磁盘使用限制。 -u:显示用户的磁盘使用限制。 -v:显示没有分配空间的文件系统的分配情况。 -p:显示简化信息。 4.应用实例 在企业应用中磁盘配额非常重要,普通用户要学会看懂自己的磁盘使用情况。要查询自己的磁盘配额可以使用下面命令(下例中用户账号是caojh): #quota caojh Disk quotas for user caojh(uid 502): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 58 200000 400000 41 500 1000 以上显示ID号为502的caojh账号,文件个数设置为500~1000个,硬盘空间限制设置为200MB~400MB。一旦磁盘配额要用完时,就需要删除一些垃圾文件或向系统管理员请求追加配额。 at 1.作用 at命令用来在指定时刻执行指定的命令序列。 2.格式 at [-V] [-q x] [-f file] [-m] time 3.主要参数 -V:显示标准错误输出。 -q:许多队列输出。 -f:从文件中读取作业。 -m:执行完作业后发送电子邮件到用户。 time:设定作业执行的时间。time格式有严格的要求,由小时、分钟、日期和时间的偏移量组成,其中日期的格式为MM.DD.YY,MM是分钟,DD是日期,YY是指年份。偏移量的格式为时间+偏移量,单位是minutes、hours和days。 4.应用实例 #at -f data 15:30 +2 days 上面命令表示让系统在两天后的17:30执行文件data中指明的作业。 lp 1.作用 lp是打印文件的命令,使用权限是所有用户。 2.格式 lp [-c][-d][-m][-number][-title][-p] 3.主要参数 -c:先拷贝文件再打印。 -d:打印队列文件。 -m:打印结束后发送电子邮件到用户。 -number:打印份数。 -title:打印标题。 -p:设定打印的优先级别,最高为100。 4.应用实例 (1)使用lp命令打印多个文件 #lp 2 3 4 request id is 11 (3 file(s)) 其中2、3、4分别是文件名;“request id is 11 (3 file(s)) ”表示这是第11个打印命令,依次打印这三个文件。 (2)设定打印优先级别 #lp lp -d LaserJet -p 90 /etc/aliases 通过添加“-p 90”,规定了打印作业的优先级为90。它将在优先级低于90的打印作业之前打印,包括没有设置优先级的作业,缺省优先级是50 useradd 1.作用 useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。 2.格式 useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name 3.主要参数 -c:加上备注文字,备注文字保存在passwd的备注栏中。  -d:指定用户登入时的启始目录。 -D:变更预设值。 -e:指定账号的有效期限,缺省表示永久有效。 -f:指定在密码过期后多少天即关闭该账号。 -g:指定用户所属的群组。 -G:指定用户所属的附加群组。 -m:自动建立用户的登入目录。 -M:不要自动建立用户的登入目录。 -n:取消建立以用户名称为名的群组。 -r:建立系统账号。 -s:指定用户登入后所使用的shell。 -u:指定用户ID号。 4.明 useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。 5.应用实例 建立一个新用户账户,并设置ID: #useradd caojh -u 544 需要明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。 groupadd 1.作用 groupadd命令用于将新组加入系统。 2.格式 groupadd [-g gid] [-o]] [-r] [-f] groupname 3.主要参数 -g gid:指定组ID号。 -o:允许组ID号,不必惟一。 -r:加入组ID号,低于499系统账号。 -f:加入已经有的组时,发展程序退出。 4.应用实例 建立一个新组,并设置组ID加入系统: #groupadd -g 344 cjh 此时在/etc/passwd文件中产生一个组ID(GID)是344的项目。 kill 1.作用 kill命令用来中止一个进程。 2.格式 kill [ -s signal | -p ] [ -a ] pid ... kill -l [ signal ] 3.参数 -s:指定发送的信号。 -p:模拟发送信号。 -l:指定信号的名称列表。 pid:要中止进程的ID号。 Signal:表示信号。 4.明 进程是Linux系统中一个非常重要的概念。Linux是一个多任务的操作系统,系统上经常同时运行着多个进程。我们不关心这些进程究竟是如何分配的,或者是内核如何管理分配时间片的,所关心的是如何去控制这些进程,让它们能够很好地为用户服务。 Linux 操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。交互进程是由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。批处理进程和终端没有联系,是一个进程序列。监控进程(也称系统守护进程)时Linux系统启动时启动的进程,并在后台运行。例如,httpd是著名的 Apache服务器的监控进程。 kill命令的工作原理是,向Linux系统的内核发送一个系统操作信号和某个程序的进程标识号,然后系统内核就可以对进程标识号指定的进程进行操作。比如在top命令中,我们看到系统运行许多进程,有时就需要使用kill中止某些进程来提高系统资源。在讲解安装和登陆命令时,曾提到系统多个虚拟控制台的作用是当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作关闭这个程序。此时使用的命令就是kill,因为kill是大多数Shell内部命令可以直接调用的。 5.应用实例 (1)强行中止(经常使用杀掉)一个进程标识号为324的进程: #kill -9 324 (2)解除Linux系统的死锁 在Linux 中有时会发生这样一种情况:一个程序崩溃,并且处于死锁的状态。此时一般不用重新启动计算机,只需要中止(或者是关闭)这个有问题的程序即可。当 kill处于X-Window界面时,主要的程序(除了崩溃的程序之外)一般都已经正常启动了。此时打开一个终端,在那里中止有问题的程序。比如,如果 Mozilla浏览器程序出现了锁死的情况,可以使用kill命令来中止所有包含有Mozolla浏览器的程序。首先用top命令查处该程序的PID,然后使用kill命令停止这个程序: #kill -SIGKILL XXX 其中,XXX是包含有Mozolla浏览器的程序的进程标识号。 (3)使用命令回收内存 我们知道内存对于系统是非常重要的,回收内存可以提高系统资源。kill命令可以及时地中止一些“越轨”的程序或很长时间没有相应的程序。例如,使用top命令发现一个无用 (Zombie) 的进程,此时可以使用下面命令: #kill -9 XXX 其中,XXX是无用的进程标识号。 然后使用下面命令: #free 此时会发现可用内存容量增加了。 (4)killall命令 Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如: # killall -HUP inetd crontab 1.作用 使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户。 2.格式 crontab [ -u user ] 文件 crontab [ -u user ] { -l | -r | -e } 3.主要参数 -e:执行文字编辑器来设定时程表,内定的文字编辑器是vi。 -r:删除目前的时程表。 -l:列出目前的时程表。 crontab 文件的格式为“M H D m d cmd”。其中,M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。cmd表示要运行的程序,它被送入sh执行,这个Shell只有USER、HOME、SHELL三个环境变量。 4.明 和at命令相比,crontab命令适合完成固定周期的任务。 5.应用实例 设置一个定时、定期的系统提示: [cao @www cao]#crontab -e 此时系统会打开一个vi编辑器。 如果输入以下内容:35 17 * * 5 wall "Tomorrow is Saturday I will go CS",然后存盘退出。这时在/var/spool/cron/目录下会生产一个cao的文件,内容如下: # DO NOT EDIT THIS FILE - edit the master and reinstall. # (/tmp/crontab.2707 installed on Thu Jan 1 22:01:51 2004) # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $) 35 17 * * 5 wall "Tomorrow is Saturday I will play CS " 这样每个星期五17:35系统就会弹出一个终端,提醒星期六可以打打CS了!显示结果见图3所示。 图3 一个定时、定期的系统提示 动手练习 1.联合使用kill和top命令观察系统性能的变化 首先启动一个终端运行top命令,然后再启动一个终端使用kill命令,见图4所示。 图4 观察kill命令对top终端的影响 这时利用上面介绍的kill命令来中止一些程序: #kill SIGKILL XXX 然后再看top命令终端的变化,包括内存容量、CPU使用率、系统负载等。注意,有些进程是不能中止的,不过学习Linux命令时可以试试,看看系统有什么反应。 2.使用at和halt命令定时关机 首先设定关机时间是17:35,输入下面代码: #at 17:35 warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh at>halt `-i -p at> job 6 at 2004-01-01 17:35 此时实际上就已经进入Linux系统的Shell,并且编一个最简单程序:halt -i -p。上面Shell中的文本结束符号表示按“Ctrl+D”组合键关闭命令,提交任务退出Shell。“Job 6 at 2004-01-01 17:35”表示系统接受第6个at命令,在“2004-01-01 17:35”时执行命令:先把所有网络相关的装置停止,关闭系统后关闭电源。 3.用crontab命令实现每天定时的病毒扫描 前面已经介绍了一个简单的crontab命令操作,这里看一些更重要的操作。 (1)建立一个文件,文件名称自己设定,假设为caoproject: #crontab -e (2)文件内容如下: 05 09 * * * antivir 用vi编辑后存盘退出。antivir是一个查杀Linux病毒的软件,当然需要时先安装在系统中。 (3)使用crontab命令添加到任务列表中: #crontab caoproject 这样系统内所有用户在每天的9点05分会自动进行病毒扫描。 4.用kill使修改的配置文件马上生效 Windows用户一般都知道,重要配置文件修改后往往都要重新启动计算机才能使修改生效。而Linux由于采用了模化设计,可以自己根据需要实时设定服务。这里以网络服务inetd为例介绍一些操作技巧。 inetd 是一个监听守护进程,监听与提供互联网服务进程(如rlogin、telnet、ftp、rsh)进行连接的要求,并扩展所需的服务进程。默认情况下, inetd监听的这些daemon均列于/etc /inetd.conf文件中。编辑/etc/inetd.conf文件,可以改变inetd启动服务器守护进程的选项,然后驱使inetd以 SIGHUP(signal 1)向当前的inetd进程发送信号,使inetd重读该文件。这一过程由kill命令来实现。 用vi或其它编辑器修改inetd.conf后,首先使用下面命令: #ps -ef |grep inetd 上面代码表明查询inetd.conf的进程号(PID),这里假设是1426,然后使用下面命令: # kill -1426 inetd 这样配置文件就生效了。 这一讲介绍的系统管理命令都是比较重要的,特别是crontab命令和quota命令使用起来会有一定难度,需要多做一些练习。另外,使用kill命令要注意“-9“这个参数,练习时最好不要运行一些重要的程序。 -------------------------------------------------------------------------------- Linux必学的60个命令(4)-网络操作命令 Linux必学的60个命令:网络操作命令 因为Linux系统是在Internet上起源和发展的,它与生俱来拥有强大的网络功能和丰富的网络应用软件,尤其是TCP/IP网络协议的实现尤为成熟。 Linux的网络命令比较多,其中一些命令像ping、 ftp、telnet、route、netstat等在其它操作系统上也能看到,但也有一些Unix/Linux系统独有的命令,如ifconfig、 finger、mail等。Linux网络操作命令的一个特点是,命令参数选项和功能很多,一个命令往往还可以实现其它命令的功能。 ifconfig 1.作用 ifconfig用于查看和更改网络接口的地址和参数,包括IP地址、网络掩码、广播地址,使用权限是超级用户。 2.格式 ifconfig -interface [options] address 3.主要参数 -interface:指定的网络接口名,如eth0和eth1。 up:激活指定的网络接口卡。 down:关闭指定的网络接口。 broadcast address:设置接口的广播地址。 pointopoint:启用点对点方式。 address:设置指定接口设备的IP地址。 netmask address:设置接口的子网掩码。 4.应用明 ifconfig是用来设置和配置网卡的命令行工具。为了手工配置网络,这是一个必须掌握的命令。使用该命令的好处是无须重新启动机器。要赋给eth0接口IP地址207.164.186.2,并且马上激活它,使用下面命令: #fconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127 该命令的作用是设置网卡eth0的IP地址、网络掩码和网络的本地广播地址。若运行不带任何参数的ifconfig命令,这个命令将显示机器所有激活接口的信息。带有“-a”参数的命令则显示所有接口的信息,包括没有激活的接口。注意,用ifconfig命令配置的网络设备参数,机器重新启动以后将会丢失。 如果要暂停某个网络接口的工作,可以使用down参数: #ifconfig eth0 down ip 1.作用 ip是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具,例如ifconfig、route等,使用权限为超级用户。几乎所有的Linux发行版本都支持该命令。 2.格式 ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]] 3.主要参数 OPTIONS是修改ip行为或改变其输出的选项。所有的选项都是以-字符开头,分为长、短两种形式。目前,ip支持如表1所示选项。 OBJECT是要管理者获取信息的对象。目前ip认识的对象见表2所示。 表1 ip支持的选项 -V,-Version 打印ip的版本并退出。 -s,-stats,-statistics 输出更为详尽的信息。如果这个选项出现两次或多次,则输出的信息将更为详尽。 -f,-family 这个选项后面接协议种类,包括inet、inet6或link,强调使用的协议种类。如果没有足够的信息告诉ip使用的协议种类,ip就会使用默认值inet或any。link比较特殊,它表示不涉及任何网络协议。 -4 是-family inet的简。 -6 是-family inet6的简。 -0 是-family link的简。 -o,-oneline 对每行记录都使用单行输出,回行用字符代替。如果需要使用wc、grep等工具处理ip的输出,则会用到这个选项。 -r,-resolve 查询域名解析系统,用获得的主机名代替主机IP地址 COMMAND 设置针对指定对象执行的操作,它和对象的类型有关。一般情况下,ip支持对象的增加(add)、删除(delete)和展示(show或list)。有些对象不支持这些操作,或者有其它的一些命令。对于所有的对象,用户可以使用help命令获得帮助。这个命令会列出这个对象支持的命令和参数的语法。如果没有指定对象的操作命令,ip会使用默认的命令。一般情况下,默认命令是list,如果对象不能列出,就会执行help命令。 ARGUMENTS 是命令的一些参数,它们倚赖于对象和命令。ip支持两种类型的参数:flag和parameter。flag由一个关键词组成;parameter由一个关键词加一个数值组成。为了方便,每个命令都有一个可以忽略的默认参数。例如,参数dev是ip link命令的默认参数,因此ip link ls eth0等于ip link ls dev eth0。我们将在后面的详细介绍每个命令的使用,命令的默认参数将使用default标出。 4.应用实例 添加IP地址192.168.2.2/24到eth0网卡上: #ip addr add 192.168.1.1/24 dev eth0 丢弃源地址属于192.168.2.0/24网络的所有数据报: #ip rule add from 192.168.2.0/24 prio 32777 reject ping 1.作用 ping检测主机网络接口状态,使用权限是所有用户。 2.格式 ping [-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址 3.主要参数 -d:使用Socket的SO_DEBUG功能。 -c:设置完成要求回应的次数。 -f:极限检测。 -i:指定收发信息的间隔秒数。 -I:网络界面使用指定的网络界面送出数据包。 -l:前置载入,设置在送出要求信息之前,先行发出的数据包。 -n:只输出数值。 -p:设置填满数据包的范本样式。 -q:不显示指令执行过程,开头和结尾的相关信息除外。 -r:忽略普通的Routing Table,直接将数据包送到远端主机上。 -R:记录路由过程。 -s:设置数据包的大小。 -t:设置存活数值TTL的大小。 -v:详细显示指令的执行过程。 ping 命令是使用最多的网络指令,通常我们使用它检测网络是否连通,它使用ICMP协议。但是有时会有这样的情况,我们可以浏览器查看一个网页,但是却无法 ping通,这是因为一些网站处于安全考虑安装了防火墙。另外,也可以在自己计算机上试一试,通过下面的方法使系统对ping没有反应: # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all netstat 1.作用 检查整个Linux网络状态。 2.格式 netstat [-acCeFghilMnNoprstuvVwx][-A][--ip] 3.主要参数 -a--all:显示所有连线中的Socket。 -A:列出该网络类型连线中的IP相关地址和网络类型。 -c--continuous:持续列出网络状态。 -C--cache:显示路由器配置的快取信息。 -e--extend:显示网络其它相关信息。 -F--fib:显示FIB。 -g--groups:显示多重广播功能群组组员名单。 -h--help:在线帮助。 -i--interfaces:显示网络界面信息表单。 -l--listening:显示监控中的服务器的Socket。 -M--masquerade:显示伪装的网络连线。 -n--numeric:直接使用IP地址,而不通过域名服务器。 -N--netlink--symbolic:显示网络硬件外围设备的符号连接名称。 -o--timers:显示计时器。 -p--programs:显示正在使用Socket的程序识别码和程序名称。 -r--route:显示Routing Table。 -s--statistice:显示网络工作信息统计表。 -t--tcp:显示TCP传输协议的连线状况。 -u--udp:显示UDP传输协议的连线状况。 -v--verbose:显示指令执行过程。 -V--version:显示版本信息。 -w--raw:显示RAW传输协议的连线状况。 -x--unix:和指定“-A unix”参数相同。 --ip--inet:和指定“-A inet”参数相同。 4.应用实例 netstat 主要用于Linux察看自身的网络状况,如开启的端口、在为哪些用户服务,以及服务的状态等。此外,它还显示系统路由表、网络接口状态等。可以,它是一个综合性的网络状态的察看工具。在默认情况下,netstat只显示已建立连接的端口。如果要显示处于监听状态的所有端口,使用-a参数即可: #netstat -a Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:32768 *:* LISTEN tcp 0 0 *:32769 *:* LISTEN tcp 0 0 *:nfs *:* LISTEN tcp 0 0 *:32770 *:* LISTEN tcp 0 0 *:868 *:* LISTEN tcp 0 0 *:617 *:* LISTEN tcp 0 0 *:mysql *:* LISTEN tcp 0 0 *:netbios-ssn *:* LISTEN tcp 0 0 *:sunrpc *:* LISTEN tcp 0 0 *:10000 *:* LISTEN tcp 0 0 *:http *:* LISTEN ...... 上面显示出,这台主机同时提供HTTP、FTP、NFS、MySQL等服务。 telnet 1.作用 telnet表示开启终端机阶段作业,并登入远端主机。telnet是一个Linux命令,同时也是一个协议(远程登陆协议)。 2.格式 telnet [-8acdEfFKLrx][-b][-e][-k][-l][-n][-S][-X][主机名称IP地址] 3.主要参数 -8:允许使用8位字符资料,包括输入与输出。 -a:尝试自动登入远端系统。 -b:使用别名指定远端主机名称。 -c:不读取用户专属目录里的.telnetrc文件。 -d:启动排错模式。 -e:设置脱离字符。 -E:滤除脱离字符。 -f:此参数的效果和指定“-F”参数相同。 -F:使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。 -k:使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。 -K:不自动登入远端主机。 -l:指定要登入远端主机的用户名称。 -L:允许输出8位字符资料。 -n:指定文件记录相关信息。 -r:使用类似rlogin指令的用户界面。 -S:服务类型,设置telnet连线所需的IP TOS信息。 -x:假设主机有支持数据加密的功能,就使用它。 -X:关闭指定的认证形态。 4.应用明 用户使用telnet命令可以进行远程登录,并在远程计算机之间进行通信。用户通过网络在远程计算机上登录,就像登录到本地机上执行命令一样。为了通过 telnet登录到远程计算机上,必须知道远程机上的合法用户名和口令。虽然有些系统确实为远程用户提供登录功能,但出于对安全的考虑,要限制来宾的操作权限,因此,这种情况下能使用的功能是很少的。 t
RFC1 主机软件 RFC2 主机软件 RFC3 文档规范 RFC4 网络时间表 RFC6 与 Bob Kahn 会话 RFC10 文档规范 RFC13 零文本长度的EOF信息 RFC16 M.I.T RFC18 IMP-IMP和主机-主机控制联接 RFC19 可用来降低有限交换节点阻塞的两条协议性的建议 RFC20 用于网络交换的 ASCII 格式 RFC21 网络会议 RFC22 主机-主机控制信息格式 RFC23 多重传送的调节信息 RFC24 文档规范 RFC25 不使用高的连接号 RFC27 文档规范 RFC28 时间标准 RFC29 响应 RFC 28 RFC30 文档规范 RFC32 关于SRI所提议的实时时钟的一些想法 RFC34 关于ARC时钟的一些初步记录摘要 RFC35 网络会议 RFC36 协议注解 RFC37 网络会议结尾等 RFC38 NWG/RFC #36 网络协议的注解 RFC40 关于未来协议的更多注解 RFC41 IMP-IMP 通讯信息 RFC42 信息数据类型 RFC43 被提议的会议 RFC45 关于未来协议的更多注解 RFC53 官方协议机构 RFC58 逻辑信息同步 RFC60 简单的 NCP 协议 RFC63 迟来的网络会议报告 RFC66 NIC - 第三级别的想法和其它噪音 RFC69 提议改变 主机/IMP 规范来消除标记 RFC71 输入错误后的再分配 RFC72 建议改变网络协议延期执行 RFC73 响应 NWG/RFC 67 RFC75 网络会议 RFC78 NCP状态报告:UCSB/RAND RFC79 圆木协议错误 RFC81 涉及信息的请求 RFC84 NWG/RFC的1-80列表 RFC85 网络工作组会议 RFC90 CCN 作为一种网络服务中心 RFC99 网络会议 RFC101 对1971年2月17日伊利诺斯州的Urbana的网络工作组会议的注释 RFC102 主机-主机 协议故障清除委员会的明 RFC103 中断键的执行 RFC104 连接 191 RFC105 通过 UCSB 进行远程登录和远程输出返回的网络明书 RFC106 用户/服务器 站点协议的网络主机问卷 RFC107 主机-主机 协议故障清除委员会的明 RFC108 1971年2月17-19日在 Urbana 举行的 NWG 会议的人员列表 RFC124 在 RFC 107 中有印刷错误 RFC132 RFC 107 的排版错误 RFC148 RFC 123 的注释 RFC149 最好的铺设计划 RFC154 风格显示 RFC156 伊利诺斯州站点的状态: 响应 RFC 116 RFC179 连接的数字分配 RFC185 NIC 分发手册 RFC188 数据管理会议公告 RFC198 站点证明-林肯实验室 360/67 RFC204 利用报路 RFC218 改变 IMP 状态报告设备 RFC228 澄清 RFC232 网络图形会议延缓 RFC245 预定网络工作组会议 RFC246 网络图形会议 RFC256 IMPSYS 变更通知 RFC276 NIC过程 RFC285 网络图形 RFC324 RJE 协议会议 RFC335 新界面 - IMP/360 RFC348 放弃过程 RFC404 文件迁移协议的注释 RFC405 给 TIP 用户的第二封信 RFC456 UCSB 的数据重置服务 RFC457 FTP 的服务器与服务器交互 RFC496 IMP/TIP 内存更新时间表(修订版 2) RFC516 丢失消息的检测 RFC591 在 NVT ASCII UCSB和在线系统之间的实验输入映象 RFC621 “注意圣诞节的时候要把长袜挂在烟囱下面” RFC628 更深的数据语言的设计观念 RFC634 最近的网络图 RFC637 SU-DSL网络地址的更改 RFC677 双重数据库的维护 RFC692 对于IMP/HOST 协议的改动的注释 (RFCS 687 AND 690) RFC697 FTP的CWD命令 RFC698 Telnet扩展ASCII选项 RFC763 角色邮箱 RFC775 面向目录的 FTP 命令 RFC779 Telnet发送-位置选项 RFC792 Internet 控制信息协议 RFC797 位图文件格式 RFC821 简单邮件传输协议 RFC826 以太网地址转换协议或转换网络协议地址 RFC827 Exterior 网关 协议 (EGP) RFC854 Telnet协议明书 RFC855 Telnet选项明书 RFC856 Telnet二进制传输 RFC857 Telnet回声选项 RFC858 Telnet抑制前进选项 RFC859 Telnet状态选项 RFC860 Telnet定时标记选项 RFC861 Telnet扩展选项列表选项 RFC862 回声协议 RFC863 废除协议 RFC864 字符产生协议 RFC865 白天协议的引用 RFC866 激活用户 RFC867 白天协议 RFC868 时间协议 RFC872 局域网上的TCP协议 RFC877 IP 数据包通过公共数据网络的传输标准 RFC888 STUB Exterior Gateway Protocol RFC890 外部网关协议执行表 RFC894 IP 数据包通过以太网网络传输标准 RFC895 IP 数据包通过试验性以太网网络的传输标准 RFC896 在IPTCP internet网络中的拥塞控制 RFC903 反向地址转换协议 RFC911 BERKELEY UNIX 4.2下的EGP网关 RFC917 因特网子网 RFC918 邮局协议 RFC925 多局域网地址解决 RFC930 Telnet终端类型选项 RFC932 子网地址分配方案 RFC937 邮局协议( 版本 2) RFC948 IP 数据包通过IEEE 802.3 网络传输的两种方法 RFC949 FTP 未公开的独特命令 RFC951 引导协议(BOOTP) RFC955 朝向一个处理过程应用的传输服务 RFC962 TCP-4 的最初 RFC968 “这是开动前的黑暗” RFC974 邮件路由与域名系统 RFC975 自治联邦 RFC976 UUCP 邮件互换格式标准 RFC985 Internet 网关要求 - 起草 RFC988 主机扩展用于IP多点传送 RFC1050 RPC远程步骤呼叫协议明书 RFC1055 在串行线路上传输IP数据报的非标准协议 RFC1057 RPC远程步骤呼叫协议明书版本 2 RFC1073 Telnet窗口大小选项 RFC1075 远距离矢量多播选路协议 RFC1088 IP 数据包传输通过NetBIOS网络的标准 RFC1090 SMTP在X.25 RFC1091 TelnetTELNET终端类型选项 RFC1094 NFS网络文件系统协议明书 RFC1096 Telnet X 显示定位选项 RFC1097 Telnet潜意识-信息选项 RFC1112 主机扩展用于IP多点传送 RFC1113 Internet电子邮件秘密增强第一部分- 信息加密和身份验证步骤 RFC1131 OSPF规范 RFC1132 802.2分组在IPX网络上传输的标准 RFC1134 +PPP协议:关于在点到点链路上进行多协议包传送的建议 RFC1142 OSI IS-IS 域内路由协议 RFC1144 低速串行链路上的TCPIP头部压缩 RFC1155 基于TCPIP网络的管理结构和标记 RFC1166 Internet数字 RFC1180 TCPIP指南 RFC1191 路径MTU探索 RFC1215 为使用SNMP定义Trap的惯例 RFC1239 试验管理系统库(MIB)到标准管理系统库(MIB)的重分配 RFC1242 基准术语用于网络互连设备 RFC1258 BSD 的远程登录 RFC1287 未来的Internet 体系结构 RFC1288 Finger用户信息协议 RFC1298 基于IPX协议的SNMP RFC1321 MD5 信息-摘要算 RFC1332 PPP Internet 协议控制协议 (IPCP) RFC1333 PPP 链接质量监控 RFC1355 网络中心数据库的保密和准确性问题 RFC1365 一种IP地址扩展提议 RFC1370 OSPF适用范围声明 RFC1387 RIP(版本2)协议分析 RFC1388 RIP协议版本2 RFC1393 Traceroute使用IP选项 RFC1397 在边界网关协议(Border Gateway Protocol)版本2 RFC1408 Telnet环境选项 RFC1413 鉴定协议 RFC1418 SNMP优于OSI RFC1420 SNMP优于IPX RFC1426 SMTP服务扩展用于8bit-多用途网际邮件扩充协议(MIME)传输 RFC1428 Internet邮件从Just-Send-8到8bit-SMTPMIME的转换 RFC1433 直接ARP RFC1445 简单网络管理协议(SNMPv2)版本 2的管理模式 RFC1454 下一代IP提议的比较 RFC1461 通过X.25多协议互连SNMP管理系统库(MIB)扩展 RFC1469 通过令牌-环局域网的IP多点传送 RFC1483 通过ATM适应层5的多协议封装 RFC1558 LDAP研究过滤器的字符串表达 RFC1571 Telnet环境选项互用性问题 RFC1590 媒体类型注册过程 RFC1591 域名系统的结构和授权 RFC1597 私有Internet的地址分配 RFC1605 SONET to Sonnet翻译 RFC1606 用IP版本9的历史观 RFC1611 DNS服务器MIB扩展 RFC1612 DNS解析器MIB扩展 RFC1618 ISDN上的PPP(点对点)协议 RFC1628 UPS 管理信息基础 RFC1633 Internet 体系结构中的综合服务概述 RFC1635 怎样使用匿名FTP RFC1636 IAB工厂关于在Internet体系结构的安全报告 -2月8-10号, 1994 RFC1643 以太网-类似界面类型的管理对象的定义 RFC1658 字符流设备使用SMIv2管理对象的定义 RFC1661 点对点协议(PPP) RFC1671 向IPng 过渡和其他考虑的白皮书 RFC1690 Internet工程与计划组(IEPG)介绍 RFC1691 康奈尔大学数字图书馆文档体系结构 RFC1696 用SMIv2定义的调制解调器MIB RFC1713 DNS调试工具 RFC1715 地址分配效率比率H RFC1723 路由信息协议(版本2) RFC1724 RIP 版本 2 管理系统库(MIB) 扩展 RFC1738 统一资源定位器(URL) RFC1752 推荐IP下一代协议 RFC1769 简单网络时间协议(SNTP) RFC1771 边界网关协议版本4(BGP-4) RFC1776 地址是信息 RFC1777 轻量级目录访问协议 RFC1787 在多供应Internet上的软件路由 RFC1796 不是所有RFCs是标准 RFC1797 A级子网实验 RFC1810 报告MD5性能 RFC1818 最好最新的实践 RFC1822 使用具备Photuris技术的指定IBM专利的权利的授予 RFC1823 LDAP 应用程序界面 RFC1827 IP 密码安全有效载荷 (ESP) RFC1828 使用键控MD5进行IP鉴别 RFC1860 IPv4变量长度子网表 RFC1867 HTML中基于表单的文件上传 RFC1869 SMTP服务扩展 RFC1878 变量长度子网表格用于IPv4 RFC1883 Internet协议,版本6(IPv6)明书 RFC1901 基于社区的SNMPv2介绍 RFC1904 简单网络管理协议(SNMPv2)版本 2的一致声明 RFC1918 个人Internets的地址分配 RFC1928 SOCKS V5的用户名/密码鉴定 RFC1930 自治系统(AS)创建,选择,和注册的指导方针 RFC1939 邮局办公协议-版本3 RFC1942 HTML表格 RFC1945 超文本传输协议--HTTP/1.0 RFC1957 邮局协议(POP3)执行的一些观察 RFC1962 PPP压缩控制协议 (CCP) RFC1977 PPP BSD 压缩协议 RFC1979 PPP压缩协议 RFC1981 IP 版本 6的路径MTU探索 RFC1982 序列号算法 RFC1988 有条件地授予权利给特殊的HP专利于连接Internet工程特遣队的Internet-标准网络管理框架中 RFC1993 PPP G和alf FZA 压缩 协议 RFC1994 PPP挑战握手身份验证协议 (CHAP) RFC1997 BGP 组属性 RFC1998 BGP 社区属性在多本地路由中的应用 RFC2002 IP移动性支持 RFC2003 在IP内封装IP RFC2004 IP最小封装 RFC2005 IP移动性的适用性陈述 RFC2011 SNMPv2 管理信息基础用于Internet 协议使用SMIv2 RFC2012 SNMPv2 管理信息基础 用于传输控制协议使用SMIv2 RFC2013 有关采用SMIv2用户数据报协议的SNMPv2管理信息数据库 RFC2015 多用途网际邮件扩充协议(MIME)安全具有相当好的保密性(PGP) RFC2021 远程网络监控管理信息基础 版本 2使用SMIv2 RFC2025 简单公共密钥GSS-API机制(SPKM) RFC2040 RC5, RC5-CBC, RC5-CBC-Pad,和 RC5-CTS算法 RFC2042 注册新BGP属性类型 RFC2046 多用途Internet邮件扩展(多用途网际邮件扩充协议(MIME))第二部分:媒体类型 RFC2053 AM (美国)域 RFC2078 通用安全服务应用接口(GSS-API) V2 RFC2079 X.500 属性类型和对象类别去掌握统一资源定位器(URIs)的定义 RFC2085 具有重放预防的HMAC-MD5 IP 身份验证 RFC2088 IMAP4非同步字符 RFC2095 简单挑战/回应的IMAP/POP授权扩展 RFC2096 IP面向表格管理系统库(MIB) RFC2101 IPv4 今天地址行为 RFC2104 HMAC:键入-散列法用于信息身份验证 RFC2105 CCisco 系统的标签交换体系结构纵览 RFC2113 IP路由器警告选项 RFC2118 微软点对点压缩(MPPC)协议 RFC2119 关键字用于使用在RFCs指出要求水平 RFC2128 拨号控制MIB(SMIv2) RFC2144 CAST-128 加密算法 RFC2147 TCP和UDP通过IPv6 Jumbograms RFC2198 多余音频数据的RTP有效载荷 RFC2208 资源预留协议(RSVP)——版本1 适用性声明 关于配置的一些指导 RFC2212 有保证的质量服务明书 RFC2217 TelnetCom端口控制选项 RFC2221 IMAP4 登陆参考 RFC2228 FTP 安全扩展 RFC2234 语法明书的扩充BNF:ABNF RFC2236 Internet组管理协议,版本2 RFC2241 Novell目录服务的DHCP选项 RFC2245 匿名SASL机制 RFC2260 可升级支持用于多目录多供应者的连通 RFC2279 UTF-8,ISO 10646的一种转换格式 RFC2281 Cisco热备份路由协议(HSRP) RFC2283 BGP-4的多协议扩展 RFC2284 PPP可扩展认证协议 RFC2289 一种一次性密码系统 RFC2296 HTTP 远程变量选择算法--RVSA/1.0 RFC2313 PKCS#1:RSA加密 版本1.5 RFC2330 IP 执行规则的管理 RFC2343 应用于捆绑的MPEG的RTP有效载荷的格式 RFC2344 移动IP反向隧道 RFC2367 PF_KEY键管理 API,版本 2 RFC2372 处理Internet协议(TIP)-要求和补充信息 RFC2373 IPv6寻址体系结构 RFC2374 IPv6 可集聚全球单播地址格式 RFC2379 RSVP通过ATM执行的指导方针 RFC2384 POP URL 方案 RFC2393 IP有效载荷压缩协议(IPComp) RFC2394 IP有效载荷压缩使用DEFLATE RFC2401 Internet 协议的安全体系结构 RFC2403 在ESP和AH中使用HMAC-MD5-96 RFC2404 在ESP和AH中使用HMAC-SHA-1-96 RFC2406 IP 封装安全有效载荷 (ESP) RFC2407 Internet IP 用于解释ISAKMP的安全域 RFC2408 Internet 安全关联和键管理协议 (ISAKMP) RFC2409 Internet密钥交换(IKE) RFC2410 NULL加密算法及其在IPsec协议中的应用 RFC2411 IP安全文件指南 RFC2412 OAKLEY 键决定协议 RFC2435 针对JPEG压缩视频的RTP荷载格式 RFC2449 POP3 扩展机制 RFC2451 ESP CBC-模式密码算法 RFC2459 Internet X.509 公钥基础设施:证书和CRL简介 RFC2460 Internet协议,版本6(IPv6)明书 RFC2463 针对因特网协议第六版(Ipv6)的因特网控制报文协议(ICMPv6)规范 RFC2466 IP 版本6 管理信息基础:ICMPv6组 RFC2471 IPv6检测地址分配 RFC2474 IPv4与IPv6包头中差分服务字段(DS Field)的定义 RFC2475 分类业务的体系结构 RFC2492 IPv6 通过ATM网络 RFC2495 有关 DS1,E1,DS2,E2接口类型的管理部件的定义 RFC2508 低速串行链路下IP/UDP/RTP数据包头的压缩 RFC2511 Internet X.509认证请求消息格式 RFC2516 在以太网上传输PPP的方法(PPPoE) RFC2526 IPv6保留的子网任意传送地址 RFC2541 DNS 安全操作考虑 RFC2547 BGP/MPLS VPNs RFC2554 SMTP服务认证扩展 RFC2560 x.509因特网公钥基础设施在线证书状态协议——OCSP RFC2570 标准互联网络管理框架第三版介绍 RFC2577 FTP 安全考虑 RFC2581 TCP拥塞控制 RFC2582 TCP的快速恢复算法NewReno修正 RFC2585 Internet X.509 公共键底部结构操作协议: FTP和HTTP RFC2597 确定的面向PHB组 RFC2598 面向加速PHB RFC2618 RADIUS 身份验证客户端管理系统库(MIB) RFC2629 用XML I-Ds 和 RFC文档 RFC2633 S/多用途网际邮件扩充协议(MIME) 版本 3 信息明书 RFC2644 更改直接广播在路由器上的缺省值 RFC2669 DOCSIS 电缆设备管理系统库(MIB) 电缆设备管理信息基础用于DOCSIS 适应性电缆调制解调器和电缆调制解调器中断系统 RFC2670 音频频率(RF)界面管理信息基础用于MCNS/DOCSIS适应性RF界面 RFC2685 虚拟专用网标志符 RFC2702 基于MPLS的流量工程要求 RFC2706 ECML v1:电子商务字段名 RFC2713 LDAP(轻型目录存取协议)目录中JAVATM对象的表征模式 RFC2714 LDAP(轻型目录存取协议)目录中的CORBA对象参考方案 RFC2731 Dublin核心元数据在HTML上的编码 RFC2732 文本IPv6地址在URL上的格式 RFC2733 RTP有效载荷格式用于普通正向错误更正 RFC2736 RTP有效载荷格式明书作者的指导方针 RFC2754 RPS IANA的发布 RFC2756 超文本缓存协议(HTCP/0.0) RFC2764 IP VPN的框架体系 RFC2773 使用KEA和SKIPJACK加密 RFC2774 HTTP 扩展框架 RFC2781 UTF-16,ISO 10646的一种编码 RFC2784 通用路由封装(GRE) RFC2788 网络服务监视MIB RFC2793 用于文本交谈的RTP负载 RFC2796 BGP路由映象 RFC2809 通过RADIUS的L2TP强制通道的执行 RFC2810 Internet 延迟交谈:体系结构 RFC2811 Internet延迟交谈:通道管理 RFC2813 Internet 延迟交谈:服务器协议 RFC2817 在HTTP/1.1中升级到TLS RFC2818 TLS之上的HTTP RFC2824 呼叫过程语言框架和要求 RFC2825 复杂网络:I18N的发布,域名,和其它Internet协议 RFC2829 LDAP的身份验证方法 RFC2830 轻量级目录访问协议(v3): 传输层安全扩展 RFC2833 用于DTMF数字信号、电话音和电话信号的RTP负载格式 RFC2854 text/html 媒体类型 RFC2855 IEEE 1394的DHCP RFC2861 TCP 拥塞窗口检验 RFC2862 用于实时指针的RTP负载格式 RFC2866 RADIUS(远程用户拨号认证系统)记帐协议 RFC2867 RADIUS 账目管理修改用于通道协议支持 RFC2868 RADIUS 属性用于协议支持 RFC2869 RADIUS 扩展 RFC2871 一个IP电话路由框架 RFC2873 在Ipv4优先域中的TCP过程 RFC2874 支持IPv6地址集合和重编号的DNS 扩展 RFC2882 网络访问服务要求: 扩展范围实践 RFC2887 可靠的多点传送设计空间用于大的数据传送 RFC2889 基准方法论用于局域网交换设备 RFC2890 GRE中Key和SequenceNumber扩展 RFC2893 IPv6 主机和软件路由器转换机制 RFC2898 PKCS #5: 基于密码的密码系统明书 版本 2.0. B RFC2906 AAA 授权要求 RFC2914 拥塞控制原理 RFC2917 核心 MPLS IP VPN 体系结构 RFC2918 BGP-4(边界网关协议)的路由刷新功能 RFC2920 SMTP 针对命令流水线的服务扩展 RFC2923 TCP的路径MTU发现问题 RFC2932 IPv4 多点传送路由管理系统库(MIB) RFC2935 Internet开放贸易协议(IOTP)HTTP 补充 RFC2945 SRP身份验证和键交换系统 RFC2946 Telnet 数据加密选项 RFC2959 实时传输协议管理信息库 RFC2964 超文本传输协议(HTTP)状态管理的应用 RFC2971 Internet信息访问协议(IMAP4)的标识符扩展 RFC2976 SIP信息方法 RFC2983 有区别的协议和通道 RFC2987 字符集注册和语言媒体特征标签 RFC2988 计算TCP重传时间的定时器 RFC2991 多路径分发在Unicast上和多点传送下一路程段选择 RFC2992 等值多-路径算法的分析 RFC2994 MISTY1加密算法的描述 RFC3001 对象标识符的URN名称空间 RFC3003 audio/mpeg 媒体类型 RFC3005 IETF 讨论列表许可证 RFC3007 安全的域名系统动态更新 RFC3009 奇偶向前纠错 MIME类型的注册 RFC3014 提示日志 管理系统库(MIB) RFC3016 用于MPEG-4视听流的RTP负载格式 RFC3018 统一内存空间协议明书 RFC3019 IP 版本 6 管理信息基础用于多点传送听众探索协议 RFC3021 在Ipv4点对点连接中使用31位前缀 RFC3022 传统IP网络地址转换(传统NAT) RFC3028 滤网:一种邮件过滤语言 RFC3029 Internet X.509 公共键下部构造数据有效性和认证服务协议 RFC3032 MPLS标记栈编码 RFC3033 信息域和协议标识符在Q.2941普通标识符和Q.2957用户对用户发送信号中的分配用于Internet 协议 RFC3034 标签转换在帧中继网络明书中的使用 RFC3035 MPLS使用LD和ATM VC交换 RFC3037 LDP 的适用性 RFC3038 VCID提示通过ATM链接用于LDP RFC3040 Internet网复制和缓存分类法 RFC3042 使用有限传输增强TCP的丢失恢复能力 RFC3043 Network Solutions的个人网络名(PIN): 一种个人和组织的统一资源名域 RFC3044 在ISSN-URN命名空间中用ISSN作为URN RFC3046 DHCP 中继代理信息选项 RFC3048 可靠的多点传输建立阻止一对多大数据传送 RFC3051 IP有效载荷压缩使用ITU-T V.44打包方法 RFC3055 PINT服务体系结构管理信息基础. RFC3058 IDEA加密算法在CMS上的使用 RFC3059 服务定位协议的属性列表扩展 RFC3061 对象标识符的一种URN姓名空间 RFC3062 LDAP口令修改扩展操作 RFC3066 语言鉴定标签 RFC3067 TERENA'S事件对象描述和转换格式要求 RFC3069 VLAN聚合实现IP地址有效分配 RFC3070 基于帧中继的第二层隧道协议 RFC3072 结构化的数据改变格式 (SDXF) RFC3074 DHC加载平衡算法 RFC3078 微软点对点加密(MPPE)协议 RFC3081 将区扩展交换协议(BEEP)核心映射到传输控制协议(TCP) RFC3082 服务定位协议(SLP)的预研报告 RFC3083 基线私人界面管理信息基础(MIB)用于兼容Cable Modems和Cable Modem终端系统的DOCSIS RFC3085 新闻型标记语言(NewsML)资源的URN名字空间 RFC3090 域名系统在区域状况下的安全扩展声明 RFC3091 改进数字产生协议 RFC3093 防火墙增进协议 (FEP)

70,026

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧