liusz
驱动牛犊
驱动牛犊
  • 注册日期2004-03-16
  • 最后登录2018-05-26
  • 粉丝0
  • 关注0
  • 积分29分
  • 威望43点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1189回复:3

有多块网卡,分担不同的功能,应该如何做IM DRIVER

楼主#
更多 发布于:2004-04-28 22:39

有问题,一起请教了:

我希望有多块网卡,给它们不同的分工,比如:连接内网的,连接外网的,DMZ区的,VPN加密的,VPN解密的。应该如何区分不同的网卡,并给他们不同的分工?

我对此毫无了解,请教各位大虾了。
liusz
驱动牛犊
驱动牛犊
  • 注册日期2004-03-16
  • 最后登录2018-05-26
  • 粉丝0
  • 关注0
  • 积分29分
  • 威望43点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-04-29 10:15


应该有许多大虾做过这个问题吧,体谅体谅初学者的困惑。

让技术共享

“美丽源于共享”   ;)
liusz
驱动牛犊
驱动牛犊
  • 注册日期2004-03-16
  • 最后登录2018-05-26
  • 粉丝0
  • 关注0
  • 积分29分
  • 威望43点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-04-29 18:16
http://www.driverdevelop.com/forum/viewthread.php?tid=28748#pid194876

edust:

系统在 Protocol 和网卡之间插入了我们的 IM,同时暴露出一个虚拟 Adapter。这之后原来与网卡绑定的 Protocol 都绑定到了我们的虚拟 Adapter,而我们的 IM(虚拟 Adapter)又绑定到了物理网卡,这个过程对 Passthru 是透明的,所以 Passthru 根本不知道它下层是谁,它只知道 NDIS 仍给它一个虚拟 Adapter(Miniport)让它初始化,所以当 NDIS 调用我们的 PtBindAdapter() 让我们绑定时给我们的是那个虚拟 Adapter。

所以我想得到 Passthru 到底绑定了哪块网卡,从 Passthru 里就得不到什么信息了。


可关键就在于从前我一直都认为当 NDIS 调用我们的 PtBindAdapter() 时,它的语义是说“嗨,你要作为一个 Protocol 来绑定我给你的这个下层 Adapter,然后你再暴露给你上层一个虚拟 Adaoter 让它们绑定”。

但我经过实验以后却发现 NDIS 应该是这么说的“嗨,我已经把你这个 IM 插到合适的位置了,现在我又给你准备了一个虚拟 Adapter,你要跟它绑定,然后用你的 MPInitialize() 初始化这个虚拟 Adapter 然后形成一个可用的 Miniport 接口”。



[编辑 -  4/29/04 by  liusz]

[编辑 -  4/29/04 by  liusz]
liusz
驱动牛犊
驱动牛犊
  • 注册日期2004-03-16
  • 最后登录2018-05-26
  • 粉丝0
  • 关注0
  • 积分29分
  • 威望43点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-04-30 10:45
edust,不知道还来不来了

物理网卡区分及分工的问题不知道解决了没有?

应该还有许多人关注过这个问题吧,

可有高人来过?
游客

返回顶部