发布新日志

  • ARP,RARP,TCP/IP,ICMP

    2007-06-29 15:11:55

    什么是ARP

    地址解析协议(Address Resolution ProtocolARP)是在仅知道主机的IP地址时确定其物理地址的一种协议。因IPv4以太网的广泛应用,其主要用作将IP地址翻译为以太网的MAC地址,但其也能在ATMFDDIIP网络中使用。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。
    假设:
    计算机AIP192.168.1.1,MAC地址为00-11-22-33-44-01;
    计算机BIP192.168.1.2,MAC地址为00-11-22-33-44-02;

    [编辑]

    工作原理

    ARP工作原理如下:

    TCP/IP协议中,AB发送IP,在包头中需要填写BIP为目标地址,但这个IP包在以太网上传输的时候,还需要进行一次以太包的封装,在这个以太包中,目标地址就是BMAC地址.

    计算机A是如何得知BMAC地址的呢?解决问题的关键就在于ARP协议。

    A不知道BMAC地址的情况下,A就广播一个ARP请求包,请求包中填有BIP(192.168.1.2),以太网中的所有计算机都会接收这个请求,而正常的情况下只有B会给出ARP应答包,包中就填充上了BMAC地址,并回复给A

    A得到ARP应答后,BMAC地址放入本机缓存,便于下次使用。

    本机MAC缓存是有生存期的,生存期结束后,将再次重复上面的过程。

    ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IPMAC地址存储在ARP缓存中。因此,当局域网中的某台机器BA发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为CIP,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来CIP地址没有变,而它的MAC地址已经不是原来那个了。由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这样就会造成网络不通,导致A不能PingC!这就是一个简单的ARP欺骗。

    [编辑]

    应用

    在网络执法官中,要想限制某台机器上网,只要点击"网卡"菜单中的"权限",选择指定的网卡号或在用户列表中点击该网卡所在行,从右键菜单中选择"权限",在弹出的对话框中即可限制该用户的权限。对于未登记网卡,可以这样限定其上线:只要设定好所有已知用户(登记)后,将网卡的默认权限改为禁止上线即可阻止所有未知的网卡上线。使用这两个功能就可限制用户上网。其原理是通过ARP欺骗发给被攻击的电脑一个假的网关IP地址对应的MAC,使其找不到网关真正的MAC地址,这样就可以禁止其上网。

    [编辑]

    防御

    ARP欺骗可以导致目标计算机与网关通信失败

    更可怕的是会导致通信重定向,所有的数据都会通过攻击者的机器,因此存在极大的安全隐患。

    基与PCPCIP-MAC双向绑定可以解决ARP欺骗

    但是对于不支持IP-MAC双向绑定的设备

    就需要用可以绑定端口-MAC的交换来预防ARP欺骗

    另外,Windows 2KSP4 XPSP1 Arp-S绑定是无效的

    需要升级到 2KSP5 XPSP2

    取自"http://wiki.ccw.com.cn/%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%E5%8D%8F%E8%AE%AE"

     

     

    英文原义:A Reverse Address Resolution Protocol
    中文释义:(RFC-903)逆向地址解析协议

    注解:就是将局域网中某个主机的物理地址转换为IP地址,比如局域网中有一台主机只知道物理地址而不知道IP地址,那么可以通过RARP协议发出征求自身IP地址的广播请求,然后由RARP服务器负责回答。
    应用:RARP协议广泛用于获取无盘工作站的IP地址。

     

     

     

     

    TCP/IPTransmission Control Protocol/Internet Protocol的简写,中文译名为传输控制协议/互联网络协议)协议是Internet最基本的协议,简单地说,就是由底层的IP协议和TCP协议组成的。
    Internet没有形成之前,各个地方已经建立了很多小型的网络,称为局域网,Internet的中文意义是"网际网",它实际上就是将全球各地的局域网连接起来而形成的一个"网之间的网(即网际网)"。然而,在连接之前的各式各样的局域网却存在不同的网络结构和数据传输规则,将这些小网连接起来后各网之间要通过什么样的规则来传输数据呢?这就象世界上有很多个国家,各个国家的人说各自的语言,世界上任意两个人要怎样才能互相沟通呢?如果全世界的人都能够说同一种语言(即世界语),这个问题不就解决了吗?TCP/IP协议正是Internet上的"世界语"TCP/IP协议的开发工作始于70年代,是用于互联网的第一套协议。

    TCP/IP
    Internet使用的一组协议(Protocol).Internet上传输控制协议和网际协议是配合进行工作的。网际协议(IP)负责将消息从一个主机传送到另一个主机。为了安全消息在传送的过程中被分割成一个个的小包。 传输控制协议(TCP)负责收集这些信息包,并将其按适当的次序放好传送,在接收端收到后再将其正确地还原。传输协议保证了数据包在传送中准确无误。

    ICMP
    “Internet Control Message Protocol”Internet控制消息协议)的缩写。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

    RARP(A Reverse Address Resolution Protocol
    反向地址解析协议),用于MAC地址到IP的解析,此协议多用于无盘工作站. 比如局域网中有一台主机只知道物理地址而不知道IP地址,那么可以通过RARP协议发出征求自身IP地址的广播请求,然后由RARP服务器负责回答。

Open Toolbar