免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 12170 | 回复: 1

linux启用IPV4组播路由转发的配置和测试 [复制链接]

论坛徽章:
0
发表于 2012-04-27 10:59 |显示全部楼层
本帖最后由 happyboygd 于 2012-04-27 15:22 编辑

linux启用IPV4组播路由转发的配置和测试

原贴地址:  http://hi.baidu.com/gaodi2002/bl ... Stamp=1335494999078
最近在研究组播路由转发,按照网上的帖子配置mrouted和smcroute都试过了,编译错误,没办法继续,最后试了一下pimd,并测试成功

一、软件系统

1、系统内核 2.6.18

2、pimd软件  https://github.com/downloads/troglobit/pimd/pimd-2.1.8.tar.bz2

3、两台WindowXP主机A和B,单网卡
     一台Linux主机,双网卡

WindowsXP 主机A  (连接linux eth0 接口)

ip地址  10.10.10.1掩码 255.255.255.0 网关:10.10.10.2

linux主机

eth0   ip地址10.10.10.2 掩码 255.255.255.0 网关:10.10.10.1

eth1     192.168.111.2掩码 255.255.255.0 网关:无

WindowsXP 主机B  (连接linux eth1 接口)

ip地址  192.168.111.2掩码 255.255.255.0 网关:192.168.111.1

二、

1、查看Linux系统是否支持多播:

方法A:  ifconfig出现 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric

方法B: 查看/boot/config-x.x.xx  文件中是否有如下内容

                       CONFIG_IP_MULTICAST=y
                       CONFIG_NET_IPIP=m
                       CONFIG_IP_MROUTE=y


2、如果系统不支持多播,需要编译内核

编译步骤如下:

运行make menuconfig
进 Networking support -> Networking options ,
里面就有选项:
IP: multicasting
IP: tunneling
IP: multicast routing
IP: PIM-SM version 1 support
IP: PIM-SM version 2 support
选中这几项,保存退出

make && make modules_install && make install

重启,用新内核启动。

3、启用路由转发 echo 1 >/proc/sys/net/ipv4/ip_forward

4、配置pimd

    将下载的pimd-2.1.8.tar.bz2解压并进入解压目录

  make

make install

安装完成后执行pimd

/usr/local/sbin/pimd

如果在执行pimd时出错,可以先关闭iptables再执行pimd就不报错了(实际上报错并不影响测试)


5、运行windows xp 主机A上的发送程序
send.JPG
6、运行windows xp主机B上的接收程序
recive.JPG
已经收到包了。


--------------------------------------------------------------------------------------------

linux上可以用几个命令查看组播配置

[root@gaodi-linux ~]# route -e
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.111.0   *               255.255.255.0   U         0 0          0 eth1
10.10.10.0      *               255.255.255.0   U         0 0          0 eth0
default         10.10.10.1      0.0.0.0         UG        0 0          0 eth0
[root@gaodi-linux ~]# ip mroute
(10.10.10.1, 224.1.1.1)          Iif: eth0       Oifs: eth1
[root@gaodi-linux ~]# more /proc/net/ip_mr_vif
Interface      BytesIn  PktsIn  BytesOut PktsOut Flags Local    Remote
0 eth0       18348036   17362   9784860    9231 00000 020A0A0A 00000000
1 eth1       113304460  106891  18009400   16990 00000 016FA8C0 00000000
2 pimreg            0       0         0       0 00004 020A0A0A 00000000
[root@gaodi-linux ~]# more /proc/net/ip_mr_cache
Group    Origin   Iif     Pkts    Bytes    Wrong Oifs
010101E0 010A0A0A 0      17637 18695220        0  1:1  
FAFFFFEF 010A0A0A 0         30    12393        0
[root@gaodi-linux ~]#


论坛徽章:
0
发表于 2016-09-01 10:06 |显示全部楼层
在吗?请问下,我按您的步骤做了
ip mroute命令,查看到,Iif:eth1,Oif:eth0.
但组播数据就是没有从eth0转出去,不知道为何,还请赐教!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP