0

Linux ドライバー g_ether を使用して、組み込み Linux デバイスの Ethernet over USB と通信しています。パッケージ dnsmasq は組み込みデバイスで実行されており、USB 経由でボードに接続されているすべての PC に DHCP サービスを提供するように構成されています。

これは問題なく動作し、Windows (7 および XP) の cmd.exe から Linux ボードに ping を実行できます。ファイアウォールを管理者として構成した後、Windows 7 に ping を実行することもできます。

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 ケーブルを接続しても、通常のローカル エリア接続とインターネットが利用可能でアクティブであることです。Windows 7 で USB デバイスを接続すると、ローカル エリア接続とインターネットが失われますが、Linux ボードとの Ethernet over USB 接続が得られます。Win 7 から USB ケーブルを抜くとすぐに、ローカル エリア接続とインターネットが回復しました。

何を与える?ローカル エリア接続とインターネットをアクティブに保ちながら、同時に Ethernet over USB 接続と対話できるようにしたいと考えています。これがファイアウォールの問題なのか、それとも何か他の問題なのかはわかりません。これは間違いなく Windows 7 のニュアンスであり、理解して解決したいと考えています。

4

1 に答える 1

1

この問題の解決策は、ルーターとしてのdnsmasqサービスをオフにすることでした。dnsmasq設定ファイルにdhcp-option=3があってはなりません。このサービスをオフにすると、Ethernet over USB接続とローカルエリアネットワーク(インターネットを使用)を同時に維持することができます。USB->イーサネットは、LAN接続がなくても期待どおりに機能します。

さらに、ルーターの動作をdnsmasq構成ファイルに残して、接続の優先度を設定してLAN1とUSBRNDIS接続を9999にすることもできます。アダプターを右クリックし、そのアダプターのIPV4動作の[詳細オプション]を選択します。

于 2012-09-05T16:30:44.200 に答える