[书摘] Microsoft Windows Server 2003 TCP/IP 协议和服务技术参考 之 ARP (1)

你还能看见几颗星星 2004-10-12 12:26:30
前一段时间买了一本书,感觉非常不错,其中有很多我一直想知道但是又无处查找的资料,买书当天就想写一个书摘来和大家一起分享,给同样迷茫的朋友提供帮助,但是由于同事离职、工作重心调整等诸多因素,拖了很久到现在……

废话少说,介绍一下这本书

书名:Microsoft Windows Server 2003 TCP/IP 协议和服务技术参考
出版社:清华大学出版社
定价:68元

目录:
第1部分 网络接口层
第1章 局域网(LAN)技术
第2章 广域网技术
第3章 地址解析协议(ARP)
第4章 点对点协议(PPP)
第2部分 网络层协议
第5章 网络协议(IP)基础
第6章 IP地址分配
第7章 IP路由选择
第8章 网络控制消息协议(ICMP)
第9章 Internet组管理协议(IGMP)
第10章 Internet协议版本6(IPv6)
第3部分 传输层协议
第11章 用户数据报协议
第12章 传输控制协议基础
第13章 传输控制协议连接
第14章 传输控制协议数据流
第15章 传输控制协议的重传和超时
第四部分 应用层协议服务
第16章 动态主机配置协议服务器服务
第17章 域名系统
第18章 Windows Internet名称服务
第19章 文件和打印机共享
第20章 RADIUS和Internet验证服务
第21章 Internet信息服务和Internet协议
第22章 Internet协议的安全性
第23章 虚拟专用网

由于我对arp协议比较熟悉,所以先给大家摘录一些arp协议相关的东东。

1、关于arp缓存表项的生存期(有效时间)
在默认情况下,Windows Server 2003家族和Windows XP中,ARP缓存中的表项仅存储2分钟。如果一个ARP缓存表项在2分钟内被用到,则其期限再延长2分钟,直到最大生命期限10分钟为止。超过10分钟的最大期限后,ARP缓存表项将被移出,并且通过另外一个ARP请求——ARP回应交换来获得新的对应关系。ARP缓存表项的存放时间可以通过改变ArpCacheLife和ArpCacheMinReferencedLife的注册表值来重新设置。

ArpCacheLife
Location: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Data Type: REG_DWORD
Valid range: 0-0xFFFFFFFF
Default value: 120
Present by default: No
ArpCacheLife设置了未被使用的ARP缓存表项可以被保持的时间。如果注册表中没有ArpCacheLife项,则ArpCacheLife的默认值是120秒(2分钟)。

ArpCacheMinReferencedLife
Location: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Data Type: REG_DWORD
Valid range: 0-0xFFFFFFFF
Default value: 600
Present by default: No
ArpCacheMinReferencedLife设置被重复使用的表项可以在ARP缓存中存放的时间。ArpCacheMinReferencedLife的默认值是600秒(10分钟)。在注册表中ArpCacheMinReferencedLife和ArpCacheLife的值的使用方法如下:

如果ArpCacheLife比ArpCacheMinReferencedLife的值大或与之相等,则被使用和未被使用的ARP缓存表项可存储的时间都是ArpCacheLife。
如果ArpCacheLife比ArpCacheMinReferencedLife的值小,则未被使用的ARP缓存表项在ArpCacheLife秒的时间后就过期了,被使用的表项的生存期为ArpCacheMinReferencedLife秒。

2、无偿ARP和重复的IP地址检测
ARP可以被用来检测重复的IP地址,这是通过传送一种叫做无偿ARP的ARP请求来完成的。无偿ARP就是一个发往自己IP地址的ARP请求。在无偿ARP中,SPA(发送者协议地址)和TPA(目标协议地址)被设置成同一个IP地址。
如果节点发送一个发往自己IP地址的ARP请求,就不应收到任何一个ARP回应帧,这样节点就可以判断没有其他节点使用跟它相同的IP地址。如果节点发送一个发往自己IP地址的ARP请求,结果收到ARP回应,这样此节点就可以判断有另外一个节点使用同样的IP地址。

