web-dev-qa-db-ja.com

有線および無線接続:ネットワーク内の他の特定のコンピューターに接続するときに、Windowsがイーサネットを優先するようにしますか?

デスクトップをWi-Fi経由でインターネットとホームネットワークに接続し、ラップトップをイーサネットケーブル経由でデスクトップに接続しています。しかし、WindowsはWi-Fi経由でのみラップトップに到達するようです。代わりに有線接続を介してファイルを転送したいと思います。

インターネット接続の共有を設定し、ラップトップをWi-Fiから完全に切断することは、私にとって最もエレガントな解決策のようには思えません。また、hostsファイルに移動してIPアドレスを手動で設定することも考えましたが、有線でない場合はラップトップが完全に使用できなくなり、残念ながら頻繁に発生します。

可能であれば特定のホストに有線接続を使用し、そうでない場合は他のルートにフォールバックするようにWindowsに指示する方法はありますか?

3
danielkza

私は解決策を見つけたと信じています。私が考えていたのは、基本的にWindowsのホスト名ルックアップを覆すことです。これは、最初にワイヤレスネットワーク上のコンピューターを適切にルックアップするためです(インターネット接続があるため、結局のところ、メトリックは低くなります)。それから私はまさにそのためのファイルがあることを思い出しました:lmhostsファイル。

ノートブックのホスト名から有線IPにマップを追加すると、希望どおりに機能します。Windowsは最初にイーサネット経由でマップに到達しようとしますが、アクセスできない場合はNetBIOS/DNSルックアップにフォールバックし、次にワイヤレスIPを見つけます。ホスト名のキャッシュが問題になるかもしれないと思いましたが、キャッシュの前でもlmhostsファイルが検索されているようです。

TL; DR:ノートブックの有線IPをlmhosts.sam%windir%\system32\drivers\etc)ファイルに追加することは問題なく機能します。すべての有用な答えをありがとう!

3
danielkza

有線インターフェースを構成していないようです。接続されている各インターフェイスにIPアドレスを割り当てる必要があります。 静的IPアドレスを割り当てる方法 を見てください。

たとえば、デスクトップでIPアドレス192.168.13.1とネットマスク255.255.255.0を使用し、ネットマスク255.255.255.0でIPアドレス192.168.13.2を使用します。 ラップトップ

その後、アドレスを使用してデスクトップからラップトップの共有に到達できます\\ 192.168.13.2。 デスクトップで、そのアドレスをWindowsエクスプローラーのアドレスバーまたは[ファイル名を指定して実行...]ウィンドウに入力します(Win+R)。

2
ciastek

私が知ることができることから、Windowsシステムで制御せずに接続することになると、ワイヤレスは有線を駆り立てます。これは、そのネットワークアイテムに設定された「メトリック」(優先度)に基づいています。

他のすべてが正しく機能していて、通常はどちらかに接続できる場合は、ネットワーク関連でワイヤレス接続を無効にすると、ワイヤレスが無効になります(duh)。代わりに、正常に機能し、正しい有線接続がすぐに使用されます。 (ワイヤレスを再度有効にすると、システムは再びワイヤレスの使用を開始します)その内部の仕組みは私を超えています。

Windowsのショートカットボタンを押すだけで有線から無線に切り替えることができますXPシステム、デバイスを無効にする方法で。ツール「devcon」(デバイス接続)を使用して、デバイスのオンとオフを自由に、そしてテストのために気まぐれにシャットダウンするスクリプト。

誰もがそれを学びたいと思っています、私はあなたに示すことができます、私はデバッグ、変更、および制御できるように可能な限り最も単純な方法(ドルト)を使用します、それでこれはそれほど難しいことではありません。

これは、1つのデバイス(Nicカード自体)のXPスクリプトです。これは、Devconの「検索」を実行すると、システムが表示する不可解なジャンクによって以前に識別されていました。

簡単なスイッチ、それが実行されているかどうかを確認し、切り替えて、何が起こったのか教えてください。


echo OFF
cls

C:\Desk\batch\DEVCON.exe >"%USERPROFILE%\Local Settings\Temp\Rescheck" status *811A1043*
FIND /I /C "RUNNING" "%USERPROFILE%\Local Settings\Temp\Rescheck"
IF %ERRORLEVEL% GTR 0 GOTO NOTRUN

start /B "beeps" C:\Desk\batch\wav.exe C:\WINDOWS\Media\AppSounds\netdetecto.wav
ECHO  driver is probably running disable it
C:\Desk\batch\DEVCON.exe disable *811A1043*

exit

:NOTRUN
echo driver is probably not running enable it
start /B "beeps" C:\Desk\batch\wav.exe C:\WINDOWS\Media\AppSounds\netdetectc.wav
C:\Desk\batch\DEVCON.exe enable *811A1043*

exit

それはそれほど悪くはありませんでした:-)もちろんそれは1/3で行うことができました、しかしそれは私に知らせ続けなければなりません。

それを分解する

コマンドDevcon.exeを実行します。 >出力をどこかのtempに送信します。 statusを実行します。 *ワイルドカード*デバイスIDの一部の側面デバイスの部分ID

単純なテキストファイルを確認してください[〜#〜] find [〜#〜]。実行中のテキストを探します/ I/C "RUNNING"temp

実行が見つからないために上記が失敗した場合IF%ERRORLEVEL%GTR 0)次に、タグGOTO NOTRUN

そのタグ:NOTRUNに移動する場合は、デバイスを有効にしますDEVCON.exe ENABLEワイルドカードデバイス番号


システムのデバイスマネージャーに移動して、ハードウェア名、さらには一部のシステムのIDを確認します。

Devconsの観点からデバイスIDを確認する最も簡単な方法は、devcon.exe/findを実行し、ワイルドカードの適用を開始することです。リスト。

簡単にするために、フルIDやhwidを気にしないでください。フラストレーションが発生するだけで、ワイルドカードを使用し、十分なIDを取得して異なるようにし、/ findを使用して手動でテストし、/ enableを使用してテストし、ワイルドカードを使用します。

Devcon DL http://support.Microsoft.com/default.aspx?scid=kb;EN-US;Q311272 (現在は32ビットと64ビットの両方で78K ZIPファイル)

1
Psycogeek