ネットワーク接続が不安定な場合の対処方法
「ネットワーク接続が不安定になる」というトラブルは…残念ながら結構な頻度で発生する事象だと思います。私自身何度も様々なパターンで体験しています。 そして今日もまた…。 「ネットワーク接続が不安定」という問題は様々な要素が複合的にくみあわさって「完全につながらないわけじゃないけど、なんだか不安定」というような事が多いです。下記にかかれているものは私の経験上「よくあるもの」ではあるのですが必ずしも該当するわけでも設定変更することが必ずしも良いものでも全くありません。ですが、とりあえずパフォーマンスを犠牲にしてでも「安定」する方向の設定であることは間違いありません。一度下記を参考に「安定」方向に設定を変更してみて問題を切り分けてみるのは良いかと思います。 ドライバを最新版にする まずはNICのドライバを最新版にすることをお勧めします。この記事を見ている方はコンシューマー向けのPCを使われている方が多いと思いますので、各メーカーのドライバ更新用の専用ユーティリティーなどを利用してもらえればと思います。 ワイヤレスアダプタの省電力設定を無効化する ワイヤレスアダプタに関しては省電力の設定が存在するものがあります。とりあえず「最大パフォーマンス」で可動させるようにしましょう。 ※PC(NIC)によっては存在しない設定項目です。 NICの各種オフロード機能を無効化する NICの各種のオフロード機能は本来ハードウェアにネットワーク関連の処理を行ってもらうことによりネットワークパフォーマンスを向上させるための仕組みなのですが、場合よってうまく動作せずむしろ接続不良の原因となることがあります。一度各種オフロード機能を無効にして切り分けてみるのは多くの場合有効です。 オフロード系の機能を無効化します。どの項目が無効化していいものかわからないということもあると思いますが、項目名と現在の設定値を控えておいた上で無効化できるものは何から何まで全部無効化してまわってまず挙動の変化を確認するようなやり方を個人的にお勧めします。 MTUの引き下げ MTUはMaximum Transfer Unitの略でようはNICが送信するパケットの最大サイズに関係するものです。途中の経路で小さなパケットしか通せない部分があるにもかかわらず大きなパケットを送信することで経路の途中でパケットが破棄されてしまうような挙動が比較的多くあります。この場合通信できないわけではないのですが異様に遅い…というような挙動になります。最適なサイズを検出するような手法もありますが、まずは一度小さく設定してみて挙動を確認することをお勧めします。 これはコマンドプロンプトで設定するのが簡単です。 コマンドプロンプトを管理者として実行します。 まずはインターフェースの一覧を表示して名前や現在のMTUを確認します。 netsh interface ipv4 show subinterface 今回は「Wi-Fi」というInterfaceのMTUを1430に変更してみます。 netsh interface ipv4 set subinterface “Wi-Fi” mtu=1430 store=persistent 再度インターフェースの一覧を表示するとMTUが変更できたことが確認できます。 確認 設定を変更したら一度再起動した上で確認先のホストに継続的にping(icmp echo)を送信し応答を確認するのがお手軽です。 下記の例ではwww.google.comを宛先に設定させてもらっています。安定的に通信できている様子が見えますね。 これでもだめなら私としてはもうパケットをキャプチャしてしまってパケットレベルで処理を追うことをしてしまいます。流石にそれは必要となる前提知識の量が違いすぎるのでまた別エントリにしたいと思います。要望あれば…書くかも…しれません。