单播地址标识单个IP接口,广播地址标识某个子网的所有IP接口。多播地址表示某一组IP接口,单播和广播是寻址方案中的两个极端(要么单个要么全部),多播则意在两者之间提供一种折中方案。多播是用于建立分布式系统的重要工具,例如:网络游戏、ICQ聊天构建、远程视频会议系统等。使用多播的程序和UDP单向发送信息的程序相似,区别在于多播程序使用了特殊的多播IP地址。
使用Linux多播IP广播数据
例如本地计算机的的IP地址是:127.0.0.1二它的多播地址是: 224.0.0.1。这是由RCF 1390定义的。为发送IP多播数据,发送者需要确定一个合适的多播地址,这个地址代表一个组。IPv4多播地址采用D类IP地址确定多播的组。在Internet中,多播地址范围是从224.0.0.0到234.255.255.255。其中比较重要的地址有:
224.0.0.1 - 网段中所有支持多播的主机
224.0.0.2 - 网段中所有支持多播的路由器
224.0.0.4 - 网段中所有的DVMRP路由器
224.0.0.5 - 所有的OSPF路由器
224.0.0.6 - 所有的OSPF指派路由器
224.0.0.9 - 所有RIPv2路由器
IPv6地址空间中有1/256的地址空间分配给多播地址。一个FF(11111111)值标识该地址是多播地址。标识段高三位始终设置为0并保留。第四位T标识设置为0时表示一个永久分配的多播地址。T标识设置为1时,表示非永久分配的多播地址,这种地址作为一个临时的多播地址。
组播和广播需要在局域网内才能实现,另外得查看linux系统是否支持多播和广播:使用命令:ifconfig
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
说明该网卡支持
如果不支持则进行相应的配置,使得Linux支持多播IP
在默认状态下,大多Linux发行版本关闭的对多播IP的支持。为了在Linux系统使用多播套接口,需要从新配置和编译Linux内核。下面看一下配置步骤:
1.cd /usr/src/linux
2.make menuconfig
3.选择网络选项
4.选中IP:Enable Multicasting IP一项
5.保存并从menuconfig 退出
6.运行:make dep;make clean;make bzlmage
7.cp/vmlinuz/vdimLz_good
8.cparch/i386/boot/zImage/vmlinzz
9.cd/etc
10.编辑lilo.conf,加入针对/vmlinuz_good的内核新选项
11.运行li1o
Linux内核编译后,以超级用户身份运行命令: #router add –net 224.0.0.0 netmask 224.0.0.0 dev lo
本文出自 “驿落黄昏” 博客,请务必保留此出处http://yiluohuanghun.blog.51cto.com/3407300/1083094