【发布时间】:2013-05-22 03:26:43
【问题描述】:
目前,这是我的困境。 我有 2 个 fd:x 和 y。当 write(x) 发生时,它必须去 x-tunnel,而 write(y) 应该去 y-tunnel。我无法为每个连接创建路由规则(此处未提及原因)
当我接受连接时,我可以设置一个 sock opt 还是有其他方法可以做到这一点?
谢谢
【问题讨论】:
-
您是否尝试将套接字绑定到连接到您要使用的路由的接口?
-
接口是虚拟的,无法绑定,因为单个连接可以写入 x 和 y 接口
-
在实践中,这意味着用户(系统管理员)需要一种方法来指定最终发送到
bind的 IP 地址。然后管理员必须以某种方式为她想要使用的接口指定正确的地址。在你的特殊情况下,她需要能够为 X 和 Y 执行一次。 -
一个物理接口有2个虚拟接口。绑定它将最终从物理上发送出去。但是分类需要在虚拟上进行。。我认为这不能通过绑定来完成。
-
并且这两个虚拟接口应该有不同的IP地址,所以你可以绑定到这些地址。
标签: c unix network-programming