源:http://blog.chinaunix.net/uid-22670933-id-3716646.html

广播域
首先我们来了解一下广播域的概念。
广播域是网络中能接收任一台主机发出的广播帧的所有主机集合。也就是说,如果广播域内的其中一台主机发出一个广播帧,同一广播域内所有的其它主机都可以收到该广播帧。
广播域的计算
如何知道一台主机是属于哪一个广播域呢?其实计算很简单,只要用主机的IP地址与子网掩码进行与运算即可知道该主机属于哪一个广播域。例如:一台主机的IP地址为192.168.23.150,子网掩码为255.255.255.0,那么它所属的广播域就是192.168.23.150&255.255.255.0=192.168.23.0。那么其它的在广播域192.168.23.0内的所有主机就可以到该设备发送的广播包。如果把子网掩码改为255.255.0.0,那么它所属的广播域就是192.168.23.150&255.255.0.0=192.168.0.0。那么其它的在广播域192.168.0.0内的所有主机都可以收到该设备发送的广播包。
广播地址的计算
要想相同广播域内的其它主机能收到的广播帧,还需要在发送广播包的时候指定当前所属广播域内的广播地址。广播地址的计算方法为子网掩码取反再与广播域进行或运算。
例如:如果主机当前所属广播域为192.168.0.0,子网掩码为255.255.0.0,那么广播地址则为192.168.255.255。
使用UDP进行跨网段广播
要使主机A发送的广播包能够被另一网段的主机B收到,那么只需要更改主机A的子网掩码使得与主机B在同一个广播域内,再使用新的广播域的广播地址发送广播包即可。

例如:要使用192.168.23.150发送广播包让192.168.27.135收到,只需要设置192.168.23.150的子网掩码为255.255.0.0,然后再使用广播地址192.168.255.255即可。

特别要指出的是:255.255.255.255是受限广播地址,不能使用该地址发送广播包。

最新文章

  1. Python之路,Day3 - Python基础3
  2. ASP.NET MVC学习之模型绑定(2)
  3. linux安全
  4. MAC机中安装RUBY环境
  5. Java面试题-多线程
  6. Navicat for mysql远程连接数据库详(1130错误解决方法)
  7. J - Invitation Cards
  8. Java Swing TextArea 滚动条和获得焦点
  9. 最简单的修改HashMap value值的方法
  10. canvas 3D雪花效果
  11. C#小知识点记录,对象的深拷贝
  12. C#,一份超简单的数据库帮助类,SqlHelp
  13. String 类
  14. adb常用操作命令
  15. common lisp 里的几个操作符(2)
  16. 第三方jar上传到Maven私服(Nexus)
  17. [转][smart3d]Smart3D之手动配置 S3C 索引加载全部的OSGB瓦片数据
  18. python 创建flask项目方法
  19. Windows 2012设置允许单个用户连接多个会话的方法
  20. Mac OS X下的移动光标和文字编辑快捷键

热门文章

  1. WebForm(aspx,cs,dll之间的关系)
  2. 使用WMware新建linux虚拟机
  3. IE下单选按钮隐藏后点击对应label无法选中的bug解决
  4. java 单例模式及getInstance的好处
  5. linux学习的哲学层面的思考-架构
  6. String s = new String("aa") 创建了几个对象?
  7. 2.1 工具使用:xmind
  8. JPA 系列教程4-单向一对多
  9. PID控制学习笔记(二)
  10. linux内核移植到S5pv210