1,TCP/IP
IP工作于网络层,IP在设计上是用来在LAN和LAN集pc和pc之间进行传输,每一台pc或是一个LAN都可以由一组ip地址来区分。
您可以把ip看成是游戏规则,而tcp则是用来诠释这些规则的,更准确来说,tcp在ip的基础上,解释了参与通讯的双方是如何透过ip进行资料传输的。tcp提供了一套协定,能够将电脑之间使用的资料透过网络相互传送,同时也提供一套机制来保证资料输送的准确性和连续性。
2,ip地址和mac地址对应
1),首先,以太网用的是广播的方式传输信息,所有的节点都会收到信息,但是只有目标地址跟自己的mac地址一样的才会被处理。因此无论上次协议是什么,只要底层用的是以太网,就得使用mac地址。
2),ARP(Address Resolution Protocol )协定,
ARP是TCP/IP的设计者利用以太网的广播性质,设计出来的地址解释协定。它的主要性质和特点是它的地址对应关系是动态的。它的工作原理非常简单,如下:
- 首先,每一台主机都会在ARP快取缓冲区中建立一个ARP表格,用来记录IP地址和mac地址的对应关系,这个table的每一笔资料会根据自身的存活时间递减而最终消失,以确保资料的真实性。
- 当发送主机由一个封包要传送给目的主机的时候,并且获得目的主机的IP地址;那发送主机首先检查自己的ARP表格中有没有该IP地址的mac地址对应记录。如果有,就直接使用该mac传递封包;如果没有,则向网络发一个ARP Request广播封包,查询目的主机的实际地址。这个封包会包含发送端的IP地址和mac地址。
- 这时,网络上所有的主机都会受到这个广播封包,会检查封包的IP地址是否和自己的IP地址一致。如果不是则忽略;如果是则会先将发送端的mac地址和IP资料更新到自己的ARP表格去,如果已经有该IP的对应,则用新资料覆盖原来的;然后再回应一个ARP Reply封包给对方,告知发送主机自己的mac地址。
- 当发动端接收到ARP Reply之后,也会更新自己的ARP表格;然后就可以用此记录进行传送了。
- 如果发送端没有得到ARP Reply,则宣告查询失败。
3),PROXY ARP代理ARP
代理ARP通常是用来在路由器上代为回答在它后面的某个网络主机的ARP请求。这是一种欺骗手法,因为查询端会以为目标主机就是路由器本身,但实际上,机器在另一个网络里面。