加入收藏 设为首页 联系站长
首页 | 虚拟动态 | Cisco模拟 | Juniper仿真 | 虚拟机 | 网络仿真 | 软件路由 | 技术专题 | 相关软件 | 交流论坛
>首页 -> Juniper仿真

TOP

Patch for MultiCast in Olive with VMware
[ 录入者:admin | 时间:2008-04-11 06:45:42 | 作者: | 来源: | 浏览:985次 ]
作者:阿言

忘了说了,这个是基于JunOS 8.5R1.14做的。JunOS8.5是基于FreeBSD6.1的 ,老的版本是基于FreeBSD4.10的,可能不行。
请大家自行安装JunOS8.5。

使用方法
1、将补丁下载到Olive中的/boot/modules目录中
2、进入单用户模式
在开机出现BTX loader的时候,拼命按空格,出现提示界面后输入boot -s回车
回车
进入shell
3、加载补丁
输入kldload syscall,或者kldload ./syscall.ko(在补丁存在的目录)
4、回到多用户模式
在shell中按Ctrl+D
5、应用补丁
登陆Olive
输入
sysctl dev.em.0.fix_em_multicast=1
如果有多个网卡请增加
sysctl dev.em.1.fix_em_multicast=1
sysctl dev.em.2.fix_em_multicast=1

个人建议,用自动执行脚本来完成上述输入,避免每次开机的重复劳动。
我用的是SecureCRT的脚本。



VMWARE的Olive就可以支持ospf,
RIP,ISIS、ldp、mpls vpn已经测试通过!


原理篇
em在vmware olive 不好用的主要原因就是 olive对em的驱动不好。

驱动没有让网卡接收组播的报文。。。
这个补丁,修订了网卡的mac地址接收寄存器。增加其他协议的组播mac地址就可以支持其他协议了。
所以我写了需求请大家汇总一下需要处理的组播mac,例如

已知
ospf的是01-00-5e-00-00-01
rip 的是01-00-5e-00-00-09
ISIS的是01-80-C2-00-00-14 和 01-80-C2-00-00-15
ldp的是01-00-5e-00-00-02



已知问题
不支持虚拟路由器,驱动没有能够让em支持VLAN。正在研究中。。。

做这个补丁的主要动力就是个人不是很喜欢windows 下的qemu,速度很慢。
欢迎大家反馈问题和讨论。。。


root> show route

inet.0: 14 destinations, 17 routes (14 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

1.1.1.1/32         *[OSPF/10] 00:14:29, metric 2
                    > to 10.248.195.249 via em0.0
                    [IS-IS/15] 00:55:39, metric 11
                    > to 10.248.195.249 via em0.0
1.1.1.3/32         *[IS-IS/15] 00:12:37, metric 21
                    > to 10.248.195.249 via em0.0
1.1.1.4/32         *[OSPF/10] 00:04:01, metric 52
                    > to 10.248.195.249 via em0.0
2.2.2.0/24         *[Direct/0] 18:01:30
                    > via em1.0
2.2.2.2/32         *[Local/0] 18:01:30
                      Local via em1.0
3.3.3.3/32         *[Direct/0] 21:47:20
                    > via lo0.11
10.0.12.0/24       *[RIP/100] 00:12:36, metric 2, tag 0
                    > to 10.248.195.249 via em0.0
10.0.13.0/24       *[IS-IS/15] 00:12:37, metric 11
                    > to 10.248.195.249 via em0.0
                    [RIP/100] 00:12:36, metric 2, tag 0
                    > to 10.248.195.249 via em0.0
10.0.14.0/24       *[OSPF/10] 00:04:20, metric 51
                    > to 10.248.195.249 via em0.0
                    [RIP/100] 00:12:47, metric 2, tag 0
                    > to 10.248.195.249 via em0.0
10.248.0.0/16      *[RIP/100] 17:29:17, metric 2, tag 0
                    > to 10.248.195.249 via em0.0
10.248.195.0/24    *[Direct/0] 21:47:20
                    > via em0.0
10.248.195.222/32  *[Local/0] 21:47:20
                      Local via em0.0
224.0.0.5/32       *[OSPF/10] 00:15:14, metric 1
                      MultiRecv
224.0.0.9/32       *[RIP/100] 00:15:14, metric 1
                      MultiRecv

__juniper_private2__.inet.0: 1 destinations, 1 routes (0 active, 0 holddown, 1 hidden)
iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

49.0000.0000.0000.0002/72               
                   *[Direct/0] 20:42:05
                    > via lo0.11




[ 本帖最后由 rwayan 于 2008-1-19 20:43 编辑 ]

附件

syscallv7.zip (2.54 KB)

2008-1-19 20:39, 下载次数: 180

再次更新,请重新下载,增加ldp支持

[上一篇]juniper模拟器视频 [下一篇]彻底解决JunOS安装后过大的问题!..
※相关文章
 

评论

称  呼:
内  容:

相关栏目

最新文章

热门文章

推荐文章

赞助商链接