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

新东家网站建设企业网站开发douyanet

新东家网站建设,企业网站开发douyanet,杭州服装论坛网站建设,上海工厂网站建设绑定vlan&#xff0c;网卡的demon&#xff0c;如果有多个网卡&#xff0c;多个vlan&#xff0c;网卡的ip设置成一致&#xff0c;那就不能只简单绑定ip来创建socket&#xff0c; 需要绑定网卡设备 客户端udp_client.c #include <stdio.h> #include <string.h> #inc…

绑定vlan,网卡的demon,如果有多个网卡,多个vlan,网卡的ip设置成一致,那就不能只简单绑定ip来创建socket,
需要绑定网卡设备

客户端udp_client.c


#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <net/if.h>
#include <linux/sockios.h>
#include <sys/ioctl.h>#include <arpa/inet.h>
#include <errno.h>
#include <net/if.h>
#include <netinet/ether.h>
#include <netinet/in.h>
#include <netpacket/packet.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <time.h>
#include <unistd.h>
#include <fcntl.h>
#include <termios.h>#define BUF_SIZE    1024
#define INTERFAXENAME "mgbe3_0.14"int sock;int main(int argc, char *argv[])
{int ret = 0;char buf[1024];memset(buf,1,1024);if ( (sock=socket(AF_INET, SOCK_DGRAM, 0)) <0){perror("socket");exit(1);}struct ifreq interface;strncpy(interface.ifr_ifrn.ifrn_name, INTERFAXENAME, sizeof(INTERFAXENAME));if (setsockopt(sock, SOL_SOCKET, SO_BINDTODEVICE, (char *)&interface, sizeof(interface))  < 0) // 绑定vlan网卡设备{perror("SO_BINDTODEVICE failed");}struct sockaddr_in addr;memset(&addr, 0, sizeof(addr));addr.sin_family = AF_INET;addr.sin_port = htons(31004);addr.sin_addr.s_addr = inet_addr("198.18.36.3");ret = bind(sock, (struct sockaddr *)&addr, sizeof(addr));if (ret < 0) {printf("%s: bind 198.18.36.3 failed\n", __FUNCTION__);close(sock);return 0;}elseprintf("bind 198.18.36.3 success \r\n");struct sockaddr_in server_addr;memset(&server_addr, 0, sizeof(server_addr));server_addr.sin_family = AF_INET;server_addr.sin_port = htons(31004);server_addr.sin_addr.s_addr = inet_addr("198.18.36.1");while(1){ret = sendto(sock, buf, 1024, 0,(struct sockaddr *)&server_addr, sizeof(server_addr));printf("sendto 198.18.36.1 ret:%d\n", ret);usleep(200000);}close(sock);return 0;
}

服务端udp_service.c


#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <net/if.h>
#include <linux/sockios.h>
#include <sys/ioctl.h>#include <arpa/inet.h>
#include <errno.h>
#include <net/if.h>
#include <netinet/ether.h>
#include <netinet/in.h>
#include <netpacket/packet.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <time.h>
#include <unistd.h>
#include <fcntl.h>
#include <termios.h>#define BUF_SIZE    1024
#define INTERFAXENAME "mgbe3_0.14"int sock;int main(int argc, char *argv[])
{int ret = 0;char buf[1024];memset(buf,1,1024);if ( (sock=socket(AF_INET, SOCK_DGRAM, 0)) <0){perror("socket");exit(1);}struct ifreq interface;strncpy(interface.ifr_ifrn.ifrn_name, INTERFAXENAME, sizeof(INTERFAXENAME));if (setsockopt(sock, SOL_SOCKET, SO_BINDTODEVICE, (char *)&interface, sizeof(interface))  < 0)  // 绑定vlan网卡设备{perror("SO_BINDTODEVICE failed");}struct sockaddr_in server_addr;memset(&server_addr, 0, sizeof(server_addr));server_addr.sin_family = AF_INET;server_addr.sin_port = htons(31004);server_addr.sin_addr.s_addr = inet_addr("198.16.37.4");ret = bind(sock, (struct sockaddr *)&server_addr, sizeof(server_addr));if (ret < 0) {printf("%s: bind 198.16.37.4 failed\n", __FUNCTION__);close(sock);return 0;}elseprintf("bind 198.16.37.4 success \r\n");struct sockaddr_in client_addr;socklen_t	len;len = sizeof(client_addr);while(1){ret = recvfrom(sock, buf, 1024, 0,(struct sockaddr *)&client_addr, &len);printf("recvfrom 198.16.37.3 ret:%d\n", ret);}close(sock);return 0;
}

将两个程序编译成二进制执行程序,放到开发板运行,就行测试。

http://www.yayakq.cn/news/66489/

相关文章:

  • 金山西安网站建设长沙有几个区
  • 石英石台面做网单有什么网站ps彩屏做的好的网站
  • 池州哪家做网站郑州平台公司
  • 网站视频主持人怎么做建设银行官方网站面试详细信息
  • wordpress 插件 调用北京seo专业团队
  • 在线购物商城网站建设wordpress4.7.4+for+sae
  • 邹平建设项目网站公示网站的设计风格与特点
  • 百度网站改版工具dedecms 网站安全
  • 大型网站的制作作品集用什么网站做
  • 腾讯企业邮箱域名可以做网站吗优质的广州做网站
  • 一个完整的网站设计需要的技术岳阳网站建设的公司
  • 企业网站托管费用wordpress设置首页关键词
  • 表白网站制作源码做网站赚不到钱了
  • 一个人做的网站做什么好wordpress建站 购物
  • 移动网站开发实例聊城网站网站建设
  • 怎样申请个人网站做网站都可以做什么
  • 教育网站建设开发网络公司
  • 北京国税局网站做票种核定时网站制作员
  • 网上做公益的网站门户网站系统程序
  • 免费网站制作新闻创建网站超链接
  • 网站维护中怎么解决化隆县公司网站建设
  • 教育网站开发用例图可以做企业网站
  • 昆明网站建设哪个好网址大全4399
  • wordpress做资源下载站高端企业门户网站建设
  • 网站站长seo推广珠海企业模板建站
  • 深圳市路桥建设集团有限公司招标采购网站数据采集发布 wordpress
  • 郑州网站推广服务dw手机销售网站制作
  • 郑州做网站 码通专业的集团网站开发费用多少钱
  • 海口专业做网站企业网盘系统
  • 成都网站建设哪里有百度收录网站入口