[发明专利]一种用于ping回复的虚拟IP的方法有效
申请号: | 202010978106.4 | 申请日: | 2020-09-17 |
公开(公告)号: | CN112165537B | 公开(公告)日: | 2021-08-27 |
发明(设计)人: | 吴建亮;胡鹏;龚国豪 | 申请(专利权)人: | 广州锦行网络科技有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12;H04L29/06 |
代理公司: | 北京精金石知识产权代理有限公司 11470 | 代理人: | 杨兰兰 |
地址: | 510095 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 ping 回复 虚拟 ip 方法 | ||
1.一种用于ping回复的虚拟IP的方法,应用于一台装有netmap的Linux虚拟机,所述Linux虚拟机部署为蜜罐,用于对预设虚拟IP地址段的ping回复进行应答,其特征在于,包括如下步骤:
编写代码,调用netmap API的程序运行,由netmap接管所述Linux虚拟机的物理网卡;
所述netmap接管所述Linux虚拟机的物理网卡,通过如下操作实现:
调用nm_open()函数,设置所述Linux虚拟机的物理网卡为netmap模式;
调用poll()函数监听事件;
预设虚拟IP地址段;预设的所述虚拟IP地址段可以为一个或多个不属于同一IP地址段的虚拟IP地址段,或为一个或多个属于同一IP地址段的虚拟IP地址段;预设的所述虚拟IP地址段可以根据需要修改为任一IP地址段,所述任一IP地址段包括并不存在的IP地址;
通过netmap API中的方法接收所有数据包;
netmap从接收的数据包中抓取ARP请求数据包和ICMP请求数据包;
当接收到的数据包不是ARP请求数据包或ICMP请求数据包时,则不作处理;
解析netmap抓取到的APR请求数据包或ICMP请求数据包,获取源IP地址;
如果目的IP地址属于预设的虚拟IP地址段,则根据APR请求数据包或ICMP请求数据包格式,封装ARP应答数据包或ICMP应答数据包,由netmap根据获取的源IP地址回复ARP应答数据包或回复ICMP应答数据包给发送APR请求数据包或ICMP请求数据包的客户端;
如果抓取到的APR请求数据包或ICMP请求数据包目的地址不属于预设的虚拟IP地址段,则不作处理。
2.根据权利要求1所述的用于ping回复的虚拟IP的方法,其特征在于,netmap抓取ARP请求数据包和ICMP请求数据包的操作,具体包括如下过程:
当调用的poll()函数监听到有事件到达,且到达的事件为接收事件时,判断接收数据包的类型,
如果是ARP数据包,则解析ARP数据包;
如果是IP数据包,则判断该IP数据包的TOS字段的保留位是否为0x00,
如果TOS字段的保留位为0x00,则为ICMP数据包,解析ICMP数据包。
3.根据权利要求1所述的用于ping回复的虚拟IP的方法,其特征在于,通过netmap API中的方法接收所有数据包,具体包括netmap使用netmap_poll接收数据包,包括如下步骤:
查询数据队列,如果为空,则开始接收数据包;
调用ixgbe_netmap_rxsync函数接收数据包得到内核态数据包;
由linux_netmap_mmap将内核态数据包映射为用户态数据包;
将用户态数据包存储到运行时申请的内存池中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州锦行网络科技有限公司,未经广州锦行网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010978106.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种板材钻孔清理装置及钻孔清理方法
- 下一篇:一种喷墨打印真空干燥装置及方法