请教一个关于路由的问题
最近碰到一个问题,跟各位大侠请教一下。
在某项应用中,外部一个特殊的TCP连接(端口号确定)进来,如何添加路由,让该TCP连接从指定的接口出去?
简单地说,就是外部一个TCP来连我的xx端口号(xx已知),我如何添加路由,让该连接从指定的接口出去?
我想到的就是在netfilter中添加一个处理,用于获取此特殊TCP连接对端的IP地址,然后通知用户空间的应用程序,让其添加静态路由。
请问还有更简单或更好的方法吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
本帖最后由 davhuang 于 2011-04-29 16:28 编辑
先用iptables打標籤,再用ip rule設策略路由(policy routing),應該可以。
不過你的需求似乎用NAT更方便。
呵呵,在TCP交互中,出去的数据包是由host产生的,路由选择在OUTPUT之前,根本就无法打mark,所以无法使用策略路由。
哦,我理解錯誤,還以為是要訪問特定端口的包"轉發出去"呢
不過此應用真怪,沒有回去的路由嗎,ping都不通?
此问题是由于网络拓扑的改变而引起的,所以需要添加路由。