免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3205 | 回复: 3
打印 上一主题 下一主题

求指导:kernel里如何获取路由信息 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-06-26 15:37 |只看该作者 |倒序浏览
在kernel里我构造了一个UDP包,在填写MAC层的时候指定了smac,dmac,以及要使用的dev,这样能够正常的发送出去。

现在有个需求,就是希望通过从其他地方获得的源IP,目的IP,来查询kernel里配置的路由表,获得填充MAC层的时需要的smac,dmac,以及要使用的dev,请问这个操作有什么函数可以调用?要怎么才能实现呢?  

谢谢。

论坛徽章:
0
2 [报告]
发表于 2010-06-26 18:04 |只看该作者
mac地址一般不用你自己填充,你填充L3层以上的部分就行了,然后调用ip_route_output_key查找输出路由,然后直接调用路由的dst_output输出就行了

论坛徽章:
0
3 [报告]
发表于 2010-06-27 16:55 |只看该作者
我使用dev_queue_xmit发送包,所以需要填充mac层的数据。 我查查你说的函数

论坛徽章:
0
4 [报告]
发表于 2010-06-28 13:56 |只看该作者
udp_sendmsg ?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP