阅读:1660回复:4
关于 2000 下虚拟网卡驱动的问题
已经写好了一个 NDIS 中间层驱动,现在想写一个
虚拟网卡的驱动,这个虚拟网卡的驱动把上层驱动 (TCPIP 栈驱动)要他发的 IP 包转发给那个中间 层驱动,然后那个中间层驱动通过它过滤的物理网 卡发出去。在中间层驱动接受到他所过滤的物理网卡 传递上来的包的时候,它检查一下 IP 包的目的 IP 地址,如果是那块虚拟网卡的 IP 地址的话,就 转发给虚拟网卡的驱动,然后由虚拟网卡的驱动 向上面继续传递。 现在的问题是这个中间层驱动和虚拟网卡的驱动相互 之间如何转发包?把它们写在一个驱动程序里面好像 不太可能,一个是 IM,一个是 MP,驱动结构和 INF 都完全不同。因此只能写成两个分开的驱动,分别 安装。但是这样话,两个分立的驱动该如何相互转发 包呢?用 IoCallDriver 是否可以在 NDIS 驱动之间 传递数据,但是,也能用来转发 IP 包嘛?效率会不会 有问题? 谢谢各位~~~~~ |
|
沙发#
发布于:2003-06-17 20:14
已经写好了一个 NDIS 中间层驱动,现在想写一个 我不懂,帮你顶一下:) 对了你怎么虚拟一个网卡,还使它看起来像个真实网卡,包括给他设 IP地址? |
|
|
板凳#
发布于:2003-06-17 21:22
可以用 DriverStudio 生成一块虚拟网卡的驱动程序,具体
怎么做我还没仔细看,你可以看 DS 或者搜索一下其他的贴 子。 IP 地址可以通过 Windows 2000 的网络管理功能设定。 |
|
地板#
发布于:2003-06-17 21:43
可以用 DriverStudio 生成一块虚拟网卡的驱动程序,具体 我以为你用DDK慢慢熬出来的呢。:―) |
|
|
地下室#
发布于:2003-06-18 11:10
\"虚拟网卡\"可以做成: NDIS IM 1:n Mux Driver! 是可以把多块物理卡片, 虚拟成一块卡片. 这块虚拟卡片有其IP地址, MAC地址. 从USER来看就是一块物理卡片.
\"虚拟网卡的驱动\"就是IM. 不需要好几个\"驱动\"了. |
|