同一局域网内通过发送广播,同网段IP都能收到信息

简介: 广播概述:由一台主机向该主机所在子网内的所有主机发送数据的方式

广播概述:由一台主机向该主机所在子网内的所有主机发送数据的方式


广播的特点 1、处于同一子网的所有主机都必须处理数据


2、UDP 数据包会沿协议栈向上一直到 UDP 层


3、运行音视频等较高速率工作的应用,会带来巨大负担


4、局限于局域网内使用

**广播的分类:**定向广播地址:网段最后一位地址为255.

受限广播地址:255.255.255.255。


例子:


#include <stdio.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <pthread.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{    
int sockfd = socket(AF_INET, SOCK_DGRAM,0);
    //设置sockfd具备广播 功能    
    int yes = 1;    
    setsockopt(sockfd, SOL_SOCKET, SO_BROADCAST, &yes,sizeof(int));
    struct sockaddr_in dst_addr;    
    bzero(&dst_addr,sizeof(dst_addr));    
    dst_addr.sin_family = AF_INET;    
    dst_addr.sin_port = htons(8080);    
    dst_addr.sin_addr.s_addr = inet_addr("10.0.121.255");
    sendto(sockfd,"hehe",strlen("hehe"),0, (struct sockaddr *)&dst_addr,sizeof(dst_addr));
    close(sockfd);    
    return 0;
    }


相关文章
|
传感器 人工智能 物联网
带你了解热门IoT开源项目:home assistant
home assistant是一个基于python的家庭智能化平台,可运行于本地服务器,或者树莓派上。利用该平台,可以统一控制家庭中所有的智能设备。
带你了解热门IoT开源项目:home assistant
|
网络协议 关系型数据库 数据库
|
10月前
|
NoSQL Linux 编译器
GDB符号表概念和在Linux下获取符号表的方法
通过掌握这些关于GDB符号表的知识,你可以更好地管理和理解你的程序,希望这些知识可以帮助你更有效地进行调试工作。
438 16
|
缓存 网络协议 网络架构
网络抓包分析【IP,ICMP,ARP】以及 IP数据报,MAC帧,ICMP报和ARP报的数据报格式
本文详细介绍了如何使用网络抓包工具Wireshark进行网络抓包分析,包括以太网v2 MAC帧、IP数据报、ICMP报文和ARP报文的格式,以及不同网络通信的过程。文章通过抓包分析展示了IP数据报、ICMP数据报和ARP数据报的具体信息,包括MAC地址、IP地址、ICMP类型和代码、以及ARP的硬件类型、协议类型、操作类型等。通过这些分析,可以更好地理解网络协议的工作机制和数据传输过程。
网络抓包分析【IP,ICMP,ARP】以及 IP数据报,MAC帧,ICMP报和ARP报的数据报格式
|
人工智能 达摩院 并行计算
VideoRefer:阿里达摩院开源视频对象感知与推理框架,可集成 VLLM 提升其空间和时间理解能力
VideoRefer 是浙江大学与阿里达摩学院联合推出的视频对象感知与推理技术,支持细粒度视频对象理解、复杂关系分析及多模态交互,适用于视频剪辑、教育、安防等多个领域。
727 17
VideoRefer:阿里达摩院开源视频对象感知与推理框架,可集成 VLLM 提升其空间和时间理解能力
stm32f407探索者开发板(十四)——IO引脚复用和映射
stm32f407探索者开发板(十四)——IO引脚复用和映射
2047 0
|
编译器 程序员 定位技术
C++ 20新特性之Concepts
在C++ 20之前,我们在编写泛型代码时,模板参数的约束往往通过复杂的SFINAE(Substitution Failure Is Not An Error)策略或繁琐的Traits类来实现。这不仅难以阅读,也非常容易出错,导致很多程序员在提及泛型编程时,总是心有余悸、脊背发凉。 在没有引入Concepts之前,我们只能依靠经验和技巧来解读编译器给出的错误信息,很容易陷入“类型迷路”。这就好比在没有GPS导航的年代,我们依靠复杂的地图和模糊的方向指示去一个陌生的地点,很容易迷路。而Concepts的引入,就像是给C++的模板系统安装了一个GPS导航仪
420 59
|
PHP
PHP public、protected、private、static、abstract、final、interface、implements 区别对比
PHP public、protected、private、static、abstract、final、interface、implements 区别对比
577 0
《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用
《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用
2979 1
《QT从基础到进阶·二十一》QGraphicsView、QGraphicsScene和QGraphicsItem坐标关系和应用

热门文章

最新文章