CN113872949B - 一种地址解析协议的应答方法及相关装置 - Google Patents

一种地址解析协议的应答方法及相关装置 Download PDF

Info

Publication number
CN113872949B
CN113872949B CN202111099043.6A CN202111099043A CN113872949B CN 113872949 B CN113872949 B CN 113872949B CN 202111099043 A CN202111099043 A CN 202111099043A CN 113872949 B CN113872949 B CN 113872949B
Authority
CN
China
Prior art keywords
packet
arp request
arp
address
data packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111099043.6A
Other languages
English (en)
Other versions
CN113872949A (zh
Inventor
王骞
庞兆春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202111099043.6A priority Critical patent/CN113872949B/zh
Publication of CN113872949A publication Critical patent/CN113872949A/zh
Application granted granted Critical
Publication of CN113872949B publication Critical patent/CN113872949B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0847Transmission error
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种地址解析协议的应答方法,包括:EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,ARP请求过滤规则包括CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;向未知ARP请求包的源设备发送第一ARP请求包,以便源设备返回第一ARP响应包;判断未知ARP请求包中的地址与第一ARP响应包中的地址是否相同;若是,则基于EMAC控制器的硬件电路生成ARP响应包,并发送。以提高网络通信的安全性,避免出现ARP攻击的情况。本申请还公开了一种地址解析协议的应答装置、服务器以及计算机可读存储介质,具有以上有益效果。

Description

一种地址解析协议的应答方法及相关装置
技术领域
本申请涉及计算机技术领域,特别涉及一种地址解析协议的应答方法、应答装置、服务器以及计算机可读存储介质。
背景技术
在网络通信的过程中,源设备为了提前获取到目标设备的MAC(Media AccessControl Address,媒体存取控制位址)地址,可以通过ARP(Address ResolutionProtocol,地址解析协议)协议进行获取。首先源设备发出ARP请求包,其中的目的IP(Internet Protocol,网际互连协议)地址字段为目标设备IP地址,目标MAC地址字段为广播格式,当目标MAC地址为广播格式时,此请求会被所有设备解析并传至上层协议进行解析,目标设备解析ARP包发现包中目标IP地址与自身IP地址相同,则向源设备发出ARP响应包,源设备通过解析响应包中的源MAC地址字段,即可得到接下来接收端的MAC地址。
相关技术中,在网络中a设备与b设备进行通信,此时,c设备要进行ARP攻击,c设备伪造一个ARP响应包。其中,目标IP地址和目标MAC地址为a设备的信息,源IP地址为b设备的信息,源MAC地址为c设备的信息,此时,a设备接收到此ARP响应包后,会根据IP地址和MAC地址更新ARP缓存,则在之后的通信过程中,a设备向b设备发送的数据实际上发送给了c设备,实现了信息的窃取。可见,降低了网络通信的安全性。
因此,如何避免出现ARP攻击的问题,提高网络通信的安全性是本领域技术人员关注的重点问题。
发明内容
本申请的目的是提供一种地址解析协议的应答方法、应答装置、服务器以及计算机可读存储介质,以提高网络通信的安全性,避免出现ARP攻击的情况。
为解决上述技术问题,本申请提供一种地址解析协议的应答方法,包括:
EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,所述ARP请求过滤规则包括CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;
向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包;
判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同;
若是,则基于所述EMAC控制器的硬件电路生成ARP响应包,并发送。
可选的,向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包,包括:
构造ARP请求;
将所述ARP请求的源MAC地址设置为所述EMAC控制器的MAC地址,将所述ARP请求的目标MAC地址设置为广播地址,将所述ARP请求的源IP地址设置为所述EMAC控制器记录的IP地址,将所述ARP请求的目标IP地址设置为所述未知ARP请求包的源IP地址;
对所述ARP请求进行配置,得到所述第一ARP请求包;
发送所述第一ARP请求包,以便所述源设备返回所述第一ARP响应包。
可选的,当接收到所述数据包时,还包括:
判断所述数据包是否为ARP数据包;
若否,则将所述数据包发送至对应软件,并通过所述对应软件对所述数据包进行处理。
可选的,当所述ARP请求过滤规则包括CRC校验,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
接收所述数据包;
基于CRC校验的检测序列判断所述数据包是否存在错误;
若是,则将所述数据包丢弃;
若否,则将所述数据包作为所述未知ARP请求包。
可选的,当所述ARP请求过滤规则包括使能校验,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
当接收所述数据包时,判断内部寄存器是否为硬件使能;
若是,则将所述数据包作为所述未知ARP请求包;
若否,则将所述数据包发送至对应软件,并通过所述对应软件对所述数据包进行处理。
可选的,当所述ARP请求过滤规则包括信任名单过滤,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
接收所述数据包;
判断所述数据包的特征信息是否存在于信任名单中;
若是,则基于所述EMAC控制器的硬件电路生成ARP响应包,并发送;
若否,则将所述数据包作为所述未知ARP请求包。
可选的,当所述ARP请求过滤规则包括黑名单过滤,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
接收所述数据包;
判断所述数据包的特征信息是否存在于黑名单中;
若是,则将所述数据包丢弃;
若否,则将所述数据包作为所述未知ARP请求包。
本申请还提供一种地址解析协议的应答装置,包括:
数据包过滤模块,用于基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,所述ARP请求过滤规则包括CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;
请求回传模块,用于向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包;
地址判断模块,用于判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同;
响应生成模块,用于当所述未知ARP请求包中的地址与所述第一ARP响应包中的地址相同时,基于所述EMAC控制器的硬件电路生成ARP响应包,并发送。
本申请还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的应答方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的应答方法的步骤。
本申请所提供的一种地址解析协议的应答方法,包括:EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,所述ARP请求过滤规则包括CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包;判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同;若是,则基于所述EMAC控制器的硬件电路生成ARP响应包,并发送。
通过对接收到的数据包先进行相应的过滤操作,得到未知ARP请求包,然后基于该未知ARP请求包重新向对端发送ARP请求包,以便主动获取地址并进行判断,避免出现ARP攻击的问题,提高网络通信的安全性。
本申请还提供一种地址解析协议的应答装置、服务器以及计算机可读存储介质,具有以上有益效果,在此不做赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种地址解析协议的应答方法的流程图;
图2为本申请实施例所提供的另一种地址解析协议的应答方法的流程图;
图3为本申请实施例所提供的一种地址解析协议的应答装置的结构示意图。
具体实施方式
本申请的核心是提供一种地址解析协议的应答方法、应答装置、服务器以及计算机可读存储介质,以提高网络通信的安全性,避免出现ARP攻击的情况。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,在网络中a设备与b设备进行通信,此时,c设备要进行ARP攻击,c设备伪造一个ARP响应包。其中,目标IP地址和目标MAC地址为a设备的信息,源IP地址为b设备的信息,源MAC地址为c设备的信息,此时,a设备接收到此ARP响应包后,会根据IP地址和MAC地址更新ARP缓存,则在之后的通信过程中,a设备向b设备发送的数据实际上发送给了c设备,实现了信息的窃取。可见,降低了网络通信的安全性。
因此,本申请提供一种地址解析协议的应答方法,通过对接收到的数据包先进行相应的过滤操作,得到未知ARP请求包,然后基于该未知ARP请求包重新向对端发送ARP请求包,以便主动获取地址并进行判断,避免出现ARP攻击的问题,提高网络通信的安全性。
以下通过一个实施例,对本申请提供的一种地址解析协议的应答方法进行说明。
请参考图1,图1为本申请实施例所提供的一种地址解析协议的应答方法的流程图。
本实施例中,该方法可以包括:
S101,EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,ARP请求过滤规则包括CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;
可见,本步骤旨在EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包。其中,ARP请求过滤规则可以是单独的过滤规则,也可以是多个过滤规则的组合。其中,该ARP请求过滤规则包括但不限于CRC校验、使能校验、信任名单过滤以及黑名单过滤。可以选择其中一个过滤规则,也可以选择所有的过滤规则。可以根据实际的应用情况做选择,在此不做具体限定。
进一步的,本步骤还可以包括:
步骤1,判断数据包是否为ARP数据包;
步骤2,若否,则将数据包发送至对应软件,并通过对应软件对数据包进行处理。
可见,本可选方案中主要是说明本实施例中还可以判断该数据包是否为ARP数据包。本可选方案中,判断数据包是否为ARP数据包,若否,则将数据包发送至对应软件,并通过对应软件对数据包进行处理。也就是说,通过本可选方案的技术方案主要是判断接收到的数据包是否为ARP数据包,也就是确定接收到的数据包是否为需要处理的数据包。其中,当该数据包不是ARP数据包时,则不对该数据包进行处理,而是将该数据包发送至对应的软件,通过该对应软件对该数据包进行对应的处理。也就是,不通过本实施例中的EMAC对该数据包进行处理,而是通过软件进行其他的处理。
进一步的,当ARP请求过滤规则包括CRC校验,本步骤可以包括:
步骤1,接收数据包;
步骤2,基于CRC校验的检测序列判断数据包是否存在错误;
步骤3,若是,则将数据包丢弃;
步骤4,若否,则将数据包作为未知ARP请求包。
可见,本可选方案中主要是对如何进行过滤做进一步说明。本可选方案中,接收数据包,基于CRC校验的检测序列判断数据包是否存在错误,若是,则将数据包丢弃,若否,则将数据包作为未知ARP请求包。其中,基于CRC校验的检测序列判断该数据包是否存在错误,也就是对基于该检测序列对该数据包进行CRC校验。其中,采用的CRC校验方式可以采用现有技术提供的任意一种校验方式,在此不做具体限定。
进一步的,当ARP请求过滤规则包括使能校验,本步骤可以包括:
步骤1,当接收数据包时,判断内部寄存器是否为硬件使能;
步骤2,若是,则将数据包作为未知ARP请求包;
步骤3,若否,则将数据包发送至对应软件,并通过对应软件对数据包进行处理。
可见,本可选方案中主要是对如何进行过滤做进一步说明。本可选方案中,当接收数据包时,判断内部寄存器是否为硬件使能,若是,则将数据包作为未知ARP请求包,若否,则将数据包发送至对应软件,并通过对应软件对数据包进行处理。其中,硬件使能是指CPU对对应的寄存器进行使能标识。该硬件使能表示当前接收到的数据包是否通过EMAC控制器进行处理。若是,则将该数据包作为该未知ARP请求包,并通过EMAC控制器对该未知ARP请求包进行处理。若否,则将该数据包发送至对应软件,并通过该对应软件进行处理。
进一步的,当ARP请求过滤规则包括信任名单过滤,本步骤可以包括:
步骤1,接收数据包;
步骤2,判断数据包的特征信息是否存在于信任名单中;
步骤3,若是,则基于EMAC控制器的硬件电路生成ARP响应包,并发送;
步骤4,若否,则将数据包作为未知ARP请求包。
可见,本可选方案中主要是对如何进行过滤做进一步说明。本可选方案中,接收数据包,判断数据包的特征信息是否存在于信任名单中,若是,则基于EMAC控制器的硬件电路生成ARP响应包,并发送,若否,则将数据包作为未知ARP请求包。也就是,判断接收到的数据包的特征信息是否存在于信任名单中。其中,该特征信息可以是该数据包的源IP地址或源MAC地址。当该数据包存在于信任名单中时,判定该数据包不存在被攻击的问题,因此可以对该数据包直接进行处理,也就是基于该数据包反馈对应的ARP响应包。当该数据包不存在于信任名单中时,判定该数据包的安全性未知,将该数据包作为未知ARP请求包并执行后续的处理操作。
进一步的,当ARP请求过滤规则包括黑名单过滤,本步骤可以包括:
步骤1,接收数据包;
步骤2,判断数据包的特征信息是否存在于黑名单中;
步骤3,若是,则将数据包丢弃;
步骤4,若否,则将数据包作为未知ARP请求包。
可见,本可选方案中主要是对如何进行过滤做进一步说明。本可选方案中,接收数据包,判断数据包的特征信息是否存在于黑名单中,若是,则将数据包丢弃,若否,则将数据包作为未知ARP请求包。也就是,本可选方案中确定该数据包是否为存在攻击可能的数据包,也就是判断是否存在黑名单中。若是,则判定该数据包存在威胁不进行处理,直接丢弃。若否,则判定该数据包的威胁不确定,需要作为未知ARP请求进行后续的处理。
S102,向未知ARP请求包的源设备发送第一ARP请求包,以便源设备返回第一ARP响应包;
在S101的基础上,本步骤旨在向未知ARP请求包的源设备发送第一ARP请求包,以便源设备返回第一ARP响应包。
也就是,对对端设备重新发送ARP请求包,以便获取到对端设备发送的ARP响应包,并进行判断。
进一步的,本步骤可以包括:
步骤1,构造ARP请求;
步骤2,将ARP请求的源MAC地址设置为EMAC控制器的MAC地址,将ARP请求的目标MAC地址设置为广播地址,将ARP请求的源IP地址设置为EMAC控制器记录的IP地址,将ARP请求的目标IP地址设置为未知ARP请求包的源IP地址;
步骤3,对ARP请求进行配置,得到第一ARP请求包;
步骤4,发送第一ARP请求包,以便源设备返回第一ARP响应包。
可见,本可选方案中主要是说明如何向对端设备发送第一ARP请求包。本可选方案中,构造ARP请求,将ARP请求的源MAC地址设置为EMAC控制器的MAC地址,将ARP请求的目标MAC地址设置为广播地址,将ARP请求的源IP地址设置为EMAC控制器记录的IP地址,将ARP请求的目标IP地址设置为未知ARP请求包的源IP地址,对ARP请求进行配置,得到第一ARP请求包,发送第一ARP请求包,以便源设备返回第一ARP响应包。可见,本可选方案将该未知ARP请求中的源设备作为目标设备,并向该目标设备重新发送ARP请求包,以便获取到ARP响应包并进行判断。
S103,判断未知ARP请求包中的地址与第一ARP响应包中的地址是否相同;
在S102的基础上,本步骤旨在判断未知ARP请求包中的地址与第一ARP响应包中的地址是否相同。也就是,判断ARP请求包中的IP-MAC地址是否与该第一ARP响应包中的IP-MAC地址是否相同,以便确定位置ARP请求包是否出现被攻击的问题。
S104,若是,则基于EMAC控制器的硬件电路生成ARP响应包,并发送。
在S103的基础上,判定两者的地址相同时,基于EMAC控制器的硬件电路生成ARP响应包,并发送。
本步骤中采用EMAC控制器的硬件电路生成ARP响应包,可以避免占用CPU的资源,提高生成ARP响应包的效率和速度,保持硬件资源的利用率。
综上,本实施例通过对接收到的数据包先进行相应的过滤操作,得到未知ARP请求包,然后基于该未知ARP请求包重新向对端发送ARP请求包,以便主动获取地址并进行判断,避免出现ARP攻击的问题,提高网络通信的安全性。
以下通过一个具体的实施例,对本申请提供的一种地址解析协议的应答方法做进一步说明。
请参考图2,图2为本申请实施例所提供的另一种地址解析协议的应答方法的流程图。
本实施例中,该方法可以包括:
步骤1,当EMAC控制器接收到一帧数据包后,首先进行CRC校验,EMAC控制器根据以太网帧格式特点将帧中的前导码以及起始符去除,之后对剩余位重新进行CRC校验,将结果与数据帧中帧检测序列FCS字段进行比较,相同则代表帧在传输的过程中无数值翻转等错误,则可以进行步骤2,否则EMAC将直接丢弃此次接收的数据包。
步骤2,EMAC控制器解析以太网报头中的类型字段,若值为0x0806,则代表此数据包网络层为ARP数据包,之后再对ARP报头的操作类型字段进行解析,若值为1,则代表此数据包为ARP请求数据包,则进行步骤3,否则将此数据包直接发送至软件进行相应的操作。
步骤3,EMAC控制器可以通过CPU配置内部寄存器的方式来选择是否使能防止ARP攻击以及是否通过硬件来自动响应ARP请求包,若使能,则进行步骤4,否则代表ARP响应全部通过软件来处理,则将此数据包直接发送至软件进行相应的操作。
步骤4,EMAC控制器内部维护一个信任名单以及一个黑名单,其中名单中的各个表项由MAC地址组成。信任表单中包含了受信任的MAC地址,代表由此MAC地址发来的数据包都是可信的;黑名单中包含了可疑的MAC地址,代表此刻MAC地址所在的设备可能会是攻击的发起者。信任名单以及黑名单实质上为EMAC控制器内部的存储单元,由CPU实时通过相应操作进行插入和删除等。
若ARP请求包中的以太网报头中的源MAC地址以及ARP报头中的源MAC地址相同且处于信任名单中,则直接跳转至步骤9,否则进行步骤5。
步骤5,判断此ARP请求包中的以太网报头中的源MAC地址以及ARP报头中的源MAC地址是否相同且是否处于黑名单中,是则代表此刻源MAC地址所在的设备可能正在攻击,EMAC控制器直接丢弃此请求,否则进行步骤6。
步骤6,对于不处于信任或者黑名单中的ARP请求,为防止ARP攻击,EMAC控制器会进行ARP请求回传操作。具体的,EMAC控制器保存原ARP请求的IP-MAC地址对,之后构造一个新的ARP请求,其中源MAC地址为此EMAC控制器的MAC地址,目标MAC地址为广播格式(FF-FF-FF-FF-FF-FF),源IP地址为此EMAC控制器内IP地址寄存器中保存的代表此时系统的IP地址,目标IP地址为原ARP请求包中的源IP地址(即重新请求对端MAC地址),并设置ARP报头中的操作类型字段为1,以太网报头中的类型字段值为0x0806,将新的ARP请求包重新发送到网络中,然后进行步骤7。
步骤7,EMAC控制器接收新ARP请求包对应的ARP响应包,并从中提取此响应包中的源IP-MAC地址对,并与步骤6中保存的IP-MAC地址对进行比较,相同则代表原ARP请求中的IP地址未被伪造,原ARP请求包为正常的数据包,则进行步骤8,否则将此原ARP包直接发送至软件,通过抓包等软件操作的方式判断原ARP请求包是否异常。
步骤8,EMAC控制器将此IP-MAC地址对与ARP缓存中的IP-MAC地址对进行比较,并更新ARP缓存(ARP缓存也可以实时被CPU更新),然后进行步骤9。
步骤9,基于EMAC控制器硬件电路产生ARP响应包,其主要由几个子步骤生成:
步骤a,EMAC根据帧格式生成ARP应答数据包。
步骤b,将原ARP请求中的源MAC地址字段复制到ARP应答数据包中以太网报头的目标MAC地址字段以及ARP响应报文中的目标MAC地址字段。
步骤c,将原ARP请求中的源IP地址字段复制到ARP应答数据包中ARP响应报文中的目标IP地址字段。
步骤d,将EMAC控制器中MAC地址寄存器中的值复制到应答数据包中以太网报头的源MAC地址字段以及ARP响应报文中的源MAC地址字段。
步骤e,将EMAC控制器中IP地址寄存器中的值复制到应答数据包中ARP响应报文中的源IP地址字段。
步骤f,将应答数据包中ARP响应报文中的操作类型字段置为2,表示ARP应答。
步骤g,对应答数据包重新进行CRC计算与填充。
步骤h,将应答数据包发送至网络。
此外,在步骤3中,EMAC控制器也会判断ARP报文中的目标IP地址是否为此系统的IP地址,若不相同则将此ARP请求包直接丢弃。
可选的,在步骤7中,若两次IP-MAC地址对不同,则EMAC控制器在将原ARP包发送至软件的同时,在内部设置相应的状态寄存器,来告知软件此次ARP包需要软件进行更多的处理工作,以此可以进一步提高系统的可靠性。
可见,本实施例通过对接收到的数据包先进行相应的过滤操作,得到未知ARP请求包,然后基于该未知ARP请求包重新向对端发送ARP请求包,以便主动获取地址并进行判断,避免出现ARP攻击的问题,提高网络通信的安全性。
下面对本申请实施例提供的地址解析协议的应答装置进行介绍,下文描述的地址解析协议的应答装置与上文描述的地址解析协议的应答方法可相互对应参照。
请参考图3,图3为本申请实施例所提供的一种地址解析协议的应答装置的结构示意图。
本实施例中,该装置可以包括:
数据包过滤模块100,用于基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,ARP请求过滤规则包括CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;
请求回传模块200,用于向未知ARP请求包的源设备发送第一ARP请求包,以便源设备返回第一ARP响应包;
地址判断模块300,用于判断未知ARP请求包中的地址与第一ARP响应包中的地址是否相同;
响应生成模块400,用于当未知ARP请求包中的地址与第一ARP响应包中的地址相同时,基于EMAC控制器的硬件电路生成ARP响应包,并发送。
可选的,该请求回传模块200,具体用于构造ARP请求;将ARP请求的源MAC地址设置为EMAC控制器的MAC地址,将ARP请求的目标MAC地址设置为广播地址,将ARP请求的源IP地址设置为EMAC控制器记录的IP地址,将ARP请求的目标IP地址设置为未知ARP请求包的源IP地址;对ARP请求进行配置,得到第一ARP请求包;发送第一ARP请求包,以便源设备返回第一ARP响应包。
可选的,该装置还可以包括:
ARP判断模块,用于判断数据包是否为ARP数据包;若否,则将数据包发送至对应软件,并通过对应软件对数据包进行处理。
可选的,该数据包过滤模块100,具体用于接收数据包;基于CRC校验的检测序列判断数据包是否存在错误;若是,则将数据包丢弃;若否,则将数据包作为未知ARP请求包。
可选的,该数据包过滤模块100,具体用于当接收数据包时,判断内部寄存器是否为硬件使能;若是,则将数据包作为未知ARP请求包;若否,则将数据包发送至对应软件,并通过对应软件对数据包进行处理。
可选的,该数据包过滤模块100,具体用于接收数据包;判断数据包的特征信息是否存在于信任名单中;若是,则基于EMAC控制器的硬件电路生成ARP响应包,并发送;若否,则将数据包作为未知ARP请求包。
可选的,该数据包过滤模块100,具体用于接收数据包;判断数据包的特征信息是否存在于黑名单中;若是,则将数据包丢弃;若否,则将数据包作为未知ARP请求包。
本申请实施例还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上实施例所述的应答方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的应答方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种地址解析协议的应答方法、应答装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (9)

1.一种地址解析协议的应答方法,其特征在于,包括:
以太网媒体访问EMAC控制器基于地址解析协议ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,所述ARP请求过滤规则包括循环冗余校验码CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;
向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包;
判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同;
若是,则基于所述EMAC控制器的硬件电路生成ARP响应包,并发送;
其中,所述向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包,包括:构造ARP请求;将所述ARP请求的源MAC地址设置为所述EMAC控制器的MAC地址,将所述ARP请求的目标MAC地址设置为广播地址,将所述ARP请求的源IP地址设置为所述EMAC控制器记录的IP地址,将所述ARP请求的目标IP地址设置为所述未知ARP请求包的源IP地址;对所述ARP请求进行配置,得到所述第一ARP请求包;发送所述第一ARP请求包,以便所述源设备返回所述第一ARP响应包;
所述判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同,包括:判断ARP请求包中的IP-MAC地址是否与该第一ARP响应包中的IP-MAC地址是否相同。
2.根据权利要求1所述的应答方法,其特征在于,当接收到所述数据包时,还包括:
判断所述数据包是否为ARP数据包;
若否,则将所述数据包发送至对应软件,并通过所述对应软件对所述数据包进行处理。
3.根据权利要求1所述的应答方法,其特征在于,当所述ARP请求过滤规则包括CRC校验,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
接收所述数据包;
基于CRC校验的检测序列判断所述数据包是否存在错误;
若是,则将所述数据包丢弃;
若否,则将所述数据包作为所述未知ARP请求包。
4.根据权利要求1所述的应答方法,其特征在于,当所述ARP请求过滤规则包括使能校验,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
当接收所述数据包时,判断内部寄存器是否为硬件使能;
若是,则将所述数据包作为所述未知ARP请求包;
若否,则将所述数据包发送至对应软件,并通过所述对应软件对所述数据包进行处理。
5.根据权利要求1所述的应答方法,其特征在于,当所述ARP请求过滤规则包括信任名单过滤,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
接收所述数据包;
判断所述数据包的特征信息是否存在于信任名单中;
若是,则基于所述EMAC控制器的硬件电路生成ARP响应包,并发送;
若否,则将所述数据包作为所述未知ARP请求包。
6.根据权利要求1所述的应答方法,其特征在于,当所述ARP请求过滤规则包括黑名单过滤,所述EMAC控制器基于ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包的步骤,包括:
接收所述数据包;
判断所述数据包的特征信息是否存在于黑名单中;
若是,则将所述数据包丢弃;
若否,则将所述数据包作为所述未知ARP请求包。
7.一种地址解析协议的应答装置,其特征在于,包括:
数据包过滤模块,用于基于地址解析协议ARP请求过滤规则对接收到的数据包进行过滤,得到未知ARP请求包;其中,所述ARP请求过滤规则包括循环冗余校验码CRC校验、使能校验、信任名单过滤以及黑名单过滤中的一种或多种;
请求回传模块,用于向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包;
地址判断模块,用于判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同;
响应生成模块,用于当所述未知ARP请求包中的地址与所述第一ARP响应包中的地址相同时,基于硬件电路生成ARP响应包,并发送;
其中,所述向所述未知ARP请求包的源设备发送第一ARP请求包,以便所述源设备返回第一ARP响应包,包括:构造ARP请求;将所述ARP请求的源MAC地址设置为以太网媒体访问EMAC控制器的MAC地址,将所述ARP请求的目标MAC地址设置为广播地址,将所述ARP请求的源IP地址设置为所述EMAC控制器记录的IP地址,将所述ARP请求的目标IP地址设置为所述未知ARP请求包的源IP地址;对所述ARP请求进行配置,得到所述第一ARP请求包;发送所述第一ARP请求包,以便所述源设备返回所述第一ARP响应包;
所述判断所述未知ARP请求包中的地址与所述第一ARP响应包中的地址是否相同,包括:判断ARP请求包中的IP-MAC地址是否与该第一ARP响应包中的IP-MAC地址是否相同。
8.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的应答方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的应答方法的步骤。
CN202111099043.6A 2021-09-18 2021-09-18 一种地址解析协议的应答方法及相关装置 Active CN113872949B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111099043.6A CN113872949B (zh) 2021-09-18 2021-09-18 一种地址解析协议的应答方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111099043.6A CN113872949B (zh) 2021-09-18 2021-09-18 一种地址解析协议的应答方法及相关装置

Publications (2)

Publication Number Publication Date
CN113872949A CN113872949A (zh) 2021-12-31
CN113872949B true CN113872949B (zh) 2023-08-22

Family

ID=78992828

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111099043.6A Active CN113872949B (zh) 2021-09-18 2021-09-18 一种地址解析协议的应答方法及相关装置

Country Status (1)

Country Link
CN (1) CN113872949B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114567614B (zh) * 2022-03-07 2023-06-23 江苏新质信息科技有限公司 基于fpga实现arp协议处理的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101094236A (zh) * 2007-07-20 2007-12-26 华为技术有限公司 地址解析协议报文处理方法及通讯系统及转发平面处理器
WO2010036054A2 (ko) * 2008-09-25 2010-04-01 주식회사 안철수연구소 Arp 공격 감지 방법 및 이를 이용한 시스템
CN105939332A (zh) * 2016-03-03 2016-09-14 杭州迪普科技有限公司 防御arp攻击报文的方法及装置
CN112383559A (zh) * 2020-11-25 2021-02-19 杭州迪普信息技术有限公司 地址解析协议攻击的防护方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101094236A (zh) * 2007-07-20 2007-12-26 华为技术有限公司 地址解析协议报文处理方法及通讯系统及转发平面处理器
WO2010036054A2 (ko) * 2008-09-25 2010-04-01 주식회사 안철수연구소 Arp 공격 감지 방법 및 이를 이용한 시스템
CN105939332A (zh) * 2016-03-03 2016-09-14 杭州迪普科技有限公司 防御arp攻击报文的方法及装置
CN112383559A (zh) * 2020-11-25 2021-02-19 杭州迪普信息技术有限公司 地址解析协议攻击的防护方法及装置

Also Published As

Publication number Publication date
CN113872949A (zh) 2021-12-31

Similar Documents

Publication Publication Date Title
US8453208B2 (en) Network authentication method, method for client to request authentication, client, and device
CN110784464B (zh) 泛洪攻击的客户端验证方法、装置、系统及电子设备
JP2018528679A (ja) 負荷平衡システムにおいて接続を確立するデバイス及び方法
US7404210B2 (en) Method and apparatus for defending against distributed denial of service attacks on TCP servers by TCP stateless hogs
CN114301676B (zh) 一种电力监控系统的无损化资产探测方法、装置和存储介质
CN113595891B (zh) 数据通信方法、装置和电子设备
CN108810008B (zh) 传输控制协议流量过滤方法、装置、服务器及存储介质
CN110839046A (zh) 多协议的互通方法和系统
CN113489750A (zh) 数据传输方法、数据处理方法及相关设备
CN113872949B (zh) 一种地址解析协议的应答方法及相关装置
EP2648383B1 (en) Method and device for data transmission
CN116708041B (zh) 伪装代理方法、装置、设备及介质
CN112383559B (zh) 地址解析协议攻击的防护方法及装置
CN107547561B (zh) 一种进行ddos攻击防护处理的方法及装置
CN106961393B (zh) 网络会话中udp报文的检测方法及装置
CN113596147B (zh) 消息推送方法、装置、设备与存储介质
CN112087464B (zh) SYN Flood攻击清洗方法、装置、电子设备和可读存储介质
CN114598675A (zh) 基于arp实现主机阻断的控制方法、装置、设备及介质
CN113162922A (zh) 客户端数据的获取方法及装置、存储介质、电子设备
CN112822262B (zh) 报文处理方法和装置、报文处理设备及存储介质
CN116846687B (zh) 一种网络安全监测方法、系统、装置及存储介质
CN114640704B (zh) 通讯数据获取方法、系统、计算机设备及可读存储介质
CN114205405B (zh) 一种bfd报文发送方法、装置、电子设备及存储介质
CN114978643B (zh) 一种通信方法、网络设备及存储介质
CN116647605A (zh) 一种基于改进kcp的opc ua高效通信的实现方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant