发送数据包:
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include "my_inet.h"
#include <stdio.h>
#include <errno.h>
#include <arpa/inet.h>
#include <unistd.h>
int main()
{
int i;
struct sockaddr_in dest;
dest.sin_family = MY_PF_INET;
dest.sin_port = htons(16000);
dest.sin_addr.s_addr = 0x013010AC; //目的地址是172.16.48.1(网络字节序)
//创建UDP数据报服务的socket。
int fd = socket( MY_PF_INET, SOCK_DGRAM, MY_IPPROTO_UDP );
if( fd < 0 ){
perror("socket: ");
return -1;
}
int bwrite = sendto( fd, "abcdefg", 7, 0, (struct sockaddr *)&dest, sizeof(dest) );
if( bwrite == -1 ){
perror("send: ");
close(fd);
return -1;
}
printf("sendto: %d\n", bwrite);
close( fd );
return 0;
}