注册表中对ArpRetryCount的设置控制了无偿ARP的发送数量。

ArpRetryCount
Location: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Data Type: REG_DWORD
Valid range: 0-3
Default value: 3
Present by default: No

ArpRetryCount设置了当初始化某个IP地址时,发送的无偿ARP的次数。如果发送了ArpRetryCount个无偿ARP后,都没有收到ARP回应,IP就假定此IP地址在此网络段中是唯一的。

提示:无偿ARP试图检测在同一个网络段中的IP地址重复。由于路由器并不转发ARP帧,无偿ARP并不能检测在不同网络段之间的IP地址冲突。

摘到这里,我插一句,描述一个现象以验证书上的论述:如果有台机器上的Windows正在启动,你可以在同网段中另外一台机器上sniffer到这台机器启动过程中发送的3个无偿ARP请求。



如果你对这本书上的内容感兴趣,留个言,我将继续为大家摘录精彩章节。

同时,欢迎到我的blog来讨论,相关blog地址是:
http://blog.haha567.com/blog.php?job=art&articleid=a_20041012_001904

最后,为想买这本书的朋友提供一些信息,给出当当网上这本书的介绍页面地址:
http://www.dangdang.com/product_detail/product_detail.asp?product_id=8880289
...全文
1124 26 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
horisly 2005-06-25
  • 打赏
  • 举报
回复
不错,我也在看这本书,昨天刚看完Arp这章,写的的确很好.
sxxny 2005-04-21
  • 打赏
  • 举报
回复
欢迎加盟C/C++/VC高级技术论坛:
http://www.3d-vr.com/LunTan/bmb/forums.php?forumid=4
(高手请进, 菜鸟随意, 初学者勿入)
gdy119 2004-11-19
  • 打赏
  • 举报
回复
Mark!
celerityok 2004-11-19
  • 打赏
  • 举报
回复
mark!
hikuers 2004-11-19
  • 打赏
  • 举报
回复
mark
  • 打赏
  • 举报
回复
to keios(C->C++->java->C 循环中)

无偿ARP的确应该有一个超时时间问题,不过书上并没有提到这个问题。

我会一直关注这个问题答案的。
keios 2004-11-09
  • 打赏
  • 举报
回复
8错!
问一句,无偿ARP是否还有一个超时时间的问题?
PiggyXP 2004-11-09
  • 打赏
  • 举报
回复
帮顶一下,让更多的兄弟们看到这个好贴:)
20040216 2004-11-08
  • 打赏
  • 举报
回复
学习
oyljerry 2004-10-17
  • 打赏
  • 举报
回复
学习
whwjn 2004-10-17
  • 打赏
  • 举报
回复
up
celerityok 2004-10-17
  • 打赏
  • 举报
回复
mark!
yangming0423 2004-10-16
  • 打赏
  • 举报
回复
楼主真是个好人喔,关注!!!!!!!!!!!!!!!!!!!
dahai_2002 2004-10-15
  • 打赏
  • 举报
回复
还有呢? 接着讲啊.
Hotthing 2004-10-15
  • 打赏
  • 举报
回复
收藏,谢谢
loucai 2004-10-15
  • 打赏
  • 举报
回复
学习,谢谢。
mybname65319203 2004-10-15
  • 打赏
  • 举报
回复
收藏,谢谢
huaboy408 2004-10-15
  • 打赏
  • 举报
回复
MARK
shakira008 2004-10-15
  • 打赏
  • 举报
回复
接着讲啊
PiggyXP 2004-10-14
  • 打赏
  • 举报
回复
看得正过瘾呢,竟然就没了...-_-b

置顶先,然后收藏^_^
加载更多回复(6)

18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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