linux 发送自定义包裹 c 程序

cpp 复制代码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in_systm.h>
#include <netinet/if_ether.h>



int main(void) {
	int s;
	int sd;
	char iface[256] = "wlp1s0";
	char packet[26];
	struct sockaddr sa;

	s = socket(PF_PACKET,SOCK_PACKET,htons(ETH_P_ALL));
	if(s < 0){perror("socket error\n");exit(EXIT_FAILURE);}

	memset(&sa,0,sizeof(sa));
	sa.sa_family = PF_PACKET;
	snprintf(sa.sa_data,256,"%s",iface);

	memset(&packet,0,sizeof(packet));

	for(int i=0;i<=100;i++){
		sd = sendto(s,packet,sizeof(packet),0,&sa,sizeof(sa));
		if(sd < 0){perror("sendto error\n");exit(EXIT_FAILURE);}
	}

	return EXIT_SUCCESS;
}

如果你要定义包裹 你就应该 把包裹定义成这样:

packet[26] = {0xff,0xff .....} 这样的数据形式

相关推荐
幸运狗头12 分钟前
Linux学习-基于TCP实现群聊
linux·学习·tcp/ip·群聊
渡己(Sorin)14 分钟前
Ubuntu有限网口无法使用解决方法
linux·运维·ubuntu
不懂机器人16 分钟前
linux网络编程-----TCP服务端并发模型(epoll)
linux·网络·tcp/ip·算法
qq_2970756733 分钟前
网络安全测试(一)Kali Linux
linux·运维·服务器
上海控安44 分钟前
上海控安:汽车API安全-风险与防护策略解析
网络·安全·汽车
wuyang-ligerj2 小时前
BGP路由协议(一):基本概念
运维·网络·网络协议·智能路由器
陈天cjq2 小时前
WebSocket 技术详解:协议原理、握手到生产落地的一站式实践
网络·websocket·网络协议
Adorable老犀牛2 小时前
一键编译安装zabbix(centos)
linux·centos·zabbix
艾莉丝努力练剑3 小时前
【C语言16天强化训练】从基础入门到进阶:Day 11
c语言·学习·算法
2401_831501733 小时前
Linux之Docker虚拟化技术(一)
java·linux·docker