当前位置: 首页 > news >正文

金华规划局网站开发区seo专员招聘

金华规划局网站开发区,seo专员招聘,国家高新技术企业认定官网,假网站怎么做问题描述: 自己在vmware中搭建了2台虚拟机,虚拟机A向虚拟机A和虚拟机B发送广播信息,接收端在虚拟机A和虚拟机B,这个时候,由于没配置sin.sin_addr.s_addr htonl(INADDR_ANY);,而是配置的inet_pton(AF_INET,…

问题描述:
自己在vmware中搭建了2台虚拟机,虚拟机A向虚拟机A和虚拟机B发送广播信息,接收端在虚拟机A和虚拟机B,这个时候,由于没配置sin.sin_addr.s_addr = htonl(INADDR_ANY);,而是配置的inet_pton(AF_INET, SERV_IP, &sin.sin_addr.s_addr);,导致虚拟机A的广播信号发出去了,但是虚拟机B和虚拟机A完全收不到UDP广播数据。

要点:

  1. 在发送端配置
    // 设置允许广播数据
    int b_br = 1;
    setsockopt(sockfd, SOL_SOCKET, SO_BROADCAST, &b_br, sizeof(int));
  2. 在接收端配置
    sin.sin_addr.s_addr = htonl(INADDR_ANY);绑定到任意接口
// receive.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/ip.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <unistd.h>#define SERV_PORT 5001
#define SERV_IP "192.168.32.133"int main(int argc, char *argv[])
{int sockfd;struct sockaddr_in sin;struct in_addr sinp;char buf[BUFSIZ];// 1. 创建socketif((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0){perror("socket");exit(1);}//	int b_br = 1;
//	setsockopt(sockfd, SOL_SOCKET, SO_BROADCAST, &b_br, sizeof(int));// 2. 绑定服务器sin.sin_family = AF_INET;sin.sin_port = htons(SERV_PORT);// inet_pton(AF_INET, SERV_IP, &sin.sin_addr.s_addr);sin.sin_addr.s_addr = htonl(INADDR_ANY);bzero(sin.sin_zero, 8);if(bind(sockfd, (struct sockaddr *)&sin, sizeof(sin)) < 0){perror("bind");exit(1);}// 3. 从客户端接收while(1){int recvlen = -1;struct sockaddr_in srcaddrin;char srcaddr[16];int port = -1, addrlen;recvlen = recvfrom(sockfd, buf, BUFSIZ, 0, (struct sockaddr*)&srcaddrin, &addrlen);inet_ntop(AF_INET, &srcaddrin.sin_addr.s_addr, srcaddr, sizeof(srcaddrin));port = ntohs(srcaddrin.sin_port);if(recvlen == 0) printf("Client (%s:%d) is orderly shutdown\n", srcaddr, port);else if(recvlen < 0){perror("recvfrom");break;}else {// 接收到recvlen个数据if(strncasecmp("quit", buf, 4) == 0) break;printf("Client (%s:%d) recv data len=%d, addrlen=%d from client: %s\n", srcaddr, port, recvlen, addrlen, buf);}}// 4. 处理业务// 5. 发送数据close(sockfd);return 0;
}
// sender.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/ip.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <unistd.h>#define SERV_PORT 5001
#define SERV_IP "192.168.32.255"int main(int argc, char *argv[])
{int sockfd;struct sockaddr_in sin;struct in_addr sinp;char buf[BUFSIZ];// 1. 创建socketif((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) < 0){perror("socket");exit(1);}// 设置允许广播数据int b_br = 1;setsockopt(sockfd, SOL_SOCKET, SO_BROADCAST, &b_br, sizeof(int));// 2. 发送消息sendtosin.sin_family = AF_INET;sin.sin_port = htons(SERV_PORT);inet_pton(AF_INET, SERV_IP, &sin.sin_addr.s_addr);bzero(sin.sin_zero, 8);while(1){if(fgets(buf, BUFSIZ, stdin) == NULL){perror("fgets");continue;}sendto(sockfd, buf, BUFSIZ, 0, (struct sockaddr *)&sin, sizeof(sin));if(strncasecmp("quit", buf, 4) == 0) break;}close(sockfd);return 0;
}
http://www.zhongyajixie.com/news/22602.html

相关文章:

  • 设计师网站 知乎网站策划书
  • 红河县网站建设百度推广客户端怎样注册
  • ui培训班学费价格便宜的seo网络营销推广
  • 免费网站域名注册申请营销推广网站
  • 网站结构分析具体分析内容百度广告平台电话
  • 福州公司建站模板精准营销推广方案
  • 网页制作淘宝网站建设如何建网站赚钱
  • 网站怎么做图片动态2023年3月份疫情严重
  • 全是图片的网站怎么做seo百度快照优化排名推广怎么做
  • 微信公众平台设计优化方案官网电子版
  • acaa平面设计师操作题seo初级入门教程
  • pc网站运营网址大全导航
  • 网站中的链接是一个一个html做的谷歌搜索广告
  • 白市驿网站建设搜狗指数
  • 新网站怎么做排名网络推广电话销售技巧和话术
  • 网站建设步骤详解视频营销知识和技巧
  • 商务网站策划方案关键对话
  • 南网站建设工业设计公司
  • 开发公司对代理公司管理seo排名工具外包
  • 温州网站制作价格免费搭建网站的软件
  • 男人和女人做av网站百度引擎提交入口
  • 手机网站开发技术申请网址怎么申请的
  • 网站开发对cpu要求高吗seo课程培训中心
  • 中小学建设网站seo包括哪些方面
  • 石景山上海网站建设市场营销公司有哪些
  • 巴中做网站 微信开发百度电话怎么转人工
  • 网站滚动图片代码网络营销有哪些特点
  • 手机收藏网站代码宁波seo推广如何收费
  • 南宁网站建设培训班推广app赚钱项目
  • 儿童摄影网站源码国家免费培训机构