嵌入式Linux以太网通过USB RNDIS适用于WinXP但不适用于Win7

时间:2012-08-23 18:14:46

标签: networking windows-7 usb embedded-linux ethernet

我使用Linux驱动程序g_ether通过USB与嵌入式Linux设备进行以太网通信。 dnsmasq软件包在嵌入式设备上运行,并配置为通过USB为连接到电路板的任何PC提供DHCP服务。

这很好用,我可以从Windows(7和XP)cmd.exe ping Linux板。在将防火墙配置为管理员后,我也可以ping Windows 7:

netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow

Windows 7和Windows XP之间的区别在于,当我在XP下连接USB电缆时,我仍然可以使用常规的本地连接和Internet以及活动。在Windows 7下,当我连接USB设备时,我丢失了本地连接和Internet,但通过USB板与Linux板连接。一旦我从Win 7拔下USB电缆,我就重新获得了本地连接和互联网。

是什么给出的?我希望保持本地连接和Internet活动,同时还能够通过USB连接与我的以太网进行交互。我不确定这是防火墙问题还是其他问题。这绝对是我想要了解并希望解决的Windows 7细微差别。

1 个答案:

答案 0 :(得分:1)

解决此问题的方法是将dnsmasq服务作为路由器关闭。 dnsmasq配置文件中应该没有dhcp-option = 3。关闭该服务后,可以同时维护以太网USB连接和局域网(带互联网)。 USB - >以太网也可以按预期在没有LAN连接的情况下工作。

此外,您可以将路由器行为保留在dnsmasq配置文件中,然后设置连接优先级以使LAN 1和USB RNDIS连接9999.右键单击适配器并为该适配器的IPV4行为选择高级选项。