【原创】利用DHCP option为客户机添加静态路由
其实算不上原创,算是综合了网络上相关的一些帖子总结了以后,再经过自己测试通过。在此把经验分享给大家,希望对大家有帮助参考的一些链接如下
http://www.mikrotik.com/testdocs/ros/3.0/pnp/dhcp.php
http://support.microsoft.com/kb/121005/zh-cn
http://www.ietf.org/rfc/rfc3442.txt
http://msdn.microsoft.com/en-us/library/cc202606.aspx
http://forum.mikrotik.com/viewtopic.php?f=2&t=19183&p=106906
http://www.networksorcery.com/enp/protocol/bootp/options.htm
使用DHCP server option选项,可以为DHCP服务器增加一些个性化设置。DHCP的option选项从IANA提供的链接来看,有100多项,但是事实上,这些option如果DHCP 客户端软件不支持的话,即使你加入这些option,也是没有意义的。
Windows 客户端软件支持的 optioin选项可以在以下链接中查到
http://support.microsoft.com/kb/121005/
微软的DHCP客户端软件支持的选项很有限。
在IANA的文件中,添加静态路由的Option 为121,但这并不被windows xp所支持, 相应的,windows支持的option选项为249,但数据格式和 RFC 3442规定的完全是相同的。很多人添加静态路由失败,原因即是为此。
另外还要注意,windows xp和 windows 2003仅支持option 249, windows vista 和windows 2008 对 option 249 和option 121 都支持。这一点在微软的官方文档中描述得很清楚。
http://msdn.microsoft.com/en-us/library/cc202606.aspx
根据RFC 3442文件,下面描述下具体的option 参数格式
假设 10.128.0.0/9网段通过 192.168.16.250网关转发
子网掩码 | 网段描述 | 路由器地址
9 10.128 192.168.16.250
转换为16进制
子网掩码 | 网段描述 | 路由器地址
09 0a80 c0a810fa
再添加一条静态路由
192.168.1.0/24 网段通过 192.168.16.250转发
子网掩码 | 网段描述 | 路由器地址
24 192.168.1 192.168.16.250
转换为16进制
子网掩码 | 网段描述 | 路由器地址
18 c0a801 c0a810fa
所以option values=0x090a80c0a810fa18c0a801c0a810fa
在winbox中的设置如图
在windows xp中执行 ipconfig /renew
然后执行 route print
会发现这两条路由已经顺利加入了
在Mikrotik RouterOS 3.16下测试通过
这项功能对VPN客户的静态路由分配比较有用,当然对局域网中有多个路由器的环境也有实际意义,这样就不用再每次开机的时候执行路由脚本了。
另外,能够添加的路由表条数最大为255条,谁有兴趣的话可以测试一下
-----------------------------------------------------------------------------------------------------
RouterOS 高级QQ讨论群: 5278776小白就别进来了
[ 本帖最后由 zhjchina 于 2008-11-14 14:38 编辑 ] 顶一下.好文章 顶一个,慢慢研究 顶顶顶 高手,以后会用到的 好文章,多谢分享
以前总搞不清楚这个option是做什么的 好文章啊~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 不错呀~顶一下 都置顶了,记号一下,好技术文章,好久看不到了。 这个东西不错 请教一下楼主截图上显示的DHCP服务器的名字是什么?在那里有下载?谢谢 这篇帖子真的是好东西 好东西,要研究一下 高级学问慢慢测试 好东西,楼主学习了