WEB开发网
开发学院软件开发VC TCP/IP学习笔记(2) 阅读

TCP/IP学习笔记(2)

 2010-04-03 20:34:40 来源:WEB开发网   
核心提示:一、ARP:地址解析协议先看:C:\Documents and Settings\xiaoj>arp -aInterface: 192.1.8.84 on Interface 0x1000003Internet Address Physical Address Type192.1.8.12 00-0b-cd-03

一、ARP:地址解析协议

先看:

C:\Documents and Settings\xiaoj>arp -a
  Interface: 192.1.8.84 on Interface 0x1000003
  Internet Address Physical Address Type
  192.1.8.12 00-0b-cd-03-c4-27 dynamic
  192.1.8.15 00-0d-9d-93-09-f5 dynamic
  192.1.8.18 00-e0-18-c1-86-3d dynamic
  192.1.8.26 00-80-2d-78-4f-81 dynamic
  192.1.8.33 00-0b-cd-0f-a4-c5 dynamic
  192.1.8.38 00-30-6e-36-5f-99 dynamic
  192.1.8.86 00-0b-cd-b8-0c-ae dynamic
  192.1.8.247 00-50-ba-e5-20-af dynamic
  192.1.8.248 00-0d-56-19-ba-56 dynamic

第一列显示的是主机的IP地址,第二列就是主机的网卡MAC地址。

ARP协议就是提供IP地址到对应的硬件地址提供动态映射。这个过程一般是系统自动完成的。ARP发送一份ARP请求给以太网上的主机,该请求中包含目的主机的IP地址,其意思是“如果你是这个IP的拥有者,请回答你的硬件地址”。当目的主机的ARP层收到这份广播报文时,识别出这是发送端在询问它的IP地址,于是就会发送一个ARP应答,这个ARP应答包括IP地址及对应的硬件地址。

二、ARP分组格式

以太网目的地址6 以太网源地址6 帧类型2 硬件类型2 协议类型2 硬件地址长度

1

协议地址长度1 请求应答1 发送者硬件地址6 发送者IP地址

4

目的硬件地址6 目的IP地址4

先看定义:

//ARP首部

struct arphdr(
 u_short ar_hrd; //硬件类型
 u_short ar_pro; //协议类型
 u_char ar_hln; //硬件地址长度
 u_char ar_pln; //协议地址长度
 u_short ar_op; // 请求还是应答
 u_char arp_sha[6]; //发送者硬件地址
 u_char arp_spa[4]; //发送者IP地址
 u_char arp_tha[6]; //目的硬件地址
 u_char arp_tpa[4]; //目的IP地址
 u_char arp_zero[18]; //填充字段
};

1 2 3  下一页

Tags:TCP IP 学习

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接