syhandwork 发表于 2011-10-6 14:38:30

Ros本身发起的请求做标记

一直以来都是处理客户端PC的各种请求,无外乎做连接标记,然后根据连接标记做路由标记,这样就能达到策略路由的效果。
今天遇到一个事情,我需要用到Netwatch模块,在里面做几个地址的ping需求。每条ping对应一条线路上的地址(非直连地址)。
实现这个要求有两种方法
一、直接根据目标地址添加路由表,分别从指定的网关出去。
二、ROS自己的访问请求做标记实现策略路由。
    这个方法我没有实现,原理来讲,ROS本身的访问请求应该是output吧,我按目标地址对output做连接标记,然后再根据连接标记做output的路由标记。但做完后不成功啊,这是为什么?

请各位老鸟帮忙解决,在此谢过大家!!!

syhandwork 发表于 2011-10-7 12:48:49

首先感谢“bobwalker”的回复,我还有问题要问:“那我如何来标记路由本身对外的访问呢”?local processs out,这个好像managle里没有的。

lanren101 发表于 2011-10-7 12:51:31

来学习一下发包流程。关注

syhandwork 发表于 2011-10-7 13:56:04

刚才又测试了一下,只有当默认路由跟所标记的线路是同一条时,才会有效。而当默认路由和所标记的包不是一条线路,此时就不成立。

syhandwork 发表于 2011-10-7 13:56:58

这是不是说,ROS本身发出的包不能做路由标记啊。

zhjchina 发表于 2011-10-7 15:39:00

output chain上可以做标记,只是优先级比路由表低而已

9939781 发表于 2011-10-7 21:21:59

只有INPUT和OUTPUT是针对ROS自身通信进行标记的。

syhandwork 发表于 2011-10-10 08:42:29

回楼上,如果是因为优先级问题,那为何多线时,针对每条线,可以先做input连接标记,然后output时根据连接标记直接做路由标记。我有测试过,是生效的。如果如楼上所说,那此时output不会走指定线路了,应该走默认路由了,此时外面针对每条线路访问ROS本身的请求应该不成立。但事实却不是这样。

syhandwork 发表于 2011-10-10 08:50:31

再来打个比方:我有三个VPN账号,目标VPN server地址均不同,我可以在路由表里添加新路由,不同的server地址走不同的网关,来达到VPN分流的效果。但如果我只有一个server地址,此服务器带宽足够大,分我三个VPN账号,此时我要如何做才能达到VPN分流的效果呢。
首先添加路由表不适用了,因为目标地址相同。
旦如果output标记我搞明白了,兴许会有解决的方法。

syhandwork 发表于 2011-10-11 08:28:14

继续顶起此问题!

ximeng 发表于 2012-9-25 17:05:37

这个问题最终没有解决方案了吗?
页: [1]
查看完整版本: Ros本身发起的请求做标